summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorluckytyphlosion <alan.rj.huang@gmail.com>2015-08-30 17:55:02 -0400
committerluckytyphlosion <alan.rj.huang@gmail.com>2015-08-30 17:55:02 -0400
commitd2ed7674f499b1fd6c4059da40b8b42c6bf96995 (patch)
treef581489b522fc647477d7b36dee072d553c44fd1 /scripts
parent3394d8320f35f524231aa13bd9cae34e22246a6d (diff)
parent1a987d1e1ab96ca9553d4253c72858057332a03a (diff)
Merge branch 'master' of https://github.com/iimarckus/pokered
Doesn't build.
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/agatha.asm44
-rw-r--r--scripts/beach_house.asm12
-rwxr-xr-xscripts/bikeshop.asm59
-rwxr-xr-xscripts/billshouse.asm94
-rwxr-xr-xscripts/blueshouse.asm18
-rwxr-xr-xscripts/bruno.asm44
-rwxr-xr-xscripts/celadoncity.asm23
-rwxr-xr-xscripts/celadondiner.asm20
-rwxr-xr-xscripts/celadongamecorner.asm262
-rwxr-xr-xscripts/celadongym.asm149
-rwxr-xr-xscripts/celadonmansion1.asm6
-rwxr-xr-xscripts/celadonmansion3.asm6
-rwxr-xr-xscripts/celadonmansion5.asm10
-rwxr-xr-xscripts/celadonmart3.asm20
-rwxr-xr-xscripts/celadonmartelevator.asm29
-rwxr-xr-xscripts/celadonmartroof.asm172
-rwxr-xr-xscripts/ceruleancity.asm171
-rwxr-xr-xscripts/ceruleancity2.asm8
-rwxr-xr-xscripts/ceruleangym.asm88
-rwxr-xr-xscripts/ceruleanhouse1.asm2
-rwxr-xr-xscripts/ceruleanhouse2.asm14
-rwxr-xr-xscripts/ceruleanhousetrashed.asm12
-rwxr-xr-xscripts/cinnabargym.asm194
-rwxr-xr-xscripts/cinnabarisland.asm12
-rw-r--r--scripts/colosseum.asm9
-rwxr-xr-xscripts/copycatshouse1f.asm2
-rwxr-xr-xscripts/copycatshouse2f.asm30
-rwxr-xr-xscripts/daycarem.asm214
-rwxr-xr-xscripts/fanclub.asm36
-rwxr-xr-xscripts/fightingdojo.asm131
-rwxr-xr-xscripts/fuchsiacity.asm33
-rwxr-xr-xscripts/fuchsiagym.asm174
-rwxr-xr-xscripts/fuchsiahouse2.asm50
-rwxr-xr-xscripts/fuchsiahouse3.asm8
-rwxr-xr-xscripts/gary.asm105
-rwxr-xr-xscripts/halloffameroom.asm34
-rwxr-xr-xscripts/indigoplateaulobby.asm13
-rwxr-xr-xscripts/lab2.asm8
-rwxr-xr-xscripts/lab3.asm20
-rwxr-xr-xscripts/lab4.asm50
-rwxr-xr-xscripts/lance.asm55
-rwxr-xr-xscripts/lavenderhouse1.asm50
-rwxr-xr-xscripts/lavenderhouse2.asm15
-rwxr-xr-xscripts/lavendermart.asm13
-rwxr-xr-xscripts/lavendertown.asm6
-rwxr-xr-xscripts/lorelei.asm47
-rwxr-xr-xscripts/mansion1.asm67
-rwxr-xr-xscripts/mansion2.asm53
-rwxr-xr-xscripts/mansion3.asm41
-rwxr-xr-xscripts/mansion4.asm45
-rwxr-xr-xscripts/mtmoon1.asm110
-rwxr-xr-xscripts/mtmoon3.asm152
-rwxr-xr-xscripts/mtmoonpokecenter.asm52
-rwxr-xr-xscripts/museum1f.asm79
-rwxr-xr-xscripts/namerater.asm30
-rwxr-xr-xscripts/oakslab.asm528
-rwxr-xr-xscripts/pallettown.asm78
-rwxr-xr-xscripts/pewtercity.asm71
-rwxr-xr-xscripts/pewtergym.asm88
-rwxr-xr-xscripts/pewterhouse1.asm2
-rwxr-xr-xscripts/pewtermart.asm4
-rwxr-xr-xscripts/pewterpokecenter.asm56
-rwxr-xr-xscripts/pokemontower2.asm95
-rwxr-xr-xscripts/pokemontower3.asm44
-rwxr-xr-xscripts/pokemontower4.asm48
-rwxr-xr-xscripts/pokemontower5.asm71
-rwxr-xr-xscripts/pokemontower6.asm68
-rwxr-xr-xscripts/pokemontower7.asm128
-rwxr-xr-xscripts/powerplant.asm104
-rwxr-xr-xscripts/redshouse1f.asm22
-rwxr-xr-xscripts/redshouse2f.asm4
-rwxr-xr-xscripts/rockethideout1.asm93
-rwxr-xr-xscripts/rockethideout2.asm168
-rwxr-xr-xscripts/rockethideout3.asm84
-rwxr-xr-xscripts/rockethideout4.asm97
-rwxr-xr-xscripts/rockethideoutelevator.asm33
-rwxr-xr-xscripts/rocktunnel1.asm126
-rwxr-xr-xscripts/rocktunnel2.asm112
-rwxr-xr-xscripts/route1.asm24
-rwxr-xr-xscripts/route10.asm84
-rwxr-xr-xscripts/route11.asm140
-rwxr-xr-xscripts/route11gateupstairs.asm45
-rwxr-xr-xscripts/route12.asm124
-rwxr-xr-xscripts/route12gateupstairs.asm40
-rwxr-xr-xscripts/route12house.asm10
-rwxr-xr-xscripts/route13.asm140
-rwxr-xr-xscripts/route14.asm140
-rwxr-xr-xscripts/route15.asm162
-rwxr-xr-xscripts/route15gateupstairs.asm28
-rwxr-xr-xscripts/route16.asm106
-rwxr-xr-xscripts/route16gate.asm24
-rwxr-xr-xscripts/route16gateupstairs.asm14
-rwxr-xr-xscripts/route16house.asm18
-rwxr-xr-xscripts/route17.asm140
-rwxr-xr-xscripts/route18.asm42
-rwxr-xr-xscripts/route18gate.asm26
-rwxr-xr-xscripts/route18gateupstairs.asm14
-rwxr-xr-xscripts/route19.asm140
-rwxr-xr-xscripts/route2.asm4
-rwxr-xr-xscripts/route20.asm164
-rwxr-xr-xscripts/route21.asm126
-rwxr-xr-xscripts/route22.asm248
-rwxr-xr-xscripts/route22gate.asm26
-rwxr-xr-xscripts/route23.asm86
-rwxr-xr-xscripts/route24.asm134
-rwxr-xr-xscripts/route25.asm147
-rwxr-xr-xscripts/route2gate.asm30
-rwxr-xr-xscripts/route2house.asm2
-rwxr-xr-xscripts/route3.asm112
-rwxr-xr-xscripts/route4.asm16
-rwxr-xr-xscripts/route5gate.asm26
-rwxr-xr-xscripts/route6.asm84
-rwxr-xr-xscripts/route6gate.asm10
-rwxr-xr-xscripts/route7gate.asm10
-rwxr-xr-xscripts/route8.asm126
-rwxr-xr-xscripts/route8gate.asm10
-rwxr-xr-xscripts/route9.asm146
-rwxr-xr-xscripts/safarizonecenter.asm2
-rwxr-xr-xscripts/safarizoneeast.asm8
-rw-r--r--scripts/safarizoneentrance-yellow.asm33
-rwxr-xr-xscripts/safarizoneentrance.asm83
-rwxr-xr-xscripts/safarizonenorth.asm4
-rwxr-xr-xscripts/safarizonesecrethouse.asm20
-rwxr-xr-xscripts/safarizonewest.asm8
-rwxr-xr-xscripts/saffrongym.asm164
-rwxr-xr-xscripts/saffronhouse1.asm2
-rwxr-xr-xscripts/saffronhouse2.asm20
-rwxr-xr-xscripts/seafoamislands1.asm35
-rwxr-xr-xscripts/seafoamislands2.asm32
-rwxr-xr-xscripts/seafoamislands3.asm32
-rwxr-xr-xscripts/seafoamislands4.asm59
-rwxr-xr-xscripts/seafoamislands5.asm50
-rwxr-xr-xscripts/silphco1.asm11
-rwxr-xr-xscripts/silphco10.asm56
-rwxr-xr-xscripts/silphco11.asm126
-rwxr-xr-xscripts/silphco2.asm107
-rwxr-xr-xscripts/silphco3.asm70
-rwxr-xr-xscripts/silphco4.asm89
-rwxr-xr-xscripts/silphco5.asm112
-rwxr-xr-xscripts/silphco6.asm81
-rwxr-xr-xscripts/silphco7.asm203
-rwxr-xr-xscripts/silphco8.asm68
-rwxr-xr-xscripts/silphco9.asm112
-rwxr-xr-xscripts/silphcoelevator.asm31
-rwxr-xr-xscripts/ssanne10.asm92
-rwxr-xr-xscripts/ssanne2.asm72
-rwxr-xr-xscripts/ssanne5.asm30
-rwxr-xr-xscripts/ssanne6.asm16
-rwxr-xr-xscripts/ssanne7.asm48
-rwxr-xr-xscripts/ssanne8.asm60
-rwxr-xr-xscripts/ssanne9.asm74
-rw-r--r--[-rwxr-xr-x]scripts/tradecenter.asm (renamed from scripts/battlecenterm.asm)26
-rwxr-xr-xscripts/tradecenterm.asm9
-rwxr-xr-xscripts/undergroundpathentranceroute5.asm2
-rwxr-xr-xscripts/undergroundpathentranceroute7copy.asm20
-rwxr-xr-xscripts/unknowndungeon1.asm6
-rwxr-xr-xscripts/unknowndungeon2.asm6
-rwxr-xr-xscripts/unknowndungeon3.asm20
-rwxr-xr-xscripts/vermilioncity.asm82
-rwxr-xr-xscripts/vermiliondock.asm124
-rwxr-xr-xscripts/vermiliongym.asm114
-rwxr-xr-xscripts/vermilionhouse1.asm2
-rwxr-xr-xscripts/vermilionhouse2.asm8
-rwxr-xr-xscripts/vermilionhouse3.asm2
-rwxr-xr-xscripts/victoryroad1.asm47
-rwxr-xr-xscripts/victoryroad2.asm120
-rwxr-xr-xscripts/victoryroad3.asm90
-rwxr-xr-xscripts/viridiancity.asm87
-rwxr-xr-xscripts/viridianforest.asm48
-rwxr-xr-xscripts/viridiangym.asm221
-rwxr-xr-xscripts/viridianhouse.asm2
-rwxr-xr-xscripts/viridianmart.asm24
172 files changed, 5624 insertions, 5739 deletions
diff --git a/scripts/agatha.asm b/scripts/agatha.asm
index a8f9e137..1e34c99c 100755
--- a/scripts/agatha.asm
+++ b/scripts/agatha.asm
@@ -13,8 +13,7 @@ AgathaScript_76443: ; 76443 (1d:6443)
bit 5, [hl]
res 5, [hl]
ret z
- ld a, [wd865]
- bit 1, a
+ CheckEvent EVENT_BEAT_AGATHAS_ROOM_TRAINER_0
jr z, .asm_76457
ld a, $e
jp AgathaScript_76459
@@ -22,8 +21,8 @@ AgathaScript_76443: ; 76443 (1d:6443)
ld a, $3b
AgathaScript_76459: ; 76459 (1d:6459)
- ld [wd09f], a
- ld bc, $2
+ ld [wNewTileBlockID], a
+ lb bc, 0, 2
predef_jump ReplaceTileBlock
AgathaScript_76464: ; 76464 (1d:6464)
@@ -40,7 +39,8 @@ AgathaScriptPointers: ; 76469 (1d:6469)
AgathaScript4: ; 76473 (1d:6473)
ret
-asm_76474: ; 76474 (1d:6474)
+
+AgathaScript_76474: ; 76474 (1d:6474)
ld hl, wSimulatedJoypadStatesEnd
ld a, D_UP
ld [hli], a
@@ -66,16 +66,14 @@ AgathaScript0: ; 76490 (1d:6490)
ld [hJoyHeld], a
ld [wSimulatedJoypadStatesEnd], a
ld [wSimulatedJoypadStatesIndex], a
- ld a, [wWhichTrade] ; wWhichTrade
+ ld a, [wCoordIndex]
cp $3
jr c, .asm_764b4
- ld hl, wd865
- bit 6, [hl]
- set 6, [hl]
- jr z, asm_76474
+ CheckAndSetEvent EVENT_AUTOWALKED_INTO_AGATHAS_ROOM
+ jr z, AgathaScript_76474
.asm_764b4
ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, D_UP
ld [wSimulatedJoypadStatesEnd], a
@@ -107,11 +105,11 @@ AgathaScript3: ; 764da (1d:64da)
AgathaScript2: ; 764ed (1d:64ed)
call EndTrainerBattle
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, AgathaScript_76464
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $1
ld [W_GARYCURSCRIPT], a
@@ -119,22 +117,22 @@ AgathaScript2: ; 764ed (1d:64ed)
AgathaTextPointers: ; 76505 (1d:6505)
dw AgathaText1
- dw AgathaText2
+ dw AgathaDontRunAwayText
AgathaTrainerHeaders: ; 76509 (1d:6509)
AgathaTrainerHeader0: ; 76509 (1d:6509)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_AGATHAS_ROOM_TRAINER_0
db ($0 << 4) ; trainer's view range
- dw wd865 ; flag's byte
- dw AgathaBeforeBattleText ; 0x6520 TextBeforeBattle
- dw AgathaAfterBattleText ; 0x652a TextAfterBattle
- dw AgathaEndBattleText ; 0x6525 TextEndBattle
- dw AgathaEndBattleText ; 0x6525 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_AGATHAS_ROOM_TRAINER_0
+ dw AgathaBeforeBattleText ; TextBeforeBattle
+ dw AgathaAfterBattleText ; TextAfterBattle
+ dw AgathaEndBattleText ; TextEndBattle
+ dw AgathaEndBattleText ; TextEndBattle
db $ff
AgathaText1: ; 76516 (1d:6516)
- db $08 ; asm
+ TX_ASM
ld hl, AgathaTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -151,6 +149,6 @@ AgathaAfterBattleText: ; 7652a (1d:652a)
TX_FAR _AgathaAfterBattleText
db "@"
-AgathaText2: ; 7652f (1d:652f)
- TX_FAR _AgathaText2
+AgathaDontRunAwayText: ; 7652f (1d:652f)
+ TX_FAR _AgathaDontRunAwayText
db "@"
diff --git a/scripts/beach_house.asm b/scripts/beach_house.asm
index 67c29f1b..d6112df7 100644
--- a/scripts/beach_house.asm
+++ b/scripts/beach_house.asm
@@ -11,7 +11,7 @@ BeachHouseTextPointers:
dw BeachHouseSign4Text
SurfinDudeText:
- db 8
+ TX_ASM
ld a,[$d471]
bit 6,a
jr nz,.next
@@ -61,7 +61,7 @@ SurfinDudeText:
db "@"
BeachHousePikachuText:
- db 8
+ TX_ASM
ld hl,.BeachHousePikachuText
call PrintText
ld a,PIKACHU
@@ -74,7 +74,7 @@ BeachHousePikachuText:
db "@"
BeachHouseSign1Text:
- db 8
+ TX_ASM
ld hl,.BeachHouseSign1Text2
ld a,[$d471]
bit 6,a
@@ -92,7 +92,7 @@ BeachHouseSign1Text:
db "@"
BeachHouseSign2Text:
- db 8
+ TX_ASM
ld hl,.BeachHouseSign2Text2
ld a,[$d471]
bit 6,a
@@ -110,7 +110,7 @@ BeachHouseSign2Text:
db "@"
BeachHouseSign3Text:
- db 8
+ TX_ASM
ld hl,.BeachHouseSign3Text2
ld a,[$d471]
bit 6,a
@@ -128,7 +128,7 @@ BeachHouseSign3Text:
db "@"
BeachHouseSign4Text:
- db 8
+ TX_ASM
ld a,1
ld [$cc3c],a
ld a,[$d471]
diff --git a/scripts/bikeshop.asm b/scripts/bikeshop.asm
index 4bd26a7e..e639caf9 100755
--- a/scripts/bikeshop.asm
+++ b/scripts/bikeshop.asm
@@ -7,27 +7,25 @@ BikeShopTextPointers: ; 1d73f (7:573f)
dw BikeShopText3
BikeShopText1: ; 1d745 (7:5745)
- db $08 ; asm
- ld a, [wd75f]
- bit 0, a
- jr z, .asm_260d4 ; 0x1d74b
+ TX_ASM
+ CheckEvent EVENT_GOT_BICYCLE
+ jr z, .asm_260d4
ld hl, BikeShopText_1d82f
call PrintText
jp .Done
-.asm_260d4 ; 0x1d756
+.asm_260d4
ld b, BIKE_VOUCHER
call IsItemInBag
- jr z, .asm_41190 ; 0x1d75b
+ jr z, .asm_41190
ld hl, BikeShopText_1d81f
call PrintText
- ld bc, (BICYCLE << 8) | 1
+ lb bc, BICYCLE, 1
call GiveItem
jr nc, .BagFull
ld a, BIKE_VOUCHER
- ldh [$db], a
+ ld [$ffdb], a
callba RemoveItemByID
- ld hl, wd75f
- set 0, [hl]
+ SetEvent EVENT_GOT_BICYCLE
ld hl, BikeShopText_1d824
call PrintText
jr .Done
@@ -35,13 +33,13 @@ BikeShopText1: ; 1d745 (7:5745)
ld hl, BikeShopText_1d834
call PrintText
jr .Done
-.asm_41190 ; 0x1d78c
+.asm_41190
ld hl, BikeShopText_1d810
call PrintText
xor a
ld [wCurrentMenuItem], a
ld [wLastMenuItem], a
- ld a, $3
+ ld a, A_BUTTON | B_BUTTON
ld [wMenuWatchedKeys], a
ld a, $1
ld [wMaxMenuItem], a
@@ -51,31 +49,31 @@ BikeShopText1: ; 1d745 (7:5745)
ld [wTopMenuItemX], a
ld hl, wd730
set 6, [hl]
- ld hl, wTileMap
+ coord hl, 0, 0
ld b, $4
ld c, $f
call TextBoxBorder
call UpdateSprites
- hlCoord 2, 2
+ coord hl, 2, 2
ld de, BikeShopMenuText
call PlaceString
- hlCoord 8, 3
+ coord hl, 8, 3
ld de, BikeShopMenuPrice
call PlaceString
ld hl, BikeShopText_1d815
call PrintText
call HandleMenuInput
bit 1, a
- jr nz, .asm_b7579 ; 0x1d7dc
+ jr nz, .cancel
ld hl, wd730
res 6, [hl]
ld a, [wCurrentMenuItem]
and a
- jr nz, .asm_b7579 ; 0x1d7e7
- ld hl, BikeShopText_1d81a
+ jr nz, .cancel
+ ld hl, BikeShopCantAffordText
call PrintText
-.asm_b7579 ; 0x1d7ef
- ld hl, BikeShopText_1d82a
+.cancel
+ ld hl, BikeShopComeAgainText
call PrintText
.Done
jp TextScriptEnd
@@ -95,8 +93,8 @@ BikeShopText_1d815: ; 1d815 (7:5815)
TX_FAR _BikeShopText_1d815
db "@"
-BikeShopText_1d81a: ; 1d81a (7:581a)
- TX_FAR _BikeShopText_1d81a
+BikeShopCantAffordText: ; 1d81a (7:581a)
+ TX_FAR _BikeShopCantAffordText
db "@"
BikeShopText_1d81f: ; 1d81f (7:581f)
@@ -104,11 +102,11 @@ BikeShopText_1d81f: ; 1d81f (7:581f)
db "@"
BikeShopText_1d824: ; 1d824 (7:5824)
- TX_FAR _BikeShopText_1d824 ; 0x98eb2
+ TX_FAR _BikeShopText_1d824
db $11, "@"
-BikeShopText_1d82a: ; 1d82a (7:582a)
- TX_FAR _BikeShopText_1d82a
+BikeShopComeAgainText: ; 1d82a (7:582a)
+ TX_FAR _BikeShopComeAgainText
db "@"
BikeShopText_1d82f: ; 1d82f (7:582f)
@@ -120,7 +118,7 @@ BikeShopText_1d834: ; 1d834 (7:5834)
db "@"
BikeShopText2: ; 1d839 (7:5839)
- db $08 ; asm
+ TX_ASM
ld hl, BikeShopText_1d843
call PrintText
jp TextScriptEnd
@@ -130,13 +128,12 @@ BikeShopText_1d843: ; 1d843 (7:5843)
db "@"
BikeShopText3: ; 1d848 (7:5848)
- db $08 ; asm
- ld a, [wd75f]
- bit 0, a
+ TX_ASM
+ CheckEvent EVENT_GOT_BICYCLE
ld hl, BikeShopText_1d861
- jr nz, .asm_34d2d ; 0x1d851
+ jr nz, .asm_34d2d
ld hl, BikeShopText_1d85c
-.asm_34d2d ; 0x1d856
+.asm_34d2d
call PrintText
jp TextScriptEnd
diff --git a/scripts/billshouse.asm b/scripts/billshouse.asm
index 61a575b9..08ac98d6 100755
--- a/scripts/billshouse.asm
+++ b/scripts/billshouse.asm
@@ -17,33 +17,41 @@ BillsHouseScript0: ; 1e782 (7:6782)
BillsHouseScript1: ; 1e783 (7:6783)
ld a, [wSpriteStateData1 + 9]
- and a
+ and a ; cp SPRITE_FACING_DOWN
ld de, MovementData_1e79c
- jr nz, .asm_1e78f ; 0x1e78a $3
+ jr nz, .notDown
ld de, MovementData_1e7a0
-.asm_1e78f
+.notDown
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $2
ld [W_BILLSHOUSECURSCRIPT], a
ret
MovementData_1e79c: ; 1e79c (7:679c)
- db $40,$40,$40,$FF
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db $FF
+; make Bill walk around the player
MovementData_1e7a0: ; 1e7a0 (7:67a0)
- db $C0,$40,$40,$80,$40,$FF
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_UP
+ db $FF
BillsHouseScript2: ; 1e7a6 (7:67a6)
ld a, [wd730]
bit 0, a
ret nz
ld a, HS_BILL_POKEMON
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
- ld hl, wd7f2
- set 6, [hl]
+ SetEvent EVENT_BILL_SAID_USE_CELL_SEPARATOR
xor a
ld [wJoyIgnore], a
ld a, $3
@@ -51,8 +59,7 @@ BillsHouseScript2: ; 1e7a6 (7:67a6)
ret
BillsHouseScript3: ; 1e7c5 (7:67c5)
- ld a, [wd7f2]
- bit 3, a
+ CheckEvent EVENT_USED_CELL_SEPARATOR_ON_BILL
ret z
ld a, $f0
ld [wJoyIgnore], a
@@ -68,12 +75,12 @@ BillsHouseScript3: ; 1e7c5 (7:67c5)
ld [$ffee], a
call SetSpritePosition1
ld a, HS_BILL_1
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
- ld c, $8
+ ld c, 8
call DelayFrames
ld a, $2
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
ld de, MovementData_1e807
call MoveSprite
ld a, $4
@@ -81,7 +88,12 @@ BillsHouseScript3: ; 1e7c5 (7:67c5)
ret
MovementData_1e807: ; 1e807 (7:6807)
- db $00,$C0,$C0,$C0,$00,$FF
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db $FF
BillsHouseScript4: ; 1e80d (7:680d)
ld a, [wd730]
@@ -89,17 +101,15 @@ BillsHouseScript4: ; 1e80d (7:680d)
ret nz
xor a
ld [wJoyIgnore], a
- ld hl, wd7f2
- set 5, [hl]
- ld hl, wd7f1
- set 0, [hl]
+ SetEvent EVENT_MET_BILL_2 ; this event seems redundant
+ SetEvent EVENT_MET_BILL
ld a, $0
ld [W_BILLSHOUSECURSCRIPT], a
ret
BillsHouseScript5: ; 1e827 (7:6827)
ld a, $4
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $0
ld [W_BILLSHOUSECURSCRIPT], a
@@ -115,66 +125,64 @@ BillsHouseText4: ; 1e83c (7:683c)
db $fd
BillsHouseText1: ; 1e83d (7:683d)
- db $8
+ TX_ASM
ld hl, BillsHouseText_1e865
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr nz, asm_6b196 ; 0x1e84b $d
-asm_4d03c: ; 1e84d (7:684d)
+ jr nz, .asm_1e85a
+.asm_1e84d
ld hl, BillsHouseText_1e86a
call PrintText
ld a, $1
ld [W_BILLSHOUSECURSCRIPT], a
- jr asm_fd4e2 ; 0x1e858 $8
-asm_6b196: ; 1e85a (7:685a)
+ jr .asm_1e862
+.asm_1e85a
ld hl, BillsHouseText_1e86f
call PrintText
- jr asm_4d03c ; 0x1e860 $eb
-asm_fd4e2 ; 0x1e862
+ jr .asm_1e84d
+.asm_1e862
jp TextScriptEnd
BillsHouseText_1e865: ; 1e865 (7:6865)
- TX_FAR _BillsHouseText_1e865 ; 0x8d267
+ TX_FAR _BillsHouseText_1e865
db "@"
BillsHouseText_1e86a: ; 1e86a (7:686a)
- TX_FAR _BillsHouseText_1e86a ; 0x8d345
+ TX_FAR _BillsHouseText_1e86a
db "@"
BillsHouseText_1e86f: ; 1e86f (7:686f)
- TX_FAR _BillsHouseText_1e86f ; 0x8d391
+ TX_FAR _BillsHouseText_1e86f
db "@"
BillsHouseText2: ; 1e874 (7:6874)
- db $08 ; asm
- ld a, [wd7f2]
- bit 4, a
- jr nz, .asm_5491f ; 0x1e87a
+ TX_ASM
+ CheckEvent EVENT_GOT_SS_TICKET
+ jr nz, .asm_1e8a9
ld hl, BillThankYouText
call PrintText
- ld bc, (S_S__TICKET << 8) | 1
+ lb bc, S_S__TICKET, 1
call GiveItem
jr nc, .BagFull
ld hl, SSTicketReceivedText
call PrintText
- ld hl, wd7f2
- set 4, [hl]
+ SetEvent EVENT_GOT_SS_TICKET
ld a, HS_CERULEAN_GUARD_1
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
ld a, HS_CERULEAN_GUARD_2
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
-.asm_5491f ; 0x1e8a9
+.asm_1e8a9
ld hl, BillsHouseText_1e8cb
call PrintText
- jr .asm_bd408 ; 0x1e8af
+ jr .asm_1e8b7
.BagFull
ld hl, SSTicketNoRoomText
call PrintText
-.asm_bd408 ; 0x1e8b7
+.asm_1e8b7
jp TextScriptEnd
BillThankYouText: ; 1e8ba (7:68ba)
@@ -194,7 +202,7 @@ BillsHouseText_1e8cb: ; 1e8cb (7:68cb)
db "@"
BillsHouseText3: ; 1e8d0 (7:68d0)
- db $08 ; asm
+ TX_ASM
ld hl, BillsHouseText_1e8da
call PrintText
jp TextScriptEnd
diff --git a/scripts/blueshouse.asm b/scripts/blueshouse.asm
index ab05e286..6aa2eaec 100755
--- a/scripts/blueshouse.asm
+++ b/scripts/blueshouse.asm
@@ -9,8 +9,7 @@ BluesHouseScriptPointers: ; 19b47 (6:5b47)
dw BluesHouseScript1
BluesHouseScript0: ; 19b4b (6:5b4b)
- ld hl,wd74a
- set 1,[hl]
+ SetEvent EVENT_ENTERED_BLUES_HOUSE
; trigger the next script
ld a,1
@@ -26,12 +25,10 @@ BluesHouseTextPointers: ; 19b57 (6:5b57)
dw BluesHouseText3
BluesHouseText1: ; 19b5d (6:5b5d)
- db 8
- ld a,[wd74a]
- bit 0,a
+ TX_ASM
+ CheckEvent EVENT_GOT_TOWN_MAP
jr nz,.GotMap
- ld a,[wd74b]
- bit 5,a
+ CheckEvent EVENT_GOT_POKEDEX
jr nz,.GiveMap
ld hl,DaisyInitialText
call PrintText
@@ -39,16 +36,15 @@ BluesHouseText1: ; 19b5d (6:5b5d)
.GiveMap
ld hl,DaisyOfferMapText
call PrintText
- ld bc,(TOWN_MAP << 8) | 1
+ lb bc, TOWN_MAP, 1
call GiveItem
jr nc, .BagFull
ld a,HS_TOWN_MAP
- ld [wcc4d],a
+ ld [wMissableObjectIndex],a
predef HideObject ; hide table map object
ld hl,GotMapText
call PrintText
- ld hl,wd74a
- set 0,[hl]
+ SetEvent EVENT_GOT_TOWN_MAP
jr .done
.GotMap
ld hl,DaisyUseMapText
diff --git a/scripts/bruno.asm b/scripts/bruno.asm
index ffe05bce..bdfd7e24 100755
--- a/scripts/bruno.asm
+++ b/scripts/bruno.asm
@@ -13,8 +13,7 @@ BrunoScript_762ec: ; 762ec (1d:62ec)
bit 5, [hl]
res 5, [hl]
ret z
- ld a, [wd864]
- bit 1, a
+ CheckEvent EVENT_BEAT_BRUNOS_ROOM_TRAINER_0
jr z, .asm_76300
ld a, $5
jp BrunoScript_76302
@@ -22,8 +21,8 @@ BrunoScript_762ec: ; 762ec (1d:62ec)
ld a, $24
BrunoScript_76302: ; 76302 (1d:6302)
- ld [wd09f], a
- ld bc, $2
+ ld [wNewTileBlockID], a
+ lb bc, 0, 2
predef_jump ReplaceTileBlock
BrunoScript_7630d: ; 7630d (1d:630d)
@@ -40,7 +39,8 @@ BrunoScriptPointers: ; 76312 (1d:6312)
BrunoScript4: ; 7631c (1d:631c)
ret
-asm_7631d: ; 7631d (1d:631d)
+
+BrunoScript_7631d: ; 7631d (1d:631d)
ld hl, wSimulatedJoypadStatesEnd
ld a, D_UP
ld [hli], a
@@ -66,16 +66,14 @@ BrunoScript0: ; 76339 (1d:6339)
ld [hJoyHeld], a
ld [wSimulatedJoypadStatesEnd], a
ld [wSimulatedJoypadStatesIndex], a
- ld a, [wWhichTrade] ; wWhichTrade
+ ld a, [wCoordIndex]
cp $3
jr c, .asm_7635d
- ld hl, wd864
- bit 6, [hl]
- set 6, [hl]
- jr z, asm_7631d
+ CheckAndSetEvent EVENT_AUTOWALKED_INTO_BRUNOS_ROOM
+ jr z, BrunoScript_7631d
.asm_7635d
ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, D_UP
ld [wSimulatedJoypadStatesEnd], a
@@ -107,31 +105,31 @@ BrunoScript3: ; 76383 (1d:6383)
BrunoScript2: ; 76396 (1d:6396)
call EndTrainerBattle
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, BrunoScript_7630d
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
BrunoTextPointers: ; 763a8 (1d:63a8)
dw BrunoText1
- dw BrunoText2
+ dw BrunoDontRunAwayText
BrunoTrainerHeaders: ; 763ac (1d:63ac)
BrunoTrainerHeader0: ; 763ac (1d:63ac)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_BRUNOS_ROOM_TRAINER_0
db ($0 << 4) ; trainer's view range
- dw wd864 ; flag's byte
- dw BrunoBeforeBattleText ; 0x63c3 TextBeforeBattle
- dw BrunoAfterBattleText ; 0x63cd TextAfterBattle
- dw BrunoEndBattleText ; 0x63c8 TextEndBattle
- dw BrunoEndBattleText ; 0x63c8 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_BRUNOS_ROOM_TRAINER_0
+ dw BrunoBeforeBattleText ; TextBeforeBattle
+ dw BrunoAfterBattleText ; TextAfterBattle
+ dw BrunoEndBattleText ; TextEndBattle
+ dw BrunoEndBattleText ; TextEndBattle
db $ff
BrunoText1: ; 763b9 (1d:63b9)
- db $08 ; asm
+ TX_ASM
ld hl, BrunoTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -148,6 +146,6 @@ BrunoAfterBattleText: ; 763cd (1d:63cd)
TX_FAR _BrunoAfterBattleText
db "@"
-BrunoText2: ; 763d2 (1d:63d2)
- TX_FAR _UnnamedText_763d2
+BrunoDontRunAwayText: ; 763d2 (1d:63d2)
+ TX_FAR _BrunoDontRunAwayText
db "@"
diff --git a/scripts/celadoncity.asm b/scripts/celadoncity.asm
index 004d8773..cfc8f197 100755
--- a/scripts/celadoncity.asm
+++ b/scripts/celadoncity.asm
@@ -1,10 +1,7 @@
CeladonCityScript: ; 19956 (6:5956)
call EnableAutoTextBoxDrawing
- ld hl, wd77e
- res 0, [hl]
- res 7, [hl]
- ld hl, wd816
- res 7, [hl]
+ ResetEvents EVENT_1B8, EVENT_1BF
+ ResetEvent EVENT_67F
ret
CeladonCityTextPointers: ; 19966 (6:5966)
@@ -44,13 +41,12 @@ CeladonCityText4: ; 19999 (6:5999)
db "@"
CeladonCityText5: ; 1999e (6:599e)
- db $08 ; asm
- ld a, [wd777]
- bit 0, a
- jr nz, .asm_7053f ; 0x199a4
+ TX_ASM
+ CheckEvent EVENT_GOT_TM41
+ jr nz, .asm_7053f
ld hl, TM41PreText
call PrintText
- ld bc, (TM_41 << 8) | 1
+ lb bc, TM_41, 1
call GiveItem
jr c, .Success
ld hl, TM41NoRoomText
@@ -59,10 +55,9 @@ CeladonCityText5: ; 1999e (6:599e)
.Success
ld hl, ReceivedTM41Text
call PrintText
- ld hl, wd777
- set 0, [hl]
+ SetEvent EVENT_GOT_TM41
jr .Done
-.asm_7053f ; 0x199c9
+.asm_7053f
ld hl, TM41ExplanationText
call PrintText
.Done
@@ -90,7 +85,7 @@ CeladonCityText6: ; 199e7 (6:59e7)
CeladonCityText7: ; 199ec (6:59ec)
TX_FAR _CeladonCityText7
- db $08 ; asm
+ TX_ASM
ld a, POLIWRATH
call PlayCry
jp TextScriptEnd
diff --git a/scripts/celadondiner.asm b/scripts/celadondiner.asm
index 5ae89022..be1ed4c8 100755
--- a/scripts/celadondiner.asm
+++ b/scripts/celadondiner.asm
@@ -26,28 +26,26 @@ CeladonDinerText4: ; 4916e (12:516e)
db "@"
CeladonDinerText5: ; 49173 (12:5173)
- db $08 ; asm
- ld a, [wd783]
- bit 0, a
- jr nz, .asm_eb14d ; 0x49179
+ TX_ASM
+ CheckEvent EVENT_GOT_COIN_CASE
+ jr nz, .asm_eb14d
ld hl, CeladonDinerText_491a7
call PrintText
- ld bc, (COIN_CASE << 8) | 1
+ lb bc, COIN_CASE, 1
call GiveItem
jr nc, .BagFull
- ld hl, wd783
- set 0, [hl]
+ SetEvent EVENT_GOT_COIN_CASE
ld hl, ReceivedCoinCaseText
call PrintText
- jr .asm_68b61 ; 0x49194
+ jr .asm_68b61
.BagFull
ld hl, CoinCaseNoRoomText
call PrintText
- jr .asm_68b61 ; 0x4919c
-.asm_eb14d ; 0x4919e
+ jr .asm_68b61
+.asm_eb14d
ld hl, CeladonDinerText_491b7
call PrintText
-.asm_68b61 ; 0x491a4
+.asm_68b61
jp TextScriptEnd
CeladonDinerText_491a7: ; 491a7 (12:51a7)
diff --git a/scripts/celadongamecorner.asm b/scripts/celadongamecorner.asm
index 5dbbd06a..787a2f3d 100755
--- a/scripts/celadongamecorner.asm
+++ b/scripts/celadongamecorner.asm
@@ -12,7 +12,7 @@ CeladonGameCornerScript_48bcf: ; 48bcf (12:4bcf)
res 6, [hl]
ret z
call Random
- ld a, [$ffd3]
+ ld a, [hRandomAdd]
cp $7
jr nc, .asm_48be2
ld a, $8
@@ -20,7 +20,7 @@ CeladonGameCornerScript_48bcf: ; 48bcf (12:4bcf)
srl a
srl a
srl a
- ld [wUnknownSlotVar], a
+ ld [wLuckySlotHiddenObjectIndex], a
ret
CeladonGameCornerScript_48bec: ; 48bec (12:4bec)
@@ -28,12 +28,11 @@ CeladonGameCornerScript_48bec: ; 48bec (12:4bec)
bit 5, [hl]
res 5, [hl]
ret z
- ld a, [wd77e]
- bit 1, a
+ CheckEvent EVENT_FOUND_ROCKET_HIDEOUT
ret nz
ld a, $2a
- ld [wd09f], a
- ld bc, $0208
+ ld [wNewTileBlockID], a
+ lb bc, 2, 8
predef_jump ReplaceTileBlock
CeladonGameCornerScript_48c07: ; 48c07 (12:4c07)
@@ -58,10 +57,10 @@ CeladonGameCornerScript1: ; 48c19 (12:4c19)
ld a, $f0
ld [wJoyIgnore], a
ld a, $d
- ld [H_SPRITEHEIGHT], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $b
- ld [H_SPRITEHEIGHT], a
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
ld de, MovementData_48c5a
ld a, [W_YCOORD]
@@ -76,17 +75,30 @@ CeladonGameCornerScript1: ; 48c19 (12:4c19)
ld de, MovementData_48c63
.asm_48c4d
ld a, $b
- ld [H_DOWNARROWBLINKCNT2], a
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $2
ld [W_CELADONGAMECORNERCURSCRIPT], a
ret
MovementData_48c5a: ; 48c5a (12:4c5a)
- db $00,$C0,$C0,$40,$C0,$C0,$C0,$C0,$FF
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
MovementData_48c63: ; 48c63 (12:4c63)
- db $C0,$C0,$C0,$C0,$C0,$FF
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
CeladonGameCornerScript2: ; 48c69 (12:4c69)
ld a, [wd730]
@@ -95,7 +107,7 @@ CeladonGameCornerScript2: ; 48c69 (12:4c69)
xor a
ld [wJoyIgnore], a
ld a, HS_GAME_CORNER_ROCKET
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld hl, wd126
set 5, [hl]
@@ -124,59 +136,59 @@ CeladonGameCornerText1: ; 48ca4 (12:4ca4)
db "@"
CeladonGameCornerText2: ; 48ca9 (12:4ca9)
- db $08 ; asm
+ TX_ASM
call CeladonGameCornerScript_48f1e
ld hl, CeladonGameCornerText_48d22
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr nz, .asm_c650b ; 0x48cba
+ jr nz, .asm_48d0f
ld b,COIN_CASE
call IsItemInBag
- jr z, .asm_ed086 ; 0x48cc1
+ jr z, .asm_48d19
call Has9990Coins
- jr nc, .asm_31338 ; 0x48cc6
+ jr nc, .asm_48d14
xor a
- ld [$ff9f], a
- ld [$ffa1], a
+ ld [hMoney], a
+ ld [hMoney + 2], a
ld a, $10
- ld [$ffa0], a
+ ld [hMoney + 1], a
call HasEnoughMoney
- jr nc, .asm_b6ef0 ; 0x48cd4
- ld hl, CeladonGameCornerText_48d31 ; $4d31
- jr .asm_e2afd ; 0x48cd9
-.asm_b6ef0 ; 0x48cdb
+ jr nc, .asm_48cdb
+ ld hl, CeladonGameCornerText_48d31
+ jr .asm_48d1c
+.asm_48cdb
xor a
- ld [$ff9f], a
- ld [$ffa1], a
+ ld [hMoney], a
+ ld [hMoney + 2], a
ld a, $10
- ld [$fa0], a
- ld hl, $ffa1
+ ld [hMoney + 1], a
+ ld hl, hMoney + 2
ld de, wPlayerMoney + 2
ld c, $3
predef SubBCDPredef
xor a
- ld [$ff9f], a
- ld [$ffa0], a
+ ld [hUnusedCoinsByte], a
+ ld [hCoins], a
ld a, $50
- ld [$ffa1], a
+ ld [hCoins + 1], a
ld de, wPlayerCoins + 1
- ld hl, $ffa1
+ ld hl, hCoins + 1
ld c, $2
predef AddBCDPredef
call CeladonGameCornerScript_48f1e
ld hl, CeladonGameCornerText_48d27
- jr .asm_e2afd ; 0x48d0d
-.asm_c650b ; 0x48d0f
+ jr .asm_48d1c
+.asm_48d0f
ld hl, CeladonGameCornerText_48d2c
- jr .asm_e2afd ; 0x48d12
-.asm_31338 ; 0x48d14
+ jr .asm_48d1c
+.asm_48d14
ld hl, CeladonGameCornerText_48d36
- jr .asm_e2afd ; 0x48d17
-.asm_ed086 ; 0x48d19
+ jr .asm_48d1c
+.asm_48d19
ld hl, CeladonGameCornerText_48d3b
-.asm_e2afd ; 0x48d1c
+.asm_48d1c
call PrintText
jp TextScriptEnd
@@ -213,41 +225,39 @@ CeladonGameCornerText4: ; 48d45 (12:4d45)
db "@"
CeladonGameCornerText5: ; 48d4a (12:4d4a)
- db $08 ; asm
- ld a, [wd77e]
- bit 2, a
- jr nz, .asm_d0957 ; 0x48d50
+ TX_ASM
+ CheckEvent EVENT_GOT_10_COINS
+ jr nz, .asm_48d89
ld hl, CeladonGameCornerText_48d9c
call PrintText
ld b, COIN_CASE
call IsItemInBag
- jr z, .asm_5aef9 ; 0x48d5d
+ jr z, .asm_48d93
call Has9990Coins
- jr nc, .asm_98546 ; 0x48d62
+ jr nc, .asm_48d8e
xor a
- ld [$ff9f], a
- ld [$ffa0], a
+ ld [hUnusedCoinsByte], a
+ ld [hCoins], a
ld a, $10
- ld [$ffa1], a
+ ld [hCoins + 1], a
ld de, wPlayerCoins + 1
- ld hl, $ffa1
+ ld hl, hCoins + 1
ld c, $2
predef AddBCDPredef
- ld hl, wd77e
- set 2, [hl]
+ SetEvent EVENT_GOT_10_COINS
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, Received10CoinsText
- jr .asm_c7d1a ; 0x48d87
-.asm_d0957 ; 0x48d89
+ jr .asm_48d96
+.asm_48d89
ld hl, CeladonGameCornerText_48dac
- jr .asm_c7d1a ; 0x48d8c
-.asm_98546 ; 0x48d8e
+ jr .asm_48d96
+.asm_48d8e
ld hl, CeladonGameCornerText_48da7
- jr .asm_c7d1a ; 0x48d91
-.asm_5aef9 ; 0x48d93
+ jr .asm_48d96
+.asm_48d93
ld hl, CeladonGameCornerText_48f19
-.asm_c7d1a ; 0x48d96
+.asm_48d96
call PrintText
jp TextScriptEnd
@@ -272,13 +282,12 @@ CeladonGameCornerText6: ; 48db1 (12:4db1)
db "@"
CeladonGameCornerText7: ; 48db6 (12:4db6)
- db $08 ; asm
- ld a, [wd77c]
- bit 1, a
- ld hl, CeladonGameCornerText_48dca ; $4dca
- jr z, .asm_be3fd ; 0x48dbf
- ld hl, CeladonGameCornerText_48dcf ; $4dcf
-.asm_be3fd ; 0x48dc4
+ TX_ASM
+ CheckEvent EVENT_BEAT_ERIKA
+ ld hl, CeladonGameCornerText_48dca
+ jr z, .asm_48dc4
+ ld hl, CeladonGameCornerText_48dcf
+.asm_48dc4
call PrintText
jp TextScriptEnd
@@ -295,39 +304,37 @@ CeladonGameCornerText8: ; 48dd4 (12:4dd4)
db "@"
CeladonGameCornerText9: ; 48dd9 (12:4dd9)
- db $08 ; asm
- ld a, [wd77e]
- bit 4, a
- jr nz, .asm_ed8bc ; 0x48ddf
+ TX_ASM
+ CheckEvent EVENT_GOT_20_COINS_2
+ jr nz, .asm_48e13
ld hl, CeladonGameCornerText_48e26
call PrintText
ld b, COIN_CASE
call IsItemInBag
- jr z, .asm_df794 ; 0x48dec
+ jr z, .asm_48e1d
call Has9990Coins
- jr nc, .asm_f17c3 ; 0x48df1
+ jr nc, .asm_48e18
xor a
- ld [$ff9f], a
- ld [$ffa0], a
+ ld [hUnusedCoinsByte], a
+ ld [hCoins], a
ld a, $20
- ld [$ffa1], a
+ ld [hCoins + 1], a
ld de, wPlayerCoins + 1
- ld hl, $ffa1
+ ld hl, hCoins + 1
ld c, $2
predef AddBCDPredef
- ld hl, wd77e
- set 4, [hl]
+ SetEvent EVENT_GOT_20_COINS_2
ld hl, Received20CoinsText
- jr .asm_0ddc2 ; 0x48e11
-.asm_ed8bc ; 0x48e13
+ jr .asm_48e20
+.asm_48e13
ld hl, CeladonGameCornerText_48e36
- jr .asm_0ddc2 ; 0x48e16
-.asm_f17c3 ; 0x48e18
+ jr .asm_48e20
+.asm_48e18
ld hl, CeladonGameCornerText_48e31
- jr .asm_0ddc2 ; 0x48e1b
-.asm_df794 ; 0x48e1d
+ jr .asm_48e20
+.asm_48e1d
ld hl, CeladonGameCornerText_48f19
-.asm_0ddc2 ; 0x48e20
+.asm_48e20
call PrintText
jp TextScriptEnd
@@ -348,39 +355,37 @@ CeladonGameCornerText_48e36: ; 48e36 (12:4e36)
db "@"
CeladonGameCornerText10: ; 48e3b (12:4e3b)
- db $08 ; asm
- ld a, [wd77e]
- bit 3, a
- jr nz, .asm_ff080 ; 0x48e41
- ld hl, CeladonGameCornerText_48e88 ; $4e88
+ TX_ASM
+ CheckEvent EVENT_GOT_20_COINS
+ jr nz, .asm_48e75
+ ld hl, CeladonGameCornerText_48e88
call PrintText
ld b,COIN_CASE
call IsItemInBag
- jr z, .asm_4fb0c ; 0x48e4e
+ jr z, .asm_48e7f
call Has9990Coins
- jr z, .asm_9505a ; 0x48e53
+ jr z, .asm_48e7a
xor a
- ld [$ff9f], a
- ld [$ffa0], a
+ ld [hUnusedCoinsByte], a
+ ld [hCoins], a
ld a, $20
- ld [$ffa1], a
+ ld [hCoins + 1], a
ld de, wPlayerCoins + 1
- ld hl, $ffa1
+ ld hl, hCoins + 1
ld c, $2
predef AddBCDPredef
- ld hl, wd77e
- set 3, [hl]
+ SetEvent EVENT_GOT_20_COINS
ld hl, CeladonGameCornerText_48e8d
- jr .asm_78d65 ; 0x48e73
-.asm_ff080 ; 0x48e75
+ jr .asm_48e82
+.asm_48e75
ld hl, CeladonGameCornerText_48e98
- jr .asm_78d65 ; 0x48e78
-.asm_9505a ; 0x48e7a
+ jr .asm_48e82
+.asm_48e7a
ld hl, CeladonGameCornerText_48e93
- jr .asm_78d65 ; 0x48e7d
-.asm_4fb0c ; 0x48e7f
+ jr .asm_48e82
+.asm_48e7f
ld hl, CeladonGameCornerText_48f19
-.asm_78d65 ; 0x48e82
+.asm_48e82
call PrintText
jp TextScriptEnd
@@ -389,7 +394,7 @@ CeladonGameCornerText_48e88: ; 48e88 (12:4e88)
db "@"
CeladonGameCornerText_48e8d: ; 48e8d (12:4e8d)
- TX_FAR _CeladonGameCornerText_48e8d ; 0x9dceb
+ TX_FAR _CeladonGameCornerText_48e8d
db $0B, "@"
CeladonGameCornerText_48e93: ; 48e93 (12:4e93)
@@ -401,7 +406,7 @@ CeladonGameCornerText_48e98: ; 48e98 (12:4e98)
db "@"
CeladonGameCornerText11: ; 48e9d (12:4e9d)
- db $08 ; asm
+ TX_ASM
ld hl, CeladonGameCornerText_48ece
call PrintText
ld hl, wd72d
@@ -410,14 +415,14 @@ CeladonGameCornerText11: ; 48e9d (12:4e9d)
ld hl, CeladonGameCornerText_48ed3
ld de, CeladonGameCornerText_48ed3
call SaveEndBattleTextPointers
- ldh a, [$8c]
+ ld a, [H_SPRITEINDEX]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
xor a
ld [hJoyHeld], a
- ldh [hJoyPressed], a
- ldh [hJoyReleased], a
+ ld [hJoyPressed], a
+ ld [hJoyReleased], a
ld a, $1
ld [W_CELADONGAMECORNERCURSCRIPT], a
jp TextScriptEnd
@@ -435,27 +440,26 @@ CeladonGameCornerText13: ; 48ed8 (12:4ed8)
db "@"
CeladonGameCornerText12: ; 48edd (12:4edd)
- db $08 ; asm
+ TX_ASM
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, CeladonGameCornerText_48f09
call PrintText
call WaitForSoundToFinish
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ ld a, SFX_GO_INSIDE
call PlaySound
call WaitForSoundToFinish
- ld hl, wd77e
- set 1, [hl]
+ SetEvent EVENT_FOUND_ROCKET_HIDEOUT
ld a, $43
- ld [wd09f], a
- ld bc, $0208
+ ld [wNewTileBlockID], a
+ lb bc, 2, 8
predef ReplaceTileBlock
jp TextScriptEnd
CeladonGameCornerText_48f09: ; 48f09 (12:4f09)
- TX_FAR _CeladonGameCornerText_48f09 ; 0x9ddb0
- db $8
- ld a, (SFX_02_49 - SFX_Headers_02) / 3
+ TX_FAR _CeladonGameCornerText_48f09
+ TX_ASM
+ ld a, SFX_SWITCH
call PlaySound
call WaitForSoundToFinish
jp TextScriptEnd
@@ -467,32 +471,32 @@ CeladonGameCornerText_48f19: ; 48f19 (12:4f19)
CeladonGameCornerScript_48f1e: ; 48f1e (12:4f1e)
ld hl, wd730
set 6, [hl]
- hlCoord 11, 0
+ coord hl, 11, 0
ld b, $5
ld c, $7
call TextBoxBorder
call UpdateSprites
- hlCoord 12, 1
- ld b, $4
- ld c, $7
+ coord hl, 12, 1
+ ld b, 4
+ ld c, 7
call ClearScreenArea
- hlCoord 12, 2
+ coord hl, 12, 2
ld de, GameCornerMoneyText
call PlaceString
- hlCoord 12, 3
+ coord hl, 12, 3
ld de, GameCornerBlankText1
call PlaceString
- hlCoord 12, 3
+ coord hl, 12, 3
ld de, wPlayerMoney
ld c, $a3
call PrintBCDNumber
- hlCoord 12, 4
+ coord hl, 12, 4
ld de, GameCornerCoinText
call PlaceString
- hlCoord 12, 5
+ coord hl, 12, 5
ld de, GameCornerBlankText2
call PlaceString
- hlCoord 15, 5
+ coord hl, 15, 5
ld de, wPlayerCoins
ld c, $82
call PrintBCDNumber
@@ -514,7 +518,7 @@ GameCornerBlankText2: ; 48f8d (12:4f8d)
Has9990Coins: ; 48f95 (12:4f95)
ld a, $99
- ld [$ffa0], a
+ ld [hCoins], a
ld a, $90
- ld [$ffa1], a
+ ld [hCoins + 1], a
jp HasEnoughCoins
diff --git a/scripts/celadongym.asm b/scripts/celadongym.asm
index b1b1060c..64e85ff7 100755
--- a/scripts/celadongym.asm
+++ b/scripts/celadongym.asm
@@ -12,8 +12,8 @@ CeladonGymScript: ; 4890a (12:490a)
ret
CeladonGymScript_48927: ; 48927 (12:4927)
- ld hl, Gym4CityName ; $4930
- ld de, Gym4LeaderName ; $493d
+ ld hl, Gym4CityName
+ ld de, Gym4LeaderName
jp LoadGymLeaderAndCityName
Gym4CityName: ; 48930 (12:4930)
@@ -36,7 +36,7 @@ CeladonGymScriptPointers: ; 4894e (12:494e)
dw CeladonGymScript3
CeladonGymScript3: ; 48956 (12:4956)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, CeladonGymText_48943
ld a, $f0
@@ -44,35 +44,29 @@ CeladonGymScript3: ; 48956 (12:4956)
CeladonGymText_48963: ; 48963 (12:4963)
ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd77c
- set 1, [hl]
- ld bc, (TM_21 << 8) | 1
+ SetEvent EVENT_BEAT_ERIKA
+ lb bc, TM_21, 1
call GiveItem
jr nc, .BagFull
ld a, $a
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd77c
- set 0, [hl]
+ SetEvent EVENT_GOT_TM21
jr .asm_4898c
.BagFull
ld a, $b
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
.asm_4898c
ld hl, W_OBTAINEDBADGES
set 3, [hl]
- ld hl, wd72a
+ ld hl, wBeatGymFlags
set 3, [hl]
; deactivate gym trainers
- ld a, [wd77c]
- or %11111100
- ld [wd77c], a
- ld hl, wd77d
- set 0, [hl]
+ SetEventRange EVENT_BEAT_CELADON_GYM_TRAINER_0, EVENT_BEAT_CELADON_GYM_TRAINER_7
jp CeladonGymText_48943
@@ -91,85 +85,84 @@ CeladonGymTextPointers: ; 489a6 (12:49a6)
CeladonGymTrainerHeaders: ; 489bc (12:49bc)
CeladonGymTrainerHeader0: ; 489bc (12:49bc)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd77c ; flag's byte
- dw CeladonGymBattleText2 ; 0x4a8b TextBeforeBattle
- dw CeladonGymAfterBattleText2 ; 0x4a95 TextAfterBattle
- dw CeladonGymEndBattleText2 ; 0x4a90 TextEndBattle
- dw CeladonGymEndBattleText2 ; 0x4a90 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_0
+ dw CeladonGymBattleText2 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText2 ; TextAfterBattle
+ dw CeladonGymEndBattleText2 ; TextEndBattle
+ dw CeladonGymEndBattleText2 ; TextEndBattle
CeladonGymTrainerHeader2: ; 489c8 (12:49c8)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd77c ; flag's byte
- dw CeladonGymBattleText3 ; 0x4aa4 TextBeforeBattle
- dw CeladonGymAfterBattleText3 ; 0x4aae TextAfterBattle
- dw CeladonGymEndBattleText3 ; 0x4aa9 TextEndBattle
- dw CeladonGymEndBattleText3 ; 0x4aa9 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_2
+ dw CeladonGymBattleText3 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText3 ; TextAfterBattle
+ dw CeladonGymEndBattleText3 ; TextEndBattle
+ dw CeladonGymEndBattleText3 ; TextEndBattle
CeladonGymTrainerHeader3: ; 489d4 (12:49d4)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_3
db ($4 << 4) ; trainer's view range
- dw wd77c ; flag's byte
- dw CeladonGymBattleText4 ; 0x4abd TextBeforeBattle
- dw CeladonGymAfterBattleText4 ; 0x4ac7 TextAfterBattle
- dw CeladonGymEndBattleText4 ; 0x4ac2 TextEndBattle
- dw CeladonGymEndBattleText4 ; 0x4ac2 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_3
+ dw CeladonGymBattleText4 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText4 ; TextAfterBattle
+ dw CeladonGymEndBattleText4 ; TextEndBattle
+ dw CeladonGymEndBattleText4 ; TextEndBattle
CeladonGymTrainerHeader4: ; 489e0 (12:49e0)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_4
db ($4 << 4) ; trainer's view range
- dw wd77c ; flag's byte
- dw CeladonGymBattleText5 ; 0x4ad6 TextBeforeBattle
- dw CeladonGymAfterBattleText5 ; 0x4ae0 TextAfterBattle
- dw CeladonGymEndBattleText5 ; 0x4adb TextEndBattle
- dw CeladonGymEndBattleText5 ; 0x4adb TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_4
+ dw CeladonGymBattleText5 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText5 ; TextAfterBattle
+ dw CeladonGymEndBattleText5 ; TextEndBattle
+ dw CeladonGymEndBattleText5 ; TextEndBattle
CeladonGymTrainerHeader5: ; 489ec (12:49ec)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_5
db ($2 << 4) ; trainer's view range
- dw wd77c ; flag's byte
- dw CeladonGymBattleText6 ; 0x4aef TextBeforeBattle
- dw CeladonGymAfterBattleText6 ; 0x4af9 TextAfterBattle
- dw CeladonGymEndBattleText6 ; 0x4af4 TextEndBattle
- dw CeladonGymEndBattleText6 ; 0x4af4 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_5
+ dw CeladonGymBattleText6 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText6 ; TextAfterBattle
+ dw CeladonGymEndBattleText6 ; TextEndBattle
+ dw CeladonGymEndBattleText6 ; TextEndBattle
CeladonGymTrainerHeader6: ; 489f8 (12:49f8)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_6
db ($2 << 4) ; trainer's view range
- dw wd77c ; flag's byte
- dw CeladonGymBattleText7 ; 0x4b08 TextBeforeBattle
- dw CeladonGymAfterBattleText7 ; 0x4b12 TextAfterBattle
- dw CeladonGymEndBattleText7 ; 0x4b0d TextEndBattle
- dw CeladonGymEndBattleText7 ; 0x4b0d TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_6
+ dw CeladonGymBattleText7 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText7 ; TextAfterBattle
+ dw CeladonGymEndBattleText7 ; TextEndBattle
+ dw CeladonGymEndBattleText7 ; TextEndBattle
CeladonGymTrainerHeader7: ; 48a04 (12:4a04)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_7, 1
db ($3 << 4) ; trainer's view range
- dw wd77c ; flag's byte
- dw CeladonGymBattleText8 ; 0x4b21 TextBeforeBattle
- dw CeladonGymAfterBattleText8 ; 0x4b2b TextAfterBattle
- dw CeladonGymEndBattleText8 ; 0x4b26 TextEndBattle
- dw CeladonGymEndBattleText8 ; 0x4b26 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_7, 1
+ dw CeladonGymBattleText8 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText8 ; TextAfterBattle
+ dw CeladonGymEndBattleText8 ; TextEndBattle
+ dw CeladonGymEndBattleText8 ; TextEndBattle
db $ff
CeladonGymText1: ; 48a11 (12:4a11)
- db $08 ; asm
- ld a, [wd77c]
- bit 1, a
- jr z, .asm_16064 ; 0x48a17
- bit 0, a
- jr nz, .asm_3b22c ; 0x48a1b
+ TX_ASM
+ CheckEvent EVENT_BEAT_ERIKA
+ jr z, .asm_48a2d
+ CheckEventReuseA EVENT_GOT_TM21
+ jr nz, .asm_48a25
call z, CeladonGymText_48963
call DisableWaitingAfterTextDisplay
- jr .asm_96252 ; 0x48a23
-.asm_3b22c ; 0x48a25
+ jr .asm_48a5b
+.asm_48a25
ld hl, CeladonGymText_48a68
call PrintText
- jr .asm_96252 ; 0x48a2b
-.asm_16064 ; 0x48a2d
+ jr .asm_48a5b
+.asm_48a2d
ld hl, CeladonGymText_48a5e
call PrintText
ld hl, wd72d
@@ -178,7 +171,7 @@ CeladonGymText1: ; 48a11 (12:4a11)
ld hl, CeladonGymText_48a63
ld de, CeladonGymText_48a63
call SaveEndBattleTextPointers
- ldh a, [$8c]
+ ld a, [H_SPRITEINDEX]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
@@ -187,7 +180,7 @@ CeladonGymText1: ; 48a11 (12:4a11)
ld a, $3
ld [W_CELADONGYMCURSCRIPT], a
ld [W_CURMAPSCRIPT], a
-.asm_96252 ; 0x48a5b
+.asm_48a5b
jp TextScriptEnd
CeladonGymText_48a5e: ; 48a5e (12:4a5e)
@@ -217,7 +210,7 @@ TM21NoRoomText: ; 48a7c (12:4a7c)
db "@"
CeladonGymText2: ; 48a81 (12:4a81)
- db $08 ; asm
+ TX_ASM
ld hl, CeladonGymTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -235,7 +228,7 @@ CeladonGymAfterBattleText2: ; 48a95 (12:4a95)
db "@"
CeladonGymText3: ; 48a9a (12:4a9a)
- db $08 ; asm
+ TX_ASM
ld hl, CeladonGymTrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -253,7 +246,7 @@ CeladonGymAfterBattleText3: ; 48aae (12:4aae)
db "@"
CeladonGymText4: ; 48ab3 (12:4ab3)
- db $08 ; asm
+ TX_ASM
ld hl, CeladonGymTrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -271,7 +264,7 @@ CeladonGymAfterBattleText4: ; 48ac7 (12:4ac7)
db "@"
CeladonGymText5: ; 48acc (12:4acc)
- db $08 ; asm
+ TX_ASM
ld hl, CeladonGymTrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -289,7 +282,7 @@ CeladonGymAfterBattleText5: ; 48ae0 (12:4ae0)
db "@"
CeladonGymText6: ; 48ae5 (12:4ae5)
- db $08 ; asm
+ TX_ASM
ld hl, CeladonGymTrainerHeader5
call TalkToTrainer
jp TextScriptEnd
@@ -307,7 +300,7 @@ CeladonGymAfterBattleText6: ; 48af9 (12:4af9)
db "@"
CeladonGymText7: ; 48afe (12:4afe)
- db $08 ; asm
+ TX_ASM
ld hl, CeladonGymTrainerHeader6
call TalkToTrainer
jp TextScriptEnd
@@ -325,7 +318,7 @@ CeladonGymAfterBattleText7: ; 48b12 (12:4b12)
db "@"
CeladonGymText8: ; 48b17 (12:4b17)
- db $08 ; asm
+ TX_ASM
ld hl, CeladonGymTrainerHeader7
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/celadonmansion1.asm b/scripts/celadonmansion1.asm
index 14832dbe..857c2e42 100755
--- a/scripts/celadonmansion1.asm
+++ b/scripts/celadonmansion1.asm
@@ -14,7 +14,7 @@ CeladonMansion1_486a1: ; 486a1 (12:46a1)
CeladonMansion1Text1: ; 486a7 (12:46a7)
TX_FAR _CeladonMansion1Text1
- db $08 ; asm
+ TX_ASM
ld a, MEOWTH
jp CeladonMansion1_486a1
@@ -24,13 +24,13 @@ CeladonMansion1Text2: ; 486b1 (12:46b1)
CeladonMansion1Text3: ; 486b6 (12:46b6)
TX_FAR _CeladonMansion1Text3
- db $8
+ TX_ASM
ld a, CLEFAIRY
jp CeladonMansion1_486a1
CeladonMansion1Text4: ; 486c0 (12:46c0)
TX_FAR _CeladonMansion1Text4
- db $8
+ TX_ASM
ld a, NIDORAN_F
jp CeladonMansion1_486a1
diff --git a/scripts/celadonmansion3.asm b/scripts/celadonmansion3.asm
index 47190c92..11a8646d 100755
--- a/scripts/celadonmansion3.asm
+++ b/scripts/celadonmansion3.asm
@@ -24,13 +24,13 @@ WriterText: ; 487ad (12:47ad)
db "@"
DirectorText: ; 487b2 (12:47b2)
- db $08 ; asm
+ TX_ASM
; check pokédex
ld hl, wPokedexOwned
ld b, wPokedexOwnedEnd - wPokedexOwned
call CountSetBits
- ld a, [wd11e]
+ ld a, [wNumSetBits]
cp 150
jr nc, .CompletedDex
ld hl, .GameDesigner
@@ -48,7 +48,7 @@ DirectorText: ; 487b2 (12:47b2)
.CompletedDexText
TX_FAR _CompletedDexText
db $6
- db $8 ; asm
+ TX_ASM
callab DisplayDiploma
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
diff --git a/scripts/celadonmansion5.asm b/scripts/celadonmansion5.asm
index c18e36c6..6d979e04 100755
--- a/scripts/celadonmansion5.asm
+++ b/scripts/celadonmansion5.asm
@@ -10,12 +10,12 @@ CeladonMansion5Text1: ; 1dd41 (7:5d41)
db "@"
CeladonMansion5Text2: ; 1dd46 (7:5d46)
- db $08 ; asm
- ld bc,(EEVEE << 8) | 25
+ TX_ASM
+ lb bc, EEVEE, 25
call GivePokemon
- jr nc, .asm_24365 ; 0x1dd4d
+ jr nc, .asm_24365
ld a, HS_CELADON_MANSION_5_GIFT
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
-.asm_24365 ; 0x1dd59
+.asm_24365
jp TextScriptEnd
diff --git a/scripts/celadonmart3.asm b/scripts/celadonmart3.asm
index 8874a743..c6c6ecc7 100755
--- a/scripts/celadonmart3.asm
+++ b/scripts/celadonmart3.asm
@@ -21,25 +21,23 @@ CeladonMart3TextPointers: ; 48228 (12:4228)
dw CeladonMart3Text17
CeladonMart3Text1: ; 4824a (12:424a)
- db $08 ; asm
- ld a, [wd778]
- bit 7, a
- jr nz, .asm_a5463 ; 0x48250
+ TX_ASM
+ CheckEvent EVENT_GOT_TM18
+ jr nz, .asm_a5463
ld hl, TM18PreReceiveText
call PrintText
- ld bc, (TM_18 << 8) | 1
+ lb bc, TM_18, 1
call GiveItem
jr nc, .BagFull
- ld hl, wd778
- set 7, [hl]
+ SetEvent EVENT_GOT_TM18
ld hl, ReceivedTM18Text
- jr .asm_81359 ; 0x48268
+ jr .asm_81359
.BagFull
ld hl, TM18NoRoomText
- jr .asm_81359 ; 0x4826d
-.asm_a5463 ; 0x4826f
+ jr .asm_81359
+.asm_a5463
ld hl, TM18ExplanationText
-.asm_81359 ; 0x48272
+.asm_81359
call PrintText
jp TextScriptEnd
diff --git a/scripts/celadonmartelevator.asm b/scripts/celadonmartelevator.asm
index ff835765..6d901613 100755
--- a/scripts/celadonmartelevator.asm
+++ b/scripts/celadonmartelevator.asm
@@ -16,9 +16,9 @@ CeladonMartElevatorScript: ; 48600 (12:4600)
CeladonMartElevatorScript_4861c: ; 4861c (12:461c)
ld hl, wWarpEntries
- ld a, [wd73b]
+ ld a, [wWarpedFromWhichWarp]
ld b, a
- ld a, [wd73c]
+ ld a, [wWarpedFromWhichMap]
ld c, a
call CeladonMartElevatorScript_4862a
@@ -32,16 +32,20 @@ CeladonMartElevatorScript_4862a: ; 4862a (12:462a)
ret
CeladonMartElevatorScript_48631: ; 48631 (12:4631)
- ld hl, CeladonMartElavatorFloors ; $4643
+ ld hl, CeladonMartElavatorFloors
call LoadItemList
- ld hl, CeldaonMartElevatorWarpMaps ; $464a
- ld de, wcc5b
- ld bc, $000a
+ ld hl, CeldaonMartElevatorWarpMaps
+ ld de, wElevatorWarpMaps
+ ld bc, CeldaonMartElevatorWarpMapsEnd - CeldaonMartElevatorWarpMaps
jp CopyData
CeladonMartElavatorFloors: ; 48643 (12:4643)
db $05 ; num elements in list
- db $56, $57, $58, $59, $5A ; "1F", "2F", "3F", "4F, "5F"
+ db FLOOR_1F
+ db FLOOR_2F
+ db FLOOR_3F
+ db FLOOR_4F
+ db FLOOR_5F
db $FF ; terminator
CeldaonMartElevatorWarpMaps: ; 4864a (12:464a)
@@ -53,18 +57,17 @@ CeldaonMartElevatorWarpMaps: ; 4864a (12:464a)
db $02, CELADON_MART_3
db $02, CELADON_MART_4
db $02, CELADON_MART_5
+CeldaonMartElevatorWarpMapsEnd:
CeladonMartElevatorScript_48654: ; 48654 (12:4654)
- ld b, BANK(ShakeElevator)
- ld hl, ShakeElevator
- jp Bankswitch
+ jpba ShakeElevator
CeladonMartElevatorTextPointers: ; 4865c (12:465c)
dw CeladonMartElevatorText1
CeladonMartElevatorText1: ; 4865e (12:465e)
- db $08 ; asm
+ TX_ASM
call CeladonMartElevatorScript_48631
- ld hl, CeldaonMartElevatorWarpMaps ; $464a
- predef Func_1c9c6
+ ld hl, CeldaonMartElevatorWarpMaps
+ predef DisplayElevatorFloorMenu
jp TextScriptEnd
diff --git a/scripts/celadonmartroof.asm b/scripts/celadonmartroof.asm
index d4bb4319..439ab62e 100755
--- a/scripts/celadonmartroof.asm
+++ b/scripts/celadonmartroof.asm
@@ -1,34 +1,35 @@
CeladonMartRoofScript: ; 483d5 (12:43d5)
jp EnableAutoTextBoxDrawing
-CeladonMartRoofScript_483d8: ; 483d8 (12:43d8)
+CeladonMartRoofScript_GetDrinksInBag: ; 483d8 (12:43d8)
+; construct a list of all drinks in the player's bag
xor a
- ld [wcd37], a
- ld de, wcc5b
- ld hl, CeladonMartRoofDrinkList ; $4408
-.asm_483e2
+ ld [wFilteredBagItemsCount], a
+ ld de, wFilteredBagItems
+ ld hl, CeladonMartRoofDrinkList
+.loop
ld a, [hli]
and a
- jr z, .asm_48404
+ jr z, .done
push hl
push de
ld [wd11e], a
ld b, a
- predef IsItemInBag_
+ predef GetQuantityOfItemInBag
pop de
pop hl
ld a, b
and a
- jr z, .asm_483e2
+ jr z, .loop ; if the item isn't in the bag
ld a, [wd11e]
ld [de], a
inc de
push hl
- ld hl, wcd37
+ ld hl, wFilteredBagItemsCount
inc [hl]
pop hl
- jr .asm_483e2
-.asm_48404
+ jr .loop
+.done
ld a, $ff
ld [de], a
ret
@@ -39,105 +40,98 @@ CeladonMartRoofDrinkList: ; 48408 (12:4408)
db LEMONADE
db $00
-CeladonMartRoofScript_4840c: ; 4840c (12:440c)
+CeladonMartRoofScript_GiveDrinkToGirl: ; 4840c (12:440c)
ld hl, wd730
set 6, [hl]
- ld hl, CeladonMartRoofText_484ee ; $44ee
+ ld hl, CeladonMartRoofText_484ee
call PrintText
xor a
- ld [wCurrentMenuItem], a ; wCurrentMenuItem
- ld a, $3
- ld [wMenuWatchedKeys], a ; wMenuWatchedKeys
- ld a, [wcd37]
+ ld [wCurrentMenuItem], a
+ ld a, A_BUTTON | B_BUTTON
+ ld [wMenuWatchedKeys], a
+ ld a, [wFilteredBagItemsCount]
dec a
- ld [wMaxMenuItem], a ; wMaxMenuItem
- ld a, $2
- ld [wTopMenuItemY], a ; wTopMenuItemY
- ld a, $1
- ld [wTopMenuItemX], a ; wTopMenuItemX
- ld a, [wcd37]
+ ld [wMaxMenuItem], a
+ ld a, 2
+ ld [wTopMenuItemY], a
+ ld a, 1
+ ld [wTopMenuItemX], a
+ ld a, [wFilteredBagItemsCount]
dec a
- ld bc, $2
- ld hl, $3
+ ld bc, 2
+ ld hl, 3
call AddNTimes
dec l
ld b, l
- ld c, $c
- ld hl, wTileMap
+ ld c, 12
+ coord hl, 0, 0
call TextBoxBorder
call UpdateSprites
- call CeladonMartRoofScript_48532
+ call CeladonMartRoofScript_PrintDrinksInBag
ld hl, wd730
res 6, [hl]
call HandleMenuInput
- bit 1, a
+ bit 1, a ; pressed b
ret nz
- ld hl, wcc5b
- ld a, [wCurrentMenuItem] ; wCurrentMenuItem
- ld d, $0
+ ld hl, wFilteredBagItems
+ ld a, [wCurrentMenuItem]
+ ld d, 0
ld e, a
add hl, de
ld a, [hl]
- ld [$ffdb], a
+ ld [hItemToRemoveID], a
cp FRESH_WATER
- jr z, .asm_484b6
+ jr z, .gaveFreshWater
cp SODA_POP
- jr z, .asm_48492
- ld a, [wd778]
- bit 6, a
- jr nz, .asm_484e0
- ld hl, CeladonMartRoofText_48515 ; $4515
+ jr z, .gaveSodaPop
+; gave Lemonade
+ CheckEvent EVENT_GOT_TM49
+ jr nz, .alreadyGaveDrink
+ ld hl, CeladonMartRoofText_48515
call PrintText
call RemoveItemByIDBank12
- ld bc, (TM_49 << 8) | 1
+ lb bc, TM_49, 1
call GiveItem
- jr nc, .BagFull
+ jr nc, .bagFull
ld hl, ReceivedTM49Text
call PrintText
- ld hl, wd778
- set 6, [hl]
+ SetEvent EVENT_GOT_TM49
ret
-.asm_48492
- ld a, [wd778]
- bit 5, a
- jr nz, .asm_484e0
- ld hl, CeladonMartRoofText_48504 ; $4504
+.gaveSodaPop
+ CheckEvent EVENT_GOT_TM48
+ jr nz, .alreadyGaveDrink
+ ld hl, CeladonMartRoofText_48504
call PrintText
call RemoveItemByIDBank12
- ld bc, (TM_48 << 8) | 1
+ lb bc, TM_48, 1
call GiveItem
- jr nc, .BagFull
- ld hl, CeladonMartRoofText_4850a ; $450a
+ jr nc, .bagFull
+ ld hl, CeladonMartRoofText_4850a
call PrintText
- ld hl, wd778
- set 5, [hl]
+ SetEvent EVENT_GOT_TM48
ret
-.asm_484b6
- ld a, [wd778]
- bit 4, a
- jr nz, .asm_484e0
- ld hl, CeladonMartRoofText_484f3 ; $44f3
+.gaveFreshWater
+ CheckEvent EVENT_GOT_TM13
+ jr nz, .alreadyGaveDrink
+ ld hl, CeladonMartRoofText_484f3
call PrintText
call RemoveItemByIDBank12
- ld bc, (TM_13 << 8) | 1
+ lb bc, TM_13, 1
call GiveItem
- jr nc, .BagFull
- ld hl, CeladonMartRoofText_484f9 ; $44f9
+ jr nc, .bagFull
+ ld hl, CeladonMartRoofText_484f9
call PrintText
- ld hl, wd778
- set 4, [hl]
+ SetEvent EVENT_GOT_TM13
ret
-.BagFull
- ld hl, CeladonMartRoofText_48526 ; $4526
+.bagFull
+ ld hl, CeladonMartRoofText_48526
jp PrintText
-.asm_484e0
- ld hl, CeladonMartRoofText_4852c ; $452c
+.alreadyGaveDrink
+ ld hl, CeladonMartRoofText_4852c
jp PrintText
RemoveItemByIDBank12: ; 484e6 (12:44e6)
- ld b, BANK(RemoveItemByID)
- ld hl, RemoveItemByID
- jp Bankswitch
+ jpba RemoveItemByID
CeladonMartRoofText_484ee: ; 484ee (12:44ee)
TX_FAR _CeladonMartRoofText_484ee
@@ -189,27 +183,27 @@ CeladonMartRoofText_4852c: ; 4852c (12:452c)
db $0d
db "@"
-CeladonMartRoofScript_48532: ; 48532 (12:4532)
- ld hl, wcc5b
+CeladonMartRoofScript_PrintDrinksInBag: ; 48532 (12:4532)
+ ld hl, wFilteredBagItems
xor a
- ld [$ffdb], a
-.asm_48538
+ ld [hItemCounter], a
+.loop
ld a, [hli]
cp $ff
ret z
push hl
ld [wd11e], a
call GetItemName
- hlCoord 2, 2
- ld a, [$ffdb]
- ld bc, $28
+ coord hl, 2, 2
+ ld a, [hItemCounter]
+ ld bc, SCREEN_WIDTH * 2
call AddNTimes
ld de, wcd6d
call PlaceString
- ld hl, $ffdb
+ ld hl, hItemCounter
inc [hl]
pop hl
- jr .asm_48538
+ jr .loop
CeladonMartRoofTextPointers: ; 4855b (12:455b)
dw CeladonMartRoofText1
@@ -224,25 +218,25 @@ CeladonMartRoofText1: ; 48567 (12:4567)
db "@"
CeladonMartRoofText2: ; 4856c (12:456c)
- db $08 ; asm
- call CeladonMartRoofScript_483d8
- ld a, [wcd37]
+ TX_ASM
+ call CeladonMartRoofScript_GetDrinksInBag
+ ld a, [wFilteredBagItemsCount]
and a
- jr z, .asm_914b9 ; 0x48574
- ld a, $1
+ jr z, .noDrinksInBag
+ ld a, 1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, CeladonMartRoofText4
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr nz, .asm_05aa4 ; 0x48588
- call CeladonMartRoofScript_4840c
- jr .asm_05aa4 ; 0x4858d
-.asm_914b9 ; 0x4858f
+ jr nz, .done
+ call CeladonMartRoofScript_GiveDrinkToGirl
+ jr .done
+.noDrinksInBag
ld hl, CeladonMartRoofText3
call PrintText
-.asm_05aa4 ; 0x48595
+.done
jp TextScriptEnd
CeladonMartRoofText3: ; 48598 (12:4598)
diff --git a/scripts/ceruleancity.asm b/scripts/ceruleancity.asm
index bbddad79..e0444a1c 100755
--- a/scripts/ceruleancity.asm
+++ b/scripts/ceruleancity.asm
@@ -9,7 +9,7 @@ CeruleanCityScript_1948c: ; 1948c (6:548c)
ld [wJoyIgnore], a
ld [W_CERULEANCITYCURSCRIPT], a
ld a, HS_CERULEAN_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef_jump HideObject
CeruleanCityScriptPointers: ; 1949d (6:549d)
@@ -25,10 +25,9 @@ CeruleanCityScript4: ; 194a7 (6:54a7)
jp z, CeruleanCityScript_1948c
ld a, $f0
ld [wJoyIgnore], a
- ld hl, wd75b
- set 7, [hl]
+ SetEvent EVENT_BEAT_CERULEAN_ROCKET_THIEF
ld a, $2
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [wJoyIgnore], a
@@ -36,39 +35,37 @@ CeruleanCityScript4: ; 194a7 (6:54a7)
ret
CeruleanCityScript0: ; 194c8 (6:54c8)
- ld a, [wd75b]
- bit 7, a
- jr nz, .asm_194f7 ; 0x194cd $28
+ CheckEvent EVENT_BEAT_CERULEAN_ROCKET_THIEF
+ jr nz, .asm_194f7
ld hl, CeruleanCityCoords1
call ArePlayerCoordsInArray
- jr nc, .asm_194f7 ; 0x194d5 $20
- ld a, [wWhichTrade]
+ jr nc, .asm_194f7
+ ld a, [wCoordIndex]
cp $1
- ld a, $8
- ld b, $0
- jr nz, .asm_194e6 ; 0x194e0 $4
- ld a, $4
- ld b, $4
+ ld a, PLAYER_DIR_UP
+ ld b, SPRITE_FACING_DOWN
+ jr nz, .asm_194e6
+ ld a, PLAYER_DIR_DOWN
+ ld b, SPRITE_FACING_UP
.asm_194e6
- ld [wd528], a
+ ld [wPlayerMovingDirection], a
ld a, b
- ld [wSpriteStateData1 + $29], a
+ ld [wSpriteStateData1 + 2 * $10 + $9], a
call Delay3
ld a, $2
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
.asm_194f7
- ld a, [wd75a]
- bit 0, a
+ CheckEvent EVENT_BEAT_CERULEAN_RIVAL
ret nz
ld hl, CeruleanCityCoords2
call ArePlayerCoordsInArray
ret nc
ld a, [wWalkBikeSurfState]
and a
- jr z, .asm_19512 ; 0x19508 $8
+ jr z, .asm_19512
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
.asm_19512
ld c, BANK(Music_MeetRival)
@@ -80,20 +77,20 @@ CeruleanCityScript0: ; 194c8 (6:54c8)
ld [wJoyIgnore], a
ld a, [W_XCOORD]
cp $14
- jr z, .asm_19535 ; 0x19526 $d
+ jr z, .asm_19535
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
ld a, $5
- ld [$ff8b], a
+ ld [H_SPRITEDATAOFFSET], a
call GetPointerWithinSpriteStateData2
ld [hl], $19
.asm_19535
ld a, HS_CERULEAN_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
ld de, CeruleanCityMovement1
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $1
ld [W_CERULEANCITYCURSCRIPT], a
@@ -110,13 +107,16 @@ CeruleanCityCoords2: ; 19554 (6:5554)
db $ff
CeruleanCityMovement1: ; 19559 (6:5559)
- db $00,$00,$00,$FF
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
CeruleanCityScript_1955d: ; 1955d (6:555d)
ld a,1
- ld [$ff8c],a
- xor a
- ld [$ff8d],a
+ ld [H_SPRITEINDEX],a
+ xor a ; SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection],a
jp SetSpriteFacingDirectionAndDelay ; face object
CeruleanCityScript1: ; 19567 (6:5567)
@@ -126,7 +126,7 @@ CeruleanCityScript1: ; 19567 (6:5567)
xor a
ld [wJoyIgnore], a
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld hl, wd72d
set 6, [hl]
@@ -134,18 +134,18 @@ CeruleanCityScript1: ; 19567 (6:5567)
ld hl, CeruleanCityText_1966d
ld de, CeruleanCityText_19672
call SaveEndBattleTextPointers
- ld a, SONY1 + $c8
+ ld a, OPP_SONY1
ld [W_CUROPPONENT], a
; select which team to use during the encounter
ld a, [W_RIVALSTARTER]
cp STARTER2
- jr nz, .NotSquirtle ; 0x19592 $4
+ jr nz, .NotSquirtle
ld a, $7
jr .done
.NotSquirtle
cp STARTER3
- jr nz, .Charmander ; 0x1959a $4
+ jr nz, .Charmander
ld a, $8
jr .done
.Charmander
@@ -167,45 +167,58 @@ CeruleanCityScript2: ; 195b1 (6:55b1)
call CeruleanCityScript_1955d
ld a, $f0
ld [wJoyIgnore], a
- ld hl, wd75a
- set 0, [hl]
+ SetEvent EVENT_BEAT_CERULEAN_RIVAL
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
callba Music_RivalAlternateStart
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
ld a, [W_XCOORD]
cp $14
- jr nz, .asm_195f0 ; 0x195e9 $5
+ jr nz, .asm_195f0
ld de, CeruleanCityMovement4
- jr .asm_195f3 ; 0x195ee $3
+ jr .asm_195f3
.asm_195f0
ld de, CeruleanCityMovement3
.asm_195f3
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $3
ld [W_CERULEANCITYCURSCRIPT], a
ret
CeruleanCityMovement3: ; 19600 (6:5600)
- db $80,$00,$00,$00,$00,$00,$00,$FF
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
CeruleanCityMovement4: ; 19608 (6:5608)
- db $c0,$00,$00,$00,$00,$00,$00,$FF
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
CeruleanCityScript3: ; 19610 (6:5610)
ld a, [wd730]
bit 0, a
ret nz
ld a, HS_CERULEAN_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
xor a
ld [wJoyIgnore], a
@@ -234,19 +247,18 @@ CeruleanCityTextPointers: ; 1962d (6:562d)
dw CeruleanCityText17
CeruleanCityText1: ; 1964f (6:564f)
- db $08 ; asm
- ld a, [wd75a] ; rival battle flag
- bit 0, a
+ TX_ASM
+ CheckEvent EVENT_BEAT_CERULEAN_RIVAL
; do pre-battle text
jr z, .PreBattleText
; or talk about bill
ld hl, CeruleanCityText_19677
call PrintText
- jr .end ; 0x1965d
-.PreBattleText ; 0x1965f
+ jr .end
+.PreBattleText
ld hl, CeruleanCityText_19668
call PrintText
-.end ; 0x19665
+.end
jp TextScriptEnd
CeruleanCityText_19668: ; 19668 (6:5668)
@@ -266,10 +278,9 @@ CeruleanCityText_19677: ; 19677 (6:5677)
db "@"
CeruleanCityText2: ; 1967c (6:567c)
- db $8
- ld a, [wd75b]
- bit 7, a
- jr nz, .asm_4ca20 ; 0x19682 $29
+ TX_ASM
+ CheckEvent EVENT_BEAT_CERULEAN_ROCKET_THIEF
+ jr nz, .asm_4ca20
ld hl, CeruleanCityText_196d9
call PrintText
ld hl, wd72d
@@ -278,17 +289,17 @@ CeruleanCityText2: ; 1967c (6:567c)
ld hl, CeruleanCityText_196ee
ld de, CeruleanCityText_196ee
call SaveEndBattleTextPointers
- ld a, [$ff8c]
+ ld a, [hSpriteIndexOrTextID]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
ld a, $4
ld [W_CERULEANCITYCURSCRIPT], a
jp TextScriptEnd
-.asm_4ca20 ; 0x196ad
+.asm_4ca20
ld hl, CeruleanCityText_196f3
call PrintText
- ld bc, (TM_28 << 8) + 1
+ lb bc, TM_28, 1
call GiveItem
jr c, .Success
ld hl, TM28NoRoomText
@@ -299,7 +310,7 @@ CeruleanCityText2: ; 1967c (6:567c)
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, ReceivedTM28Text
call PrintText
- callba Func_74872
+ callba CeruleanHideRocket
.Done
jp TextScriptEnd
@@ -343,23 +354,23 @@ CeruleanCityText6: ; 19707 (6:5707)
db "@"
CeruleanCityText7: ; 1970c (6:570c)
- db $08 ; asm
- ldh a, [$d3]
+ TX_ASM
+ ld a, [hRandomAdd]
cp $b4
- jr c, .asm_e9fc9 ; 0x19711
+ jr c, .asm_e9fc9
ld hl, CeruleanCityText_19730
call PrintText
- jr .asm_d486e ; 0x19719
-.asm_e9fc9 ; 0x1971b
+ jr .asm_d486e
+.asm_e9fc9
cp $64
- jr c, .asm_df99b ; 0x1971d
+ jr c, .asm_df99b
ld hl, CeruleanCityText_19735
call PrintText
- jr .asm_d486e ; 0x19725
-.asm_df99b ; 0x19727
+ jr .asm_d486e
+.asm_df99b
ld hl, CeruleanCityText_1973a
call PrintText
-.asm_d486e ; 0x1972d
+.asm_d486e
jp TextScriptEnd
CeruleanCityText_19730: ; 19730 (6:5730)
@@ -375,29 +386,29 @@ CeruleanCityText_1973a: ; 1973a (6:573a)
db "@"
CeruleanCityText8: ; 1973f (6:573f)
- db $08 ; asm
- ldh a, [$d3]
+ TX_ASM
+ ld a, [hRandomAdd]
cp $b4
- jr c, .asm_e28da ; 0x19744
+ jr c, .asm_e28da
ld hl, CeruleanCityText_1976f
call PrintText
- jr .asm_f2f38 ; 0x1974c
-.asm_e28da ; 0x1974e
+ jr .asm_f2f38
+.asm_e28da
cp $78
- jr c, .asm_15d08 ; 0x19750
+ jr c, .asm_15d08
ld hl, CeruleanCityText_19774
call PrintText
- jr .asm_f2f38 ; 0x19758
-.asm_15d08 ; 0x1975a
+ jr .asm_f2f38
+.asm_15d08
cp $3c
- jr c, .asm_d7fea ; 0x1975c
+ jr c, .asm_d7fea
ld hl, CeruleanCityText_19779
call PrintText
- jr .asm_f2f38 ; 0x19764
-.asm_d7fea ; 0x19766
+ jr .asm_f2f38
+.asm_d7fea
ld hl, CeruleanCityText_1977e
call PrintText
-.asm_f2f38 ; 0x1976c
+.asm_f2f38
jp TextScriptEnd
CeruleanCityText_1976f: ; 1976f (6:576f)
diff --git a/scripts/ceruleancity2.asm b/scripts/ceruleancity2.asm
index 72ee4a86..3dafb3f8 100755
--- a/scripts/ceruleancity2.asm
+++ b/scripts/ceruleancity2.asm
@@ -1,16 +1,16 @@
-Func_74872: ; 74872 (1d:4872)
+CeruleanHideRocket: ; 74872 (1d:4872)
; code similar to this appears in a lot of banks; this particular
; one is called after you beat the Rocket that gives you TM28 DIG.
; the screen then fades out, he disappears, and fades back in
call GBFadeOutToBlack
ld a, HS_CERULEAN_GUARD_1
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
ld a, HS_CERULEAN_GUARD_2
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_CERULEAN_ROCKET
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
call GBFadeInFromBlack
ret
diff --git a/scripts/ceruleangym.asm b/scripts/ceruleangym.asm
index f643e264..ca1c2c7d 100755
--- a/scripts/ceruleangym.asm
+++ b/scripts/ceruleangym.asm
@@ -12,8 +12,8 @@ CeruleanGymScript: ; 5c6b3 (17:46b3)
ret
CeruleanGymScript_5c6d0: ; 5c6d0 (17:46d0)
- ld hl, Gym2CityName ; $46d9
- ld de, Gym2LeaderName ; $46e7
+ ld hl, Gym2CityName
+ ld de, Gym2LeaderName
jp LoadGymLeaderAndCityName
Gym2CityName: ; 5c6d9 (17:46d9)
@@ -36,7 +36,7 @@ CeruleanGymScriptPointers: ; 5c6f8 (17:46f8)
dw CeruleanGymScript3
CeruleanGymScript3: ; 5c700 (17:4700)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, CeruleanGymScript_5c6ed
ld a, $f0
@@ -44,33 +44,29 @@ CeruleanGymScript3: ; 5c700 (17:4700)
CeruleanGymScript_5c70d: ; 5c70d (17:470d)
ld a, $5
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd75e
- set 7, [hl]
- ld bc, (TM_11 << 8) | 1
+ SetEvent EVENT_BEAT_MISTY
+ lb bc, TM_11, 1
call GiveItem
jr nc, .BagFull
ld a, $6
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd75e
- set 6, [hl]
+ SetEvent EVENT_GOT_TM11
jr .asm_5c736
.BagFull
ld a, $7
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
.asm_5c736
ld hl, W_OBTAINEDBADGES
set 1, [hl]
- ld hl, wd72a
+ ld hl, wBeatGymFlags
set 1, [hl]
; deactivate gym trainers
- ld hl, wd75e
- set 2, [hl]
- set 3, [hl]
+ SetEvents EVENT_BEAT_CERULEAN_GYM_TRAINER_0, EVENT_BEAT_CERULEAN_GYM_TRAINER_1
jp CeruleanGymScript_5c6ed
@@ -85,40 +81,39 @@ CeruleanGymTextPointers: ; 5c74a (17:474a)
CeruleanGymTrainerHeaders: ; 5c758 (17:4758)
CeruleanGymTrainerHeader0: ; 5c758 (17:4758)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_CERULEAN_GYM_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd75e ; flag's byte
- dw CeruleanGymBattleText1 ; 0x47e9 TextBeforeBattle
- dw CeruleanGymAfterBattleText1 ; 0x47f3 TextAfterBattle
- dw CeruleanGymEndBattleText1 ; 0x47ee TextEndBattle
- dw CeruleanGymEndBattleText1 ; 0x47ee TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_CERULEAN_GYM_TRAINER_0
+ dw CeruleanGymBattleText1 ; TextBeforeBattle
+ dw CeruleanGymAfterBattleText1 ; TextAfterBattle
+ dw CeruleanGymEndBattleText1 ; TextEndBattle
+ dw CeruleanGymEndBattleText1 ; TextEndBattle
CeruleanGymTrainerHeader1: ; 5c764 (17:4764)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_CERULEAN_GYM_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd75e ; flag's byte
- dw CeruleanGymBattleText2 ; 0x4802 TextBeforeBattle
- dw CeruleanGymAfterBattleText2 ; 0x480c TextAfterBattle
- dw CeruleanGymEndBattleText2 ; 0x4807 TextEndBattle
- dw CeruleanGymEndBattleText2 ; 0x4807 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_CERULEAN_GYM_TRAINER_1
+ dw CeruleanGymBattleText2 ; TextBeforeBattle
+ dw CeruleanGymAfterBattleText2 ; TextAfterBattle
+ dw CeruleanGymEndBattleText2 ; TextEndBattle
+ dw CeruleanGymEndBattleText2 ; TextEndBattle
db $ff
CeruleanGymText1: ; 5c771 (17:4771)
- db $08 ; asm
- ld a, [wd75e]
- bit 7, a
- jr z, .asm_10854 ; 0x5c777
- bit 6, a
- jr nz, .asm_37a1b ; 0x5c77b
+ TX_ASM
+ CheckEvent EVENT_BEAT_MISTY
+ jr z, .asm_5c78d
+ CheckEventReuseA EVENT_GOT_TM11
+ jr nz, .asm_5c785
call z, CeruleanGymScript_5c70d
call DisableWaitingAfterTextDisplay
- jr .asm_95b04 ; 0x5c783
-.asm_37a1b ; 0x5c785
+ jr .asm_5c7bb
+.asm_5c785
ld hl, CeruleanGymText_5c7c3
call PrintText
- jr .asm_95b04 ; 0x5c78b
-.asm_10854 ; 0x5c78d
+ jr .asm_5c7bb
+.asm_5c78d
ld hl, CeruleanGymText_5c7be
call PrintText
ld hl, wd72d
@@ -137,7 +132,7 @@ CeruleanGymText1: ; 5c771 (17:4771)
ld [hJoyHeld], a
ld a, $3
ld [W_CERULEANGYMCURSCRIPT], a
-.asm_95b04 ; 0x5c7bb
+.asm_5c7bb
jp TextScriptEnd
CeruleanGymText_5c7be: ; 5c7be (17:47be)
@@ -166,7 +161,7 @@ CeruleanGymText_5c7d8: ; 5c7d8 (17:47d8)
db $11, $6, "@"
CeruleanGymText2: ; 5c7df (17:47df)
- db $08 ; asm
+ TX_ASM
ld hl, CeruleanGymTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -184,7 +179,7 @@ CeruleanGymAfterBattleText1: ; 5c7f3 (17:47f3)
db "@"
CeruleanGymText3: ; 5c7f8 (17:47f8)
- db $08 ; asm
+ TX_ASM
ld hl, CeruleanGymTrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -202,17 +197,16 @@ CeruleanGymAfterBattleText2: ; 5c80c (17:480c)
db "@"
CeruleanGymText4: ; 5c811 (17:4811)
- db $08 ; asm
- ld a, [wd75e]
- bit 7, a
- jr nz, .asm_f80ce ; 0x5c817
+ TX_ASM
+ CheckEvent EVENT_BEAT_MISTY
+ jr nz, .asm_5c821
ld hl, CeruleanGymText_5c82a
call PrintText
- jr .asm_18a31 ; 0x5c81f
-.asm_f80ce ; 0x5c821
+ jr .asm_5c827
+.asm_5c821
ld hl, CeruleanGymText_5c82f
call PrintText
-.asm_18a31 ; 0x5c827
+.asm_5c827
jp TextScriptEnd
CeruleanGymText_5c82a: ; 5c82a (17:482a)
diff --git a/scripts/ceruleanhouse1.asm b/scripts/ceruleanhouse1.asm
index 4b6a240a..e703d830 100755
--- a/scripts/ceruleanhouse1.asm
+++ b/scripts/ceruleanhouse1.asm
@@ -10,7 +10,7 @@ CeruleanHouse1Text1: ; 1d6fd (7:56fd)
db "@"
CeruleanHouse1Text2: ; 1d702 (7:5702)
- db $08 ; asm
+ TX_ASM
ld a, $6
ld [wWhichTrade], a
predef DoInGameTradeDialogue
diff --git a/scripts/ceruleanhouse2.asm b/scripts/ceruleanhouse2.asm
index a40d9224..278f3bcf 100755
--- a/scripts/ceruleanhouse2.asm
+++ b/scripts/ceruleanhouse2.asm
@@ -9,7 +9,7 @@ CeruleanHouse2TextPointers: ; 74e13 (1d:4e13)
dw CeruleanHouse2Text1
CeruleanHouse2Text1: ; 74e15 (1d:4e15)
- db $8
+ TX_ASM
ld hl, CeruleanHouse2Text_74e77
call PrintText
xor a
@@ -20,18 +20,18 @@ CeruleanHouse2Text1: ; 74e15 (1d:4e15)
call PrintText
ld hl, BadgeItemList
call LoadItemList
- ld hl, wStringBuffer2 + 11
+ ld hl, wItemList
ld a, l
- ld [wList], a
+ ld [wListPointer], a
ld a, h
- ld [wList + 1], a
+ ld [wListPointer + 1], a
xor a
- ld [wcf93], a
+ ld [wPrintItemPrices], a
ld [wMenuItemToSwap], a
ld a, SPECIALLISTMENU
ld [wListMenuID], a
call DisplayListMenuID
- jr c, .asm_74e60 ; 0x74e49 $15
+ jr c, .asm_74e60
ld hl, TextPointers_74e86
ld a, [wcf91]
sub $15
@@ -43,7 +43,7 @@ CeruleanHouse2Text1: ; 74e15 (1d:4e15)
ld h, [hl]
ld l, a
call PrintText
- jr .asm_74e23 ; 0x74e5e $c3
+ jr .asm_74e23
.asm_74e60
xor a
ld [wListScrollOffset], a
diff --git a/scripts/ceruleanhousetrashed.asm b/scripts/ceruleanhousetrashed.asm
index ee60cda7..a1f58684 100755
--- a/scripts/ceruleanhousetrashed.asm
+++ b/scripts/ceruleanhousetrashed.asm
@@ -8,18 +8,18 @@ CeruleanHouseTrashedTextPointers: ; 1d689 (7:5689)
dw CeruleanHouseTrashedText3
CeruleanHouseTrashedText1: ; 1d68f (7:568f)
- db $08 ; asm
+ TX_ASM
ld b, $e4
- predef IsItemInBag_
+ predef GetQuantityOfItemInBag
and b
- jr z, .asm_f8734 ; 0x1d698
+ jr z, .asm_f8734
ld hl, CeruleanHouseTrashedText_1d6b0
call PrintText
- jr .asm_8dfe9 ; 0x1d6a0
-.asm_f8734 ; 0x1d6a2
+ jr .asm_8dfe9
+.asm_f8734
ld hl, CeruleanHouseTrashedText_1d6ab
call PrintText
-.asm_8dfe9 ; 0x1d6a8
+.asm_8dfe9
jp TextScriptEnd
CeruleanHouseTrashedText_1d6ab: ; 1d6ab (7:56ab)
diff --git a/scripts/cinnabargym.asm b/scripts/cinnabargym.asm
index 48133c52..5bbb94a9 100755
--- a/scripts/cinnabargym.asm
+++ b/scripts/cinnabargym.asm
@@ -14,9 +14,8 @@ CinnabarGymScript_75759: ; 75759 (1d:5759)
pop hl
bit 5, [hl]
res 5, [hl]
- call nz, Func_3ead
- ld hl, wd79b
- res 7, [hl]
+ call nz, UpdateCinnabarGymGateTileBlocks
+ ResetEvent EVENT_2A7
ret
CinnabarGymScript_75772: ; 75772 (1d:5772)
ld hl, Gym7CityName
@@ -33,11 +32,11 @@ CinnabarGymScript_75792: ; 75792 (1d:5792)
ld [wJoyIgnore], a
ld [W_CINNABARGYMCURSCRIPT], a
ld [W_CURMAPSCRIPT], a
- ld [wda38], a
+ ld [wOpponentAfterWrongAnswer], a
ret
CinnabarGymScript_757a0: ; 757a0 (1d:57a0)
- ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c
+ ld a, [hSpriteIndexOrTextID]
ld [wTrainerHeaderFlagBit], a
ret
@@ -48,20 +47,20 @@ CinnabarGymScriptPointers: ; 757a6 (1d:57a6)
dw CinnabarGymScript3
CinnabarGymScript0: ; 757ae (1d:57ae)
- ld a, [wda38]
+ ld a, [wOpponentAfterWrongAnswer]
and a
ret z
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
cp $4
- jr nz, .asm_757c3 ; 0x757b7 $a
- ld a, $4
- ld [wd528], a
+ jr nz, .asm_757c3
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
ld de, MovementData_757d7
- jr .asm_757cb ; 0x757c1 $8
+ jr .asm_757cb
.asm_757c3
ld de, MovementData_757da
- ld a, $1
- ld [wd528], a
+ ld a, PLAYER_DIR_RIGHT
+ ld [wPlayerMovingDirection], a
.asm_757cb
call MoveSprite
ld a, $1
@@ -70,10 +69,13 @@ CinnabarGymScript0: ; 757ae (1d:57ae)
ret
MovementData_757d7: ; 757d7 (1d:57d7)
- db $80,$40,$FF
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_UP
+ db $FF
MovementData_757da: ; 757da (1d:57da)
- db $80,$FF
+ db NPC_MOVEMENT_LEFT
+ db $FF
CinnabarGymScript1: ; 757dc (1d:57dc)
ld a, [wd730]
@@ -81,12 +83,12 @@ CinnabarGymScript1: ; 757dc (1d:57dc)
ret nz
xor a
ld [wJoyIgnore], a
- ld a, [wda38]
+ ld a, [wOpponentAfterWrongAnswer]
ld [wTrainerHeaderFlagBit], a
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
-CinnabarGymScript_757f1: ; 757f1 (1d:57f1)
+CinnabarGymFlagAction: ; 757f1 (1d:57f1)
predef_jump FlagActionPredef
CinnabarGymScript2: ; 757f6 (1d:57f6)
@@ -95,34 +97,37 @@ CinnabarGymScript2: ; 757f6 (1d:57f6)
jp z, CinnabarGymScript_75792
ld a, [wTrainerHeaderFlagBit]
ld [$ffdb], a
+ AdjustEventBit EVENT_BEAT_CINNABAR_GYM_TRAINER_0, 2
ld c, a
- ld b, $2
- ld hl, wd79a
- call CinnabarGymScript_757f1
+ ld b, FLAG_TEST
+ EventFlagAddress hl, EVENT_BEAT_CINNABAR_GYM_TRAINER_0
+ call CinnabarGymFlagAction
ld a, c
and a
- jr nz, .asm_7581b ; 0x7580e $b
+ jr nz, .asm_7581b
call WaitForSoundToFinish
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ ld a, SFX_GO_INSIDE
call PlaySound
call WaitForSoundToFinish
.asm_7581b
ld a, [wTrainerHeaderFlagBit]
ld [$ffdb], a
+ AdjustEventBit EVENT_BEAT_CINNABAR_GYM_TRAINER_0, 2
ld c, a
- ld b, $1
- ld hl, wd79a
- call CinnabarGymScript_757f1
+ ld b, FLAG_SET
+ EventFlagAddress hl, EVENT_BEAT_CINNABAR_GYM_TRAINER_0
+ call CinnabarGymFlagAction
ld a, [wTrainerHeaderFlagBit]
sub $2
+ AdjustEventBit EVENT_CINNABAR_GYM_GATE0_UNLOCKED, 0
ld c, a
- ld b, $1
- ld hl, wd79c
- call CinnabarGymScript_757f1
- call Func_3ead
+ ld b, FLAG_SET
+ EventFlagAddress hl, EVENT_CINNABAR_GYM_GATE0_UNLOCKED
+ call CinnabarGymFlagAction
+ call UpdateCinnabarGymGateTileBlocks
xor a
ld [wJoyIgnore], a
- ld [wda38], a
+ ld [wOpponentAfterWrongAnswer], a
ld a, $0
ld [W_CINNABARGYMCURSCRIPT], a
ld [W_CURMAPSCRIPT], a
@@ -136,35 +141,29 @@ CinnabarGymScript3: ; 7584a (1d:584a)
ld [wJoyIgnore], a
CinnabarGymScript3_75857: ; 75857 (1d:5857)
ld a, $a
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd79a
- set 1, [hl]
- ld bc, (TM_38 << 8) | 1
+ SetEvent EVENT_BEAT_BLAINE
+ lb bc, TM_38, 1
call GiveItem
jr nc, .BagFull
ld a, $b
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd79a
- set 0, [hl]
- jr .asm_75880 ; 0x75877 $7
+ SetEvent EVENT_GOT_TM38
+ jr .asm_75880
.BagFull
ld a, $c
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
.asm_75880
ld hl, W_OBTAINEDBADGES
set 6, [hl]
- ld hl, wd72a
+ ld hl, wBeatGymFlags
set 6, [hl]
; deactivate gym trainers
- ld a, [wd79a]
- or %11111100
- ld [wd79a], a
- ld hl, wd79b
- set 0, [hl]
+ SetEventRange EVENT_BEAT_CINNABAR_GYM_TRAINER_0, EVENT_BEAT_CINNABAR_GYM_TRAINER_6
ld hl, wd126
set 5, [hl]
@@ -186,7 +185,7 @@ CinnabarGymTextPointers: ; 7589f (1d:589f)
dw TM38NoRoomText
CinnabarGymScript_758b7: ; 758b7 (1d:58b7)
- ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c
+ ld a, [hSpriteIndexOrTextID]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
@@ -206,20 +205,19 @@ CinnabarGymScript_758b7: ; 758b7 (1d:58b7)
jp TextScriptEnd
CinnabarGymText1: ; 758df (1d:58df)
- db $8
- ld a, [wd79a]
- bit 1, a
- jr z, .asm_d9332 ; 0x758e5 $16
- bit 0, a
- jr nz, .asm_3012f ; 0x758e9 $9
+ TX_ASM
+ CheckEvent EVENT_BEAT_BLAINE
+ jr z, .asm_d9332
+ CheckEventReuseA EVENT_GOT_TM38
+ jr nz, .asm_3012f
call z, CinnabarGymScript3_75857
call DisableWaitingAfterTextDisplay
jp TextScriptEnd
-.asm_3012f ; 0x758f4
+.asm_3012f
ld hl, BlaineFireBlastText
call PrintText
jp TextScriptEnd
-.asm_d9332 ; 0x758fd
+.asm_d9332
ld hl, BlaineBattleText
call PrintText
ld hl, BlaineEndBattleText
@@ -258,18 +256,17 @@ TM38NoRoomText: ; 75934 (1d:5934)
db "@"
CinnabarGymText2: ; 75939 (1d:5939)
- db $08 ; asm
+ TX_ASM
call CinnabarGymScript_757a0
- ld a, [wd79a]
- bit 2, a
- jr nz, .asm_46bb4 ; 0x75942
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_0
+ jr nz, .asm_46bb4
ld hl, CinnabarGymText_7595f
call PrintText
ld hl, CinnabarGymText_75964
- ld de, CinnabarGymText_75964 ; $5964 XXX
+ ld de, CinnabarGymText_75964
call SaveEndBattleTextPointers
jp CinnabarGymScript_758b7
-.asm_46bb4 ; 0x75956
+.asm_46bb4
ld hl, CinnabarGymText_75969
call PrintText
jp TextScriptEnd
@@ -287,18 +284,17 @@ CinnabarGymText_75969: ; 75969 (1d:5969)
db "@"
CinnabarGymText3: ; 7596e (1d:596e)
- db $08 ; asm
+ TX_ASM
call CinnabarGymScript_757a0
- ld a, [wd79a]
- bit 3, a
- jr nz, .asm_4b406 ; 0x75977
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_1
+ jr nz, .asm_4b406
ld hl, CinnabarGymText_75994
call PrintText
ld hl, CinnabarGymText_75999
- ld de, CinnabarGymText_75999 ; $5999 XXX
+ ld de, CinnabarGymText_75999
call SaveEndBattleTextPointers
jp CinnabarGymScript_758b7
-.asm_4b406 ; 0x7598b
+.asm_4b406
ld hl, CinnabarGymText_7599e
call PrintText
jp TextScriptEnd
@@ -316,18 +312,17 @@ CinnabarGymText_7599e: ; 7599e (1d:599e)
db "@"
CinnabarGymText4: ; 759a3 (1d:59a3)
- db $08 ; asm
+ TX_ASM
call CinnabarGymScript_757a0
- ld a, [wd79a]
- bit 4, a
- jr nz, .asm_c0673 ; 0x759ac
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_2
+ jr nz, .asm_c0673
ld hl, CinnabarGymText_759c9
call PrintText
ld hl, CinnabarGymText_759ce
- ld de, CinnabarGymText_759ce ; $59ce XXX
+ ld de, CinnabarGymText_759ce
call SaveEndBattleTextPointers
jp CinnabarGymScript_758b7
-.asm_c0673 ; 0x759c0
+.asm_c0673
ld hl, CinnabarGymText_759d3
call PrintText
jp TextScriptEnd
@@ -345,18 +340,17 @@ CinnabarGymText_759d3: ; 759d3 (1d:59d3)
db "@"
CinnabarGymText5: ; 759d8 (1d:59d8)
- db $08 ; asm
+ TX_ASM
call CinnabarGymScript_757a0
- ld a, [wd79a]
- bit 5, a
- jr nz, .asm_5cfd7 ; 0x759e1
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_3
+ jr nz, .asm_5cfd7
ld hl, CinnabarGymText_759fe
call PrintText
ld hl, CinnabarGymText_75a03
- ld de, CinnabarGymText_75a03 ; $5a03 XXX
+ ld de, CinnabarGymText_75a03
call SaveEndBattleTextPointers
jp CinnabarGymScript_758b7
-.asm_5cfd7 ; 0x759f5
+.asm_5cfd7
ld hl, CinnabarGymText_75a08
call PrintText
jp TextScriptEnd
@@ -374,18 +368,17 @@ CinnabarGymText_75a08: ; 75a08 (1d:5a08)
db "@"
CinnabarGymText6: ; 75a0d (1d:5a0d)
- db $08 ; asm
+ TX_ASM
call CinnabarGymScript_757a0
- ld a, [wd79a]
- bit 6, a
- jr nz, .asm_776b4 ; 0x75a16
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_4
+ jr nz, .asm_776b4
ld hl, CinnabarGymText_75a33
call PrintText
ld hl, CinnabarGymText_75a38
ld de, CinnabarGymText_75a38
call SaveEndBattleTextPointers
jp CinnabarGymScript_758b7
-.asm_776b4 ; 0x75a2a
+.asm_776b4
ld hl, CinnabarGymText_75a3d
call PrintText
jp TextScriptEnd
@@ -403,18 +396,17 @@ CinnabarGymText_75a3d: ; 75a3d (1d:5a3d)
db "@"
CinnabarGymText7: ; 75a42 (1d:5a42)
- db $08 ; asm
+ TX_ASM
call CinnabarGymScript_757a0
- ld a, [wd79a]
- bit 7, a
- jr nz, .asm_2f755 ; 0x75a4b
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_5
+ jr nz, .asm_2f755
ld hl, CinnabarGymText_75a68
call PrintText
ld hl, CinnabarGymText_75a6d
ld de, CinnabarGymText_75a6d
call SaveEndBattleTextPointers
jp CinnabarGymScript_758b7
-.asm_2f755 ; 0x75a5f
+.asm_2f755
ld hl, CinnabarGymText_75a72
call PrintText
jp TextScriptEnd
@@ -432,18 +424,17 @@ CinnabarGymText_75a72: ; 75a72 (1d:5a72)
db "@"
CinnabarGymText8: ; 75a77 (1d:5a77)
- db $08 ; asm
+ TX_ASM
call CinnabarGymScript_757a0
- ld a, [wd79b]
- bit 0, a
- jr nz, .asm_d87be ; 0x75a80
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_6
+ jr nz, .asm_d87be
ld hl, CinnabarGymText_75a9d
call PrintText
ld hl, CinnabarGymText_75aa2
- ld de, CinnabarGymText_75aa2 ; $5aa2 XXX
+ ld de, CinnabarGymText_75aa2
call SaveEndBattleTextPointers
jp CinnabarGymScript_758b7
-.asm_d87be ; 0x75a94
+.asm_d87be
ld hl, CinnabarGymText_75aa7
call PrintText
jp TextScriptEnd
@@ -461,15 +452,14 @@ CinnabarGymText_75aa7: ; 75aa7 (1d:5aa7)
db "@"
CinnabarGymText9: ; 75aac (1d:5aac)
- db $08 ; asm
- ld a, [wd79a]
- bit 1, a
- jr nz, .asm_627d9 ; 0x75ab2
+ TX_ASM
+ CheckEvent EVENT_BEAT_BLAINE
+ jr nz, .asm_627d9
ld hl, CinnabarGymText_75ac2
- jr .asm_0b11d ; 0x75ab7
-.asm_627d9 ; 0x75ab9
+ jr .asm_0b11d
+.asm_627d9
ld hl, CinnabarGymText_75ac7
-.asm_0b11d ; 0x75abc
+.asm_0b11d
call PrintText
jp TextScriptEnd
diff --git a/scripts/cinnabarisland.asm b/scripts/cinnabarisland.asm
index 33a497c4..c06c784c 100755
--- a/scripts/cinnabarisland.asm
+++ b/scripts/cinnabarisland.asm
@@ -2,10 +2,8 @@ CinnabarIslandScript: ; 1ca19 (7:4a19)
call EnableAutoTextBoxDrawing
ld hl, wd126
set 5, [hl]
- ld hl, wd796
- res 0, [hl]
- ld hl, wd7a3
- res 1, [hl]
+ ResetEvent EVENT_MANSION_SWITCH_ON
+ ResetEvent EVENT_LAB_STILL_REVIVING_FOSSIL
ld hl, CinnabarIslandScriptPointers
ld a, [W_CINNABARISLANDCURSCRIPT]
jp CallFunctionInTable
@@ -24,10 +22,10 @@ CinnabarIslandScript0: ; 1ca38 (7:4a38)
ld a, [W_XCOORD]
cp $12
ret nz
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
ld a, $8
- ld [wd528], a
- ld a, $8
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [hJoyHeld], a
diff --git a/scripts/colosseum.asm b/scripts/colosseum.asm
new file mode 100644
index 00000000..e4ba4611
--- /dev/null
+++ b/scripts/colosseum.asm
@@ -0,0 +1,9 @@
+ColosseumScript: ; 4fd7d (13:7d7d)
+ jp TradeCenterScript
+
+ColosseumTextPointers: ; 4fd80 (13:7d80)
+ dw ColosseumText1
+
+ColosseumText1: ; 4fd82 (13:7d82)
+ TX_FAR _ColosseumText1
+ db "@"
diff --git a/scripts/copycatshouse1f.asm b/scripts/copycatshouse1f.asm
index 230a3ca3..bc76da1a 100755
--- a/scripts/copycatshouse1f.asm
+++ b/scripts/copycatshouse1f.asm
@@ -16,7 +16,7 @@ CopycatsHouse1FText2: ; 75ed1 (1d:5ed1)
CopycatsHouse1FText3: ; 75ed6 (1d:5ed6)
TX_FAR _CopycatsHouse1FText3
- db $8
+ TX_ASM
ld a, CHANSEY
call PlayCry
jp TextScriptEnd
diff --git a/scripts/copycatshouse2f.asm b/scripts/copycatshouse2f.asm
index ed4e9a4f..74dbb1c5 100755
--- a/scripts/copycatshouse2f.asm
+++ b/scripts/copycatshouse2f.asm
@@ -11,20 +11,19 @@ CopycatsHouse2FTextPointers: ; 5cc74 (17:4c74)
dw CopycatsHouse2FText7
CopycatsHouse2FText1: ; 5cc82 (17:4c82)
- db $08 ; asm
- ld a, [wd7af]
- bit 0, a
- jr nz, .asm_7ccf3 ; 0x5cc88
+ TX_ASM
+ CheckEvent EVENT_GOT_TM31
+ jr nz, .asm_7ccf3
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, CopycatsHouse2FText_5ccd4
call PrintText
ld b, POKE_DOLL
call IsItemInBag
- jr z, .asm_62ecd ; 0x5cc9a
+ jr z, .asm_62ecd
ld hl, TM31PreReceiveText
call PrintText
- ld bc, (TM_31 << 8) | 1
+ lb bc, TM_31, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedTM31Text
@@ -32,17 +31,16 @@ CopycatsHouse2FText1: ; 5cc82 (17:4c82)
ld a, POKE_DOLL
ld [$ffdb], a
callba RemoveItemByID
- ld hl, wd7af
- set 0, [hl]
- jr .asm_62ecd ; 0x5ccc1
+ SetEvent EVENT_GOT_TM31
+ jr .asm_62ecd
.BagFull
ld hl, TM31NoRoomText
call PrintText
- jr .asm_62ecd ; 0x5ccc9
-.asm_7ccf3 ; 0x5cccb
+ jr .asm_62ecd
+.asm_7ccf3
ld hl, TM31ExplanationText2
call PrintText
-.asm_62ecd ; 0x5ccd1
+.asm_62ecd
jp TextScriptEnd
CopycatsHouse2FText_5ccd4: ; 5ccd4 (17:4cd4)
@@ -83,13 +81,13 @@ CopycatsHouse2FText6: ; 5ccfe (17:4cfe)
db "@"
CopycatsHouse2FText7: ; 5cd03 (17:4d03)
- db $08 ; asm
+ TX_ASM
ld a, [wSpriteStateData1 + 9]
- cp $4
+ cp SPRITE_FACING_UP
ld hl, CopycatsHouse2FText_5cd1c
- jr nz, .asm_399a4 ; 0x5cd0c
+ jr nz, .notUp
ld hl, CopycatsHouse2FText_5cd17
-.asm_399a4 ; 0x5cd11
+.notUp
call PrintText
jp TextScriptEnd
diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm
index 1830d2c0..3eabb0bc 100755
--- a/scripts/daycarem.asm
+++ b/scripts/daycarem.asm
@@ -5,27 +5,27 @@ DayCareMTextPointers: ; 56252 (15:6252)
dw DayCareMText1
DayCareMText1: ; 56254 (15:6254)
- db $8
+ TX_ASM
call SaveScreenTilesToBuffer2
ld a, [W_DAYCARE_IN_USE]
and a
- jp nz, DayCareMScript_562e1
- ld hl, DayCareMText_5640f
+ jp nz, .daycareInUse
+ ld hl, DayCareIntroText
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- ld hl, DayCareMText_5643b
- jp nz, DayCareMScript_56409
+ ld hl, DayCareComeAgainText
+ jp nz, .done
ld a, [wPartyCount]
dec a
- ld hl, DayCareMText_56445
- jp z, DayCareMScript_56409
- ld hl, DayCareMText_56414
+ ld hl, DayCareOnlyHaveOneMonText
+ jp z, .done
+ ld hl, DayCareWhichMonText
call PrintText
xor a
ld [wUpdateSpritesEnabled], a
- ld [wd07d], a
+ ld [wPartyMenuTypeOrMessageID], a
ld [wMenuItemToSwap], a
call DisplayPartyMenu
push af
@@ -33,90 +33,91 @@ DayCareMText1: ; 56254 (15:6254)
call RestoreScreenTilesAndReloadTilePatterns
call LoadGBPal
pop af
- ld hl, DayCareMText_56437
- jp c, DayCareMScript_56409
- callab Func_2171b
- ld hl, DayCareMText_5644a
- jp c, DayCareMScript_56409
+ ld hl, DayCareAllRightThenText
+ jp c, .done
+ callab KnowsHMMove
+ ld hl, DayCareCantAcceptMonWithHMText
+ jp c, .done
xor a
- ld [wcc2b], a
+ ld [wPartyAndBillsPCSavedMenuItem], a
ld a, [wWhichPokemon]
ld hl, wPartyMonNicks
call GetPartyMonName
- ld hl, DayCareMText_56419
+ ld hl, DayCareWillLookAfterMonText
call PrintText
- ld a, $1
+ ld a, 1
ld [W_DAYCARE_IN_USE], a
- ld a, $3
- ld [wcf95], a
- call Func_3a68
+ ld a, PARTY_TO_DAYCARE
+ ld [wMoveMonType], a
+ call MoveMon
xor a
- ld [wcf95], a
+ ld [wRemoveMonFromBox], a
call RemovePokemon
ld a, [wcf91]
call PlayCry
- ld hl, DayCareMText_5641e
- jp DayCareMScript_56409
+ ld hl, DayCareComeSeeMeInAWhileText
+ jp .done
-DayCareMScript_562e1: ; 562e1 (15:62e1)
+.daycareInUse
xor a
ld hl, W_DAYCAREMONNAME
call GetPartyMonName
- ld a, $3
- ld [wcc49], a
+ ld a, DAYCARE_DATA
+ ld [wMonDataLocation], a
call LoadMonData
callab CalcLevelFromExperience
ld a, d
cp MAX_LEVEL
- jr c, .asm_56315
+ jr c, .skipCalcExp
+
ld d, MAX_LEVEL
callab CalcExperience
ld hl, wDayCareMonExp
- ld a, [H_NUMTOPRINT]
+ ld a, [hExperience]
ld [hli], a
- ld a, [$ff97]
+ ld a, [hExperience + 1]
ld [hli], a
- ld a, [$ff98]
+ ld a, [hExperience + 2]
ld [hl], a
ld d, MAX_LEVEL
-.asm_56315
+.skipCalcExp
xor a
- ld [wTrainerEngageDistance], a
+ ld [wDayCareNumLevelsGrown], a
ld hl, wDayCareMonBoxLevel
ld a, [hl]
- ld [wTrainerSpriteOffset], a
+ ld [wDayCareStartLevel], a
cp d
ld [hl], d
- ld hl, DayCareMText_56432
- jr z, .asm_56333
- ld a, [wTrainerSpriteOffset]
+ ld hl, DayCareMonNeedsMoreTimeText
+ jr z, .next
+ ld a, [wDayCareStartLevel]
ld b, a
ld a, d
sub b
- ld [wTrainerEngageDistance], a
- ld hl, DayCareMText_56423
+ ld [wDayCareNumLevelsGrown], a
+ ld hl, DayCareMonHasGrownText
-.asm_56333
+.next
call PrintText
ld a, [wPartyCount]
cp PARTY_LENGTH
- ld hl, DayCareMText_56440
- jp z, .asm_56403
- ld de, wTrainerFacingDirection
+ ld hl, DayCareNoRoomForMonText
+ jp z, .leaveMonInDayCare
+ ld de, wDayCareTotalCost
xor a
ld [de], a
inc de
ld [de], a
- ld hl, wTrainerScreenX
+ ld hl, wDayCarePerLevelCost
ld a, $1
ld [hli], a
ld [hl], $0
- ld a, [wTrainerEngageDistance]
+ ld a, [wDayCareNumLevelsGrown]
inc a
ld b, a
- ld c, $2
-.asm_56357
+ ld c, 2
+.calcPriceLoop
push hl
push de
push bc
@@ -125,141 +126,144 @@ DayCareMScript_562e1: ; 562e1 (15:62e1)
pop de
pop hl
dec b
- jr nz, .asm_56357
- ld hl, DayCareMText_56428
+ jr nz, .calcPriceLoop
+ ld hl, DayCareOweMoneyText
call PrintText
- ld a, $13
+ ld a, MONEY_BOX
ld [wTextBoxID], a
call DisplayTextBoxID
call YesNoChoice
- ld hl, DayCareMText_56437
+ ld hl, DayCareAllRightThenText
ld a, [wCurrentMenuItem]
and a
- jp nz, .asm_56403
- ld hl, wTrainerFacingDirection
- ld [$ff9f], a
+ jp nz, .leaveMonInDayCare
+ ld hl, wDayCareTotalCost
+ ld [hMoney], a
ld a, [hli]
- ld [$ffa0], a
+ ld [hMoney + 1], a
ld a, [hl]
- ld [$ffa1], a
+ ld [hMoney + 2], a
call HasEnoughMoney
- jr nc, .asm_56396
- ld hl, DayCareMText_56454
- jp .asm_56403
+ jr nc, .enoughMoney
+ ld hl, DayCareNotEnoughMoneyText
+ jp .leaveMonInDayCare
-.asm_56396
+.enoughMoney
xor a
ld [W_DAYCARE_IN_USE], a
- ld hl, wTrainerEngageDistance
+ ld hl, wDayCareNumLevelsGrown
ld [hli], a
inc hl
ld de, wPlayerMoney + 2
ld c, $3
predef SubBCDPredef
- ld a, (SFX_02_5a - SFX_Headers_02) / 3
+ ld a, SFX_PURCHASE
call PlaySoundWaitForCurrent
- ld a, $13
+ ld a, MONEY_BOX
ld [wTextBoxID], a
call DisplayTextBoxID
- ld hl, DayCareMText_5644f
+ ld hl, DayCareHeresYourMonText
call PrintText
- ld a, $2
- ld [wcf95], a
- call Func_3a68
+ ld a, DAYCARE_TO_PARTY
+ ld [wMoveMonType], a
+ call MoveMon
ld a, [wDayCareMonSpecies]
ld [wcf91], a
ld a, [wPartyCount]
dec a
push af
- ld bc, $002c
+ ld bc, wPartyMon2 - wPartyMon1
push bc
ld hl, wPartyMon1Moves
call AddNTimes
ld d, h
ld e, l
- ld a, $1
- ld [wHPBarMaxHP], a
+ ld a, 1
+ ld [wLearningMovesFromDayCare], a
predef WriteMonMoves
pop bc
pop af
+
+; set mon's HP to max
ld hl, wPartyMon1HP
call AddNTimes
ld d, h
ld e, l
- ld bc, $0021
+ ld bc, wPartyMon1MaxHP - wPartyMon1HP
add hl, bc
ld a, [hli]
ld [de], a
inc de
ld a, [hl]
ld [de], a
+
ld a, [wcf91]
call PlayCry
- ld hl, DayCareMText_5642d
- jr DayCareMScript_56409
+ ld hl, DayCareGotMonBackText
+ jr .done
-.asm_56403
- ld a, [wTrainerSpriteOffset]
+.leaveMonInDayCare
+ ld a, [wDayCareStartLevel]
ld [wDayCareMonBoxLevel], a
-DayCareMScript_56409: ; 56409 (15:6409)
+.done
call PrintText
jp TextScriptEnd
-DayCareMText_5640f: ; 5640f (15:640f)
- TX_FAR _DayCareMText_5640f
+DayCareIntroText: ; 5640f (15:640f)
+ TX_FAR _DayCareIntroText
db "@"
-DayCareMText_56414: ; 56414 (15:6414)
- TX_FAR _DayCareMText_56414
+DayCareWhichMonText: ; 56414 (15:6414)
+ TX_FAR _DayCareWhichMonText
db "@"
-DayCareMText_56419: ; 56419 (15:6419)
- TX_FAR _DayCareMText_56419
+DayCareWillLookAfterMonText: ; 56419 (15:6419)
+ TX_FAR _DayCareWillLookAfterMonText
db "@"
-DayCareMText_5641e: ; 5641e (15:641e)
- TX_FAR _DayCareMText_5641e
+DayCareComeSeeMeInAWhileText: ; 5641e (15:641e)
+ TX_FAR _DayCareComeSeeMeInAWhileText
db "@"
-DayCareMText_56423: ; 56423 (15:6423)
- TX_FAR _DayCareMText_56423
+DayCareMonHasGrownText: ; 56423 (15:6423)
+ TX_FAR _DayCareMonHasGrownText
db "@"
-DayCareMText_56428: ; 56428 (15:6428)
- TX_FAR _DayCareMText_56428
+DayCareOweMoneyText: ; 56428 (15:6428)
+ TX_FAR _DayCareOweMoneyText
db "@"
-DayCareMText_5642d: ; 5642d (15:642d)
- TX_FAR _DayCareMText_5642d
+DayCareGotMonBackText: ; 5642d (15:642d)
+ TX_FAR _DayCareGotMonBackText
db "@"
-DayCareMText_56432: ; 56432 (15:6432)
- TX_FAR _DayCareMText_56432
+DayCareMonNeedsMoreTimeText: ; 56432 (15:6432)
+ TX_FAR _DayCareMonNeedsMoreTimeText
db "@"
-DayCareMText_56437: ; 56437 (15:6437)
- TX_FAR _DayCareMText_56437 ; 0x8c000
-DayCareMText_5643b: ; 5643b (15:643b)
- TX_FAR _DayCareMText_5643b ; 0x8c013
+DayCareAllRightThenText: ; 56437 (15:6437)
+ TX_FAR _DayCareAllRightThenText
+DayCareComeAgainText: ; 5643b (15:643b)
+ TX_FAR _DayCareComeAgainText
db "@"
-DayCareMText_56440: ; 56440 (15:6440)
- TX_FAR _DayCareMText_56440
+DayCareNoRoomForMonText: ; 56440 (15:6440)
+ TX_FAR _DayCareNoRoomForMonText
db "@"
-DayCareMText_56445: ; 56445 (15:6445)
- TX_FAR _DayCareMText_56445
+DayCareOnlyHaveOneMonText: ; 56445 (15:6445)
+ TX_FAR _DayCareOnlyHaveOneMonText
db "@"
-DayCareMText_5644a: ; 5644a (15:644a)
- TX_FAR _DayCareMText_5644a
+DayCareCantAcceptMonWithHMText: ; 5644a (15:644a)
+ TX_FAR _DayCareCantAcceptMonWithHMText
db "@"
-DayCareMText_5644f: ; 5644f (15:644f)
- TX_FAR _DayCareMText_5644f
+DayCareHeresYourMonText: ; 5644f (15:644f)
+ TX_FAR _DayCareHeresYourMonText
db "@"
-DayCareMText_56454: ; 56454 (15:6454)
- TX_FAR _DayCareMText_56454
+DayCareNotEnoughMoneyText: ; 56454 (15:6454)
+ TX_FAR _DayCareNotEnoughMoneyText
db "@"
diff --git a/scripts/fanclub.asm b/scripts/fanclub.asm
index f9a839fa..cbafc034 100755
--- a/scripts/fanclub.asm
+++ b/scripts/fanclub.asm
@@ -3,8 +3,7 @@ FanClubScript: ; 59b70 (16:5b70)
FanClubBikeInBag:
; check if any bike paraphernalia in bag
- ld a, [wd771]
- bit 1, a ; got bike voucher?
+ CheckEvent EVENT_GOT_BIKE_VOUCHER
ret nz
ld b, BICYCLE
call IsItemInBag
@@ -24,20 +23,17 @@ FanClubTextPointers: ; 59b84 (16:5b84)
FanClubText1:
; pikachu fan
- db $08 ; asm
- ld a, [wd771]
- bit 7, a
+ TX_ASM
+ CheckEvent EVENT_PIKACHU_FAN_BOAST
jr nz, .mineisbetter
ld hl, .normaltext
call PrintText
- ld hl, wd771
- set 6, [hl]
+ SetEvent EVENT_SEEL_FAN_BOAST
jr .done
.mineisbetter
ld hl, .bettertext
call PrintText
- ld hl, wd771
- res 7, [hl]
+ ResetEvent EVENT_PIKACHU_FAN_BOAST
.done
jp TextScriptEnd
@@ -51,20 +47,17 @@ FanClubText1:
FanClubText2:
; seel fan
- db $08 ; asm
- ld a, [wd771]
- bit 6, a
+ TX_ASM
+ CheckEvent EVENT_SEEL_FAN_BOAST
jr nz, .mineisbetter
ld hl, .normaltext
call PrintText
- ld hl, wd771
- set 7, [hl]
+ SetEvent EVENT_PIKACHU_FAN_BOAST
jr .done
.mineisbetter
ld hl, .bettertext
call PrintText
- ld hl, wd771
- res 6, [hl]
+ ResetEvent EVENT_SEEL_FAN_BOAST
.done
jp TextScriptEnd
@@ -78,7 +71,7 @@ FanClubText2:
FanClubText3:
; pikachu
- db $8
+ TX_ASM
ld hl, .text
call PrintText
ld a, PIKACHU
@@ -92,7 +85,7 @@ FanClubText3:
FanClubText4:
; seel
- db $08 ; asm
+ TX_ASM
ld hl, .text
call PrintText
ld a, SEEL
@@ -106,7 +99,7 @@ FanClubText4:
FanClubText5:
; chair
- db $08 ; asm
+ TX_ASM
call FanClubBikeInBag
jr nz, .nothingleft
@@ -120,13 +113,12 @@ FanClubText5:
; tell the story
ld hl, .storytext
call PrintText
- ld bc, (BIKE_VOUCHER << 8) | 1
+ lb bc, BIKE_VOUCHER, 1
call GiveItem
jr nc, .BagFull
ld hl, .receivedvouchertext
call PrintText
- ld hl, wd771
- set 1, [hl]
+ SetEvent EVENT_GOT_BIKE_VOUCHER
jr .done
.BagFull
ld hl, .bagfulltext
diff --git a/scripts/fightingdojo.asm b/scripts/fightingdojo.asm
index e26da1b1..fa05d486 100755
--- a/scripts/fightingdojo.asm
+++ b/scripts/fightingdojo.asm
@@ -21,15 +21,13 @@ FightingDojoScriptPointers: ; 5cd7b (17:4d7b)
dw FightingDojoScript3
FightingDojoScript1: ; 5cd83 (17:4d83)
- ld a, [wd7b1]
- bit 0, a
+ CheckEvent EVENT_DEFEATED_FIGHTING_DOJO
ret nz
call CheckFightingMapTrainers
ld a, [wTrainerHeaderFlagBit]
and a
ret nz
- ld a, [wd7b1]
- bit 1, a
+ CheckEvent EVENT_BEAT_KARATE_MASTER
ret nz
xor a
ld [hJoyHeld], a
@@ -42,15 +40,15 @@ FightingDojoScript1: ; 5cd83 (17:4d83)
ret nz
ld a, $1
ld [wcf0d], a
+ ld a, PLAYER_DIR_RIGHT
+ ld [wPlayerMovingDirection], a
ld a, $1
- ld [wd528], a
- ld a, $1
- ld [$ff8c], a
- ld a, $8
- ld [$ff8d], a
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_LEFT
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ret
@@ -61,22 +59,20 @@ FightingDojoScript3: ; 5cdc6 (17:4dc6)
ld a, [wcf0d]
and a
jr z, .asm_5cde4
+ ld a, PLAYER_DIR_RIGHT
+ ld [wPlayerMovingDirection], a
ld a, $1
- ld [wd528], a
- ld a, $1
- ld [$ff8c], a
- ld a, $8
- ld [$ff8d], a
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_LEFT
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
.asm_5cde4
ld a, $f0
ld [wJoyIgnore], a
- ld a, [wd7b1]
- or $3e
- ld [wd7b1], a
+ SetEventRange EVENT_BEAT_KARATE_MASTER, EVENT_BEAT_FIGHTING_DOJO_TRAINER_3
ld a, $8
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [wJoyIgnore], a
@@ -96,49 +92,48 @@ FightingDojoTextPointers: ; 5ce03 (17:4e03)
FightingDojoTrainerHeaders: ; 5ce13 (17:4e13)
FightingDojoTrainerHeader0: ; 5ce13 (17:4e13)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_FIGHTING_DOJO_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd7b1 ; flag's byte
- dw FightingDojoBattleText1 ; 0x4eac TextBeforeBattle
- dw FightingDojoAfterBattleText1 ; 0x4eb6 TextAfterBattle
- dw FightingDojoEndBattleText1 ; 0x4eb1 TextEndBattle
- dw FightingDojoEndBattleText1 ; 0x4eb1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_0
+ dw FightingDojoBattleText1 ; TextBeforeBattle
+ dw FightingDojoAfterBattleText1 ; TextAfterBattle
+ dw FightingDojoEndBattleText1 ; TextEndBattle
+ dw FightingDojoEndBattleText1 ; TextEndBattle
FightingDojoTrainerHeader1: ; 5ce1f (17:4e1f)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_FIGHTING_DOJO_TRAINER_1
db ($4 << 4) ; trainer's view range
- dw wd7b1 ; flag's byte
- dw FightingDojoBattleText2 ; 0x4ec5 TextBeforeBattle
- dw FightingDojoAfterBattleText2 ; 0x4ecf TextAfterBattle
- dw FightingDojoEndBattleText2 ; 0x4eca TextEndBattle
- dw FightingDojoEndBattleText2 ; 0x4eca TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_1
+ dw FightingDojoBattleText2 ; TextBeforeBattle
+ dw FightingDojoAfterBattleText2 ; TextAfterBattle
+ dw FightingDojoEndBattleText2 ; TextEndBattle
+ dw FightingDojoEndBattleText2 ; TextEndBattle
FightingDojoTrainerHeader2: ; 5ce2b (17:4e2b)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_FIGHTING_DOJO_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd7b1 ; flag's byte
- dw FightingDojoBattleText3 ; 0x4ede TextBeforeBattle
- dw FightingDojoAfterBattleText3 ; 0x4ee8 TextAfterBattle
- dw FightingDojoEndBattleText3 ; 0x4ee3 TextEndBattle
- dw FightingDojoEndBattleText3 ; 0x4ee3 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_2
+ dw FightingDojoBattleText3 ; TextBeforeBattle
+ dw FightingDojoAfterBattleText3 ; TextAfterBattle
+ dw FightingDojoEndBattleText3 ; TextEndBattle
+ dw FightingDojoEndBattleText3 ; TextEndBattle
FightingDojoTrainerHeader3: ; 5ce37 (17:4e37)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_FIGHTING_DOJO_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd7b1 ; flag's byte
- dw FightingDojoBattleText4 ; 0x4ef7 TextBeforeBattle
- dw FightingDojoAfterBattleText4 ; 0x4f01 TextAfterBattle
- dw FightingDojoEndBattleText4 ; 0x4efc TextEndBattle
- dw FightingDojoEndBattleText4 ; 0x4efc TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_3
+ dw FightingDojoBattleText4 ; TextBeforeBattle
+ dw FightingDojoAfterBattleText4 ; TextAfterBattle
+ dw FightingDojoEndBattleText4 ; TextEndBattle
+ dw FightingDojoEndBattleText4 ; TextEndBattle
db $ff
FightingDojoText1: ; 5ce44 (17:4e44)
- db $08 ; asm
- ld a, [wd7b1]
- bit 0, a
+ TX_ASM
+ CheckEvent EVENT_DEFEATED_FIGHTING_DOJO
jp nz, .continue1
- bit 1, a
+ CheckEventReuseA EVENT_BEAT_KARATE_MASTER
jp nz, .continue2
ld hl, FightingDojoText_5ce8e
call PrintText
@@ -148,22 +143,22 @@ FightingDojoText1: ; 5ce44 (17:4e44)
ld hl, FightingDojoText_5ce93
ld de, FightingDojoText_5ce93
call SaveEndBattleTextPointers
- ldh a, [$8c]
+ ld a, [hSpriteIndexOrTextID]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
ld a, $3
ld [W_FIGHTINGDOJOCURSCRIPT], a
ld [W_CURMAPSCRIPT], a
- jr .asm_9dba4 ; 0x5ce7b
-.continue1 ; 0x5ce7d
+ jr .asm_9dba4
+.continue1
ld hl, FightingDojoText_5ce9d
call PrintText
- jr .asm_9dba4 ; 0x5ce83
-.continue2 ; 0x5ce85f
+ jr .asm_9dba4
+.continue2
ld hl, FightingDojoText8
call PrintText
-.asm_9dba4 ; 0x5ce8b
+.asm_9dba4
jp TextScriptEnd
FightingDojoText_5ce8e: ; 5ce8e (17:4e8e)
@@ -183,7 +178,7 @@ FightingDojoText_5ce9d: ; 5ce9d (17:4e9d)
db "@"
FightingDojoText2: ; 5cea2 (17:4ea2)
- db $08 ; asm
+ TX_ASM
ld hl, FightingDojoTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -201,7 +196,7 @@ FightingDojoAfterBattleText1: ; 5ceb6 (17:4eb6)
db "@"
FightingDojoText3: ; 5cebb (17:4ebb)
- db $08 ; asm
+ TX_ASM
ld hl, FightingDojoTrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -219,7 +214,7 @@ FightingDojoAfterBattleText2: ; 5cecf (17:4ecf)
db "@"
FightingDojoText4: ; 5ced4 (17:4ed4)
- db $08 ; asm
+ TX_ASM
ld hl, FightingDojoTrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -237,7 +232,7 @@ FightingDojoAfterBattleText3: ; 5cee8 (17:4ee8)
db "@"
FightingDojoText5: ; 5ceed (17:4eed)
- db $08 ; asm
+ TX_ASM
ld hl, FightingDojoTrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -256,9 +251,8 @@ FightingDojoAfterBattleText4: ; 5cf01 (17:4f01)
FightingDojoText6: ; 5cf06 (17:4f06)
; Hitmonlee Poké Ball
- db $08 ; asm
- ld a, [wd7b1]
- and %11000000
+ TX_ASM
+ CheckEitherEventSet EVENT_GOT_HITMONLEE, EVENT_GOT_HITMONCHAN
jr z, .GetMon
ld hl, OtherHitmonText
call PrintText
@@ -280,11 +274,9 @@ FightingDojoText6: ; 5cf06 (17:4f06)
; once Poké Ball is taken, hide sprite
ld a, HS_FIGHTING_DOJO_GIFT_1
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
- ld hl, wd7b1
- set 6, [hl]
- set 0, [hl]
+ SetEvents EVENT_GOT_HITMONLEE, EVENT_DEFEATED_FIGHTING_DOJO
.done
jp TextScriptEnd
@@ -294,9 +286,8 @@ WantHitmonleeText: ; 5cf49 (17:4f49)
FightingDojoText7: ; 5cf4e (17:4f4e)
; Hitmonchan Poké Ball
- db $08 ; asm
- ld a, [wd7b1]
- and %11000000
+ TX_ASM
+ CheckEitherEventSet EVENT_GOT_HITMONLEE, EVENT_GOT_HITMONCHAN
jr z, .GetMon
ld hl, OtherHitmonText
call PrintText
@@ -315,13 +306,11 @@ FightingDojoText7: ; 5cf4e (17:4f4e)
ld c,30
call GivePokemon
jr nc, .done
- ld hl, wd7b1
- set 7, [hl]
- set 0, [hl]
+ SetEvents EVENT_GOT_HITMONCHAN, EVENT_DEFEATED_FIGHTING_DOJO
; once Poké Ball is taken, hide sprite
ld a, HS_FIGHTING_DOJO_GIFT_2
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
.done
jp TextScriptEnd
diff --git a/scripts/fuchsiacity.asm b/scripts/fuchsiacity.asm
index 6b7e067b..cdf8e203 100755
--- a/scripts/fuchsiacity.asm
+++ b/scripts/fuchsiacity.asm
@@ -74,7 +74,7 @@ FuchsiaCityText18: ; 19a8b (6:5a8b)
db "@"
FuchsiaCityText19: ; 19a90 (6:5a90)
- db $08 ; asm
+ TX_ASM
ld hl, FuchsiaCityChanseyText
call PrintText
ld a, CHANSEY
@@ -86,7 +86,7 @@ FuchsiaCityChanseyText: ; 19a9f (6:5a9f)
db "@"
FuchsiaCityText20: ; 19aa4 (6:5aa4)
- db $08 ; asm
+ TX_ASM
ld hl, FuchsiaCityVoltorbText
call PrintText
ld a, VOLTORB
@@ -98,7 +98,7 @@ FuchsiaCityVoltorbText: ; 19ab3 (6:5ab3)
db "@"
FuchsiaCityText21: ; 19ab8 (6:5ab8)
- db $08 ; asm
+ TX_ASM
ld hl, FuchsiaCityKangaskhanText
call PrintText
ld a, KANGASKHAN
@@ -110,7 +110,7 @@ FuchsiaCityKangaskhanText: ; 19ac7 (6:5ac7)
db "@"
FuchsiaCityText22: ; 19acc (6:5acc)
- db $08 ; asm
+ TX_ASM
ld hl, FuchsiaCitySlowpokeText
call PrintText
ld a, SLOWPOKE
@@ -122,7 +122,7 @@ FuchsiaCitySlowpokeText: ; 19adb (6:5adb)
db "@"
FuchsiaCityText23: ; 19ae0 (6:5ae0)
- db $08 ; asm
+ TX_ASM
ld hl, FuchsiaCityLaprasText
call PrintText
ld a, LAPRAS
@@ -134,27 +134,26 @@ FuchsiaCityLaprasText: ; 19aef (6:5aef)
db "@"
FuchsiaCityText24: ; 19af4 (6:5af4)
- db $08 ; asm
- ld a, [wd7f6]
- bit 6, a
- jr nz, .asm_3b4e8 ; 0x19afa
- bit 7, a
- jr nz, .asm_667d5 ; 0x19afe
+ TX_ASM
+ CheckEvent EVENT_GOT_DOME_FOSSIL
+ jr nz, .asm_3b4e8
+ CheckEventReuseA EVENT_GOT_HELIX_FOSSIL
+ jr nz, .asm_667d5
ld hl, FuchsiaCityText_19b2a
call PrintText
- jr .asm_4343f ; 0x19b06
-.asm_3b4e8 ; 0x19b08
+ jr .asm_4343f
+.asm_3b4e8
ld hl, FuchsiaCityOmanyteText
call PrintText
ld a, OMANYTE
- jr .asm_81556 ; 0x19b10
-.asm_667d5 ; 0x19b12
+ jr .asm_81556
+.asm_667d5
ld hl, FuchsiaCityKabutoText
call PrintText
ld a, KABUTO
-.asm_81556 ; 0x19b1a
+.asm_81556
call DisplayPokedex
-.asm_4343f ; 0x19b1d
+.asm_4343f
jp TextScriptEnd
FuchsiaCityOmanyteText: ; 19b20 (6:5b20)
diff --git a/scripts/fuchsiagym.asm b/scripts/fuchsiagym.asm
index 43d977d7..3ec89256 100755
--- a/scripts/fuchsiagym.asm
+++ b/scripts/fuchsiagym.asm
@@ -37,40 +37,36 @@ FuchsiaGymScriptPointers: ; 75482 (1d:5482)
dw FuchsiaGymScript3
FuchsiaGymScript3: ; 7548a (1d:548a)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, FuchsiaGymScript_75477
ld a, $f0
ld [wJoyIgnore], a
FuchsiaGymScript3_75497: ; 75497 (1d:5497)
ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd792
- set 1, [hl]
- ld bc, (TM_06 << 8) | 1
+ SetEvent EVENT_BEAT_KOGA
+ lb bc, TM_06, 1
call GiveItem
jr nc, .BagFull
ld a, $a
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd792
- set 0, [hl]
+ SetEvent EVENT_GOT_TM06
jr .asm_754c0
.BagFull
ld a, $b
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
.asm_754c0
ld hl, W_OBTAINEDBADGES
set 4, [hl]
- ld hl, wd72a
+ ld hl, wBeatGymFlags
set 4, [hl]
; deactivate gym trainers
- ld a, [wd792]
- or %11111100
- ld [wd792], a
+ SetEventRange EVENT_BEAT_FUCHSIA_GYM_TRAINER_0, EVENT_BEAT_FUCHSIA_GYM_TRAINER_6
jp FuchsiaGymScript_75477
@@ -89,111 +85,110 @@ FuchsiaGymTextPointers: ; 754d5 (1d:54d5)
FuchsiaGymTrainerHeaders: ; 754eb (1d:54eb)
FuchsiaGymTrainerHeader0: ; 754eb (1d:54eb)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd792 ; flag's byte
- dw FuchsiaGymBattleText1 ; 0x55ae TextBeforeBattle
- dw FuchsiaGymAfterBattleText1 ; 0x55b8 TextAfterBattle
- dw FuchsiaGymEndBattleText1 ; 0x55b3 TextEndBattle
- dw FuchsiaGymEndBattleText1 ; 0x55b3 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_0
+ dw FuchsiaGymBattleText1 ; TextBeforeBattle
+ dw FuchsiaGymAfterBattleText1 ; TextAfterBattle
+ dw FuchsiaGymEndBattleText1 ; TextEndBattle
+ dw FuchsiaGymEndBattleText1 ; TextEndBattle
FuchsiaGymTrainerHeader2: ; 754f7 (1d:54f7)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd792 ; flag's byte
- dw FuchsiaGymBattleText2 ; 0x55c7 TextBeforeBattle
- dw FuchsiaGymAfterBattleText2 ; 0x55d1 TextAfterBattle
- dw FuchsiaGymEndBattleText2 ; 0x55cc TextEndBattle
- dw FuchsiaGymEndBattleText2 ; 0x55cc TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_2
+ dw FuchsiaGymBattleText2 ; TextBeforeBattle
+ dw FuchsiaGymAfterBattleText2 ; TextAfterBattle
+ dw FuchsiaGymEndBattleText2 ; TextEndBattle
+ dw FuchsiaGymEndBattleText2 ; TextEndBattle
FuchsiaGymTrainerHeader3: ; 75503 (1d:5503)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_3
db ($4 << 4) ; trainer's view range
- dw wd792 ; flag's byte
- dw FuchsiaGymBattleText3 ; 0x55e0 TextBeforeBattle
- dw FuchsiaGymAfterBattleText3 ; 0x55ea TextAfterBattle
- dw FuchsiaGymEndBattleText3 ; 0x55e5 TextEndBattle
- dw FuchsiaGymEndBattleText3 ; 0x55e5 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_3
+ dw FuchsiaGymBattleText3 ; TextBeforeBattle
+ dw FuchsiaGymAfterBattleText3 ; TextAfterBattle
+ dw FuchsiaGymEndBattleText3 ; TextEndBattle
+ dw FuchsiaGymEndBattleText3 ; TextEndBattle
FuchsiaGymTrainerHeader4: ; 7550f (1d:550f)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_4
db ($2 << 4) ; trainer's view range
- dw wd792 ; flag's byte
- dw FuchsiaGymBattleText4 ; 0x55f9 TextBeforeBattle
- dw FuchsiaGymAfterBattleText4 ; 0x5603 TextAfterBattle
- dw FuchsiaGymEndBattleText4 ; 0x55fe TextEndBattle
- dw FuchsiaGymEndBattleText4 ; 0x55fe TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_4
+ dw FuchsiaGymBattleText4 ; TextBeforeBattle
+ dw FuchsiaGymAfterBattleText4 ; TextAfterBattle
+ dw FuchsiaGymEndBattleText4 ; TextEndBattle
+ dw FuchsiaGymEndBattleText4 ; TextEndBattle
FuchsiaGymTrainerHeader5: ; 7551b (1d:551b)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_5
db ($2 << 4) ; trainer's view range
- dw wd792 ; flag's byte
- dw FuchsiaGymBattleText5 ; 0x5612 TextBeforeBattle
- dw FuchsiaGymAfterBattleText5 ; 0x561c TextAfterBattle
- dw FuchsiaGymEndBattleText5 ; 0x5617 TextEndBattle
- dw FuchsiaGymEndBattleText5 ; 0x5617 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_5
+ dw FuchsiaGymBattleText5 ; TextBeforeBattle
+ dw FuchsiaGymAfterBattleText5 ; TextAfterBattle
+ dw FuchsiaGymEndBattleText5 ; TextEndBattle
+ dw FuchsiaGymEndBattleText5 ; TextEndBattle
FuchsiaGymTrainerHeader6: ; 75527 (1d:5527)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_6
db ($2 << 4) ; trainer's view range
- dw wd792 ; flag's byte
- dw FuchsiaGymBattleText6 ; 0x562b TextBeforeBattle
- dw FuchsiaGymAfterBattleText6 ; 0x5635 TextAfterBattle
- dw FuchsiaGymEndBattleText6 ; 0x5630 TextEndBattle
- dw FuchsiaGymEndBattleText6 ; 0x5630 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_6
+ dw FuchsiaGymBattleText6 ; TextBeforeBattle
+ dw FuchsiaGymAfterBattleText6 ; TextAfterBattle
+ dw FuchsiaGymEndBattleText6 ; TextEndBattle
+ dw FuchsiaGymEndBattleText6 ; TextEndBattle
db $ff
FuchsiaGymText1: ; 75534 (1d:5534)
- db $08 ; asm
- ld a, [wd792]
- bit 1, a
- jr z, .asm_181b6 ; 0x7553a
- bit 0, a
- jr nz, .asm_adc3b ; 0x7553e
+ TX_ASM
+ CheckEvent EVENT_BEAT_KOGA
+ jr z, .asm_181b6
+ CheckEventReuseA EVENT_GOT_TM06
+ jr nz, .asm_adc3b
call z, FuchsiaGymScript3_75497
call DisableWaitingAfterTextDisplay
- jr .asm_e84c6 ; 0x75546
-.asm_adc3b ; 0x75548
- ld hl, UnnamedText_7558b
+ jr .asm_e84c6
+.asm_adc3b
+ ld hl, KogaExplainToxicText
call PrintText
- jr .asm_e84c6 ; 0x7554e
-.asm_181b6 ; 0x75550
- ld hl, UnnamedText_75581
+ jr .asm_e84c6
+.asm_181b6
+ ld hl, KogaBeforeBattleText
call PrintText
ld hl, wd72d
set 6, [hl]
set 7, [hl]
- ld hl, UnnamedText_75586
- ld de, UnnamedText_75586
+ ld hl, KogaAfterBattleText
+ ld de, KogaAfterBattleText
call SaveEndBattleTextPointers
- ldh a, [$8c]
+ ld a, [H_SPRITEINDEX]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
ld a, $5
ld [W_GYMLEADERNO], a
xor a
- ldh [$b4], a
+ ld [hJoyHeld], a
ld a, $3
ld [W_FUCHSIAGYMCURSCRIPT], a
-.asm_e84c6 ; 0x7557e
+.asm_e84c6
jp TextScriptEnd
-UnnamedText_75581: ; 75581 (1d:5581)
- TX_FAR _UnnamedText_75581
+KogaBeforeBattleText: ; 75581 (1d:5581)
+ TX_FAR _KogaBeforeBattleText
db "@"
-UnnamedText_75586: ; 75586 (1d:5586)
- TX_FAR _UnnamedText_75586
+KogaAfterBattleText: ; 75586 (1d:5586)
+ TX_FAR _KogaAfterBattleText
db "@"
-UnnamedText_7558b: ; 7558b (1d:558b)
- TX_FAR _UnnamedText_7558b
+KogaExplainToxicText: ; 7558b (1d:558b)
+ TX_FAR _KogaExplainToxicText
db "@"
FuchsiaGymText9: ; 75590 (1d:5590)
- TX_FAR _UnnamedText_75590
+ TX_FAR _FuchsiaGymText9
db "@"
FuchsiaGymText10: ; 75595 (1d:5595)
@@ -209,7 +204,7 @@ FuchsiaGymText11: ; 7559f (1d:559f)
db "@"
FuchsiaGymText2: ; 755a4 (1d:55a4)
- db $08 ; asm
+ TX_ASM
ld hl, FuchsiaGymTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -227,7 +222,7 @@ FuchsiaGymAfterBattleText1: ; 755b8 (1d:55b8)
db "@"
FuchsiaGymText3: ; 755bd (1d:55bd)
- db $08 ; asm
+ TX_ASM
ld hl, FuchsiaGymTrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -245,7 +240,7 @@ FuchsiaGymAfterBattleText2: ; 755d1 (1d:55d1)
db "@"
FuchsiaGymText4: ; 755d6 (1d:55d6)
- db $08 ; asm
+ TX_ASM
ld hl, FuchsiaGymTrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -263,7 +258,7 @@ FuchsiaGymAfterBattleText3: ; 755ea (1d:55ea)
db "@"
FuchsiaGymText5: ; 755ef (1d:55ef)
- db $08 ; asm
+ TX_ASM
ld hl, FuchsiaGymTrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -281,7 +276,7 @@ FuchsiaGymAfterBattleText4: ; 75603 (1d:5603)
db "@"
FuchsiaGymText6: ; 75608 (1d:5608)
- db $08 ; asm
+ TX_ASM
ld hl, FuchsiaGymTrainerHeader5
call TalkToTrainer
jp TextScriptEnd
@@ -299,7 +294,7 @@ FuchsiaGymAfterBattleText5: ; 7561c (1d:561c)
db "@"
FuchsiaGymText7: ; 75621 (1d:5621)
- db $08 ; asm
+ TX_ASM
ld hl, FuchsiaGymTrainerHeader6
call TalkToTrainer
jp TextScriptEnd
@@ -317,20 +312,19 @@ FuchsiaGymAfterBattleText6: ; 75635 (1d:5635)
db "@"
FuchsiaGymText8: ; 7563a (1d:563a)
- db $08 ; asm
- ld a, [wd792]
- bit 1, a
- ld hl, UnnamedText_75653
- jr nz, .asm_50671 ; 0x75643
- ld hl, UnnamedText_7564e
-.asm_50671 ; 0x75648
+ TX_ASM
+ CheckEvent EVENT_BEAT_KOGA
+ ld hl, FuchsiaGymText_75653
+ jr nz, .asm_50671
+ ld hl, FuchsiaGymText_7564e
+.asm_50671
call PrintText
jp TextScriptEnd
-UnnamedText_7564e: ; 7564e (1d:564e)
- TX_FAR _UnnamedText_7564e
+FuchsiaGymText_7564e: ; 7564e (1d:564e)
+ TX_FAR _FuchsiaGymText_7564e
db "@"
-UnnamedText_75653: ; 75653 (1d:5653)
- TX_FAR _UnnamedText_75653
+FuchsiaGymText_75653: ; 75653 (1d:5653)
+ TX_FAR _FuchsiaGymText_75653
db "@"
diff --git a/scripts/fuchsiahouse2.asm b/scripts/fuchsiahouse2.asm
index c8c250ab..76b5e91f 100755
--- a/scripts/fuchsiahouse2.asm
+++ b/scripts/fuchsiahouse2.asm
@@ -3,60 +3,56 @@ FuchsiaHouse2Script: ; 750b5 (1d:50b5)
FuchsiaHouse2TextPointers: ; 750b8 (1d:50b8)
dw FuchsiaHouse2Text1
- dw Predef5CText
+ dw PickUpItemText
dw BoulderText
dw FuchsiaHouse2Text4
dw FuchsiaHouse2Text5
FuchsiaHouse2Text1: ; 750c2 (1d:50c2)
- db $08 ; asm
- ld a, [wd78e]
- bit 0, a
- jr nz, .subtract ; 0x750c8
+ TX_ASM
+ CheckEvent EVENT_GOT_HM04
+ jr nz, .subtract
ld b,GOLD_TEETH
call IsItemInBag
- jr nz, .asm_3f30f ; 0x750cf
- ld a, [wd78e]
- bit 1, a
- jr nz, .asm_60cba ; 0x750d6
+ jr nz, .asm_3f30f
+ CheckEvent EVENT_GAVE_GOLD_TEETH
+ jr nz, .asm_60cba
ld hl, WardenGibberishText1
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
ld hl, WardenGibberishText3
- jr nz, .asm_61238 ; 0x750e8
+ jr nz, .asm_61238
ld hl, WardenGibberishText2
-.asm_61238 ; 0x750ed
+.asm_61238
call PrintText
- jr .asm_52039 ; 0x750f0
-.asm_3f30f ; 0x750f2
+ jr .asm_52039
+.asm_3f30f
ld hl, WardenTeethText1
call PrintText
ld a, GOLD_TEETH
ld [$ffdb], a
callba RemoveItemByID
- ld hl, wd78e
- set 1, [hl]
-.asm_60cba ; 0x75109
+ SetEvent EVENT_GAVE_GOLD_TEETH
+.asm_60cba
ld hl, WardenThankYouText
call PrintText
- ld bc,(HM_04 << 8) | 1
+ lb bc, HM_04, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedHM04Text
call PrintText
- ld hl, wd78e
- set 0, [hl]
- jr .asm_52039 ; 0x75122
-.subtract ; 0x75124
+ SetEvent EVENT_GOT_HM04
+ jr .asm_52039
+.subtract
ld hl, HM04ExplanationText
call PrintText
- jr .asm_52039 ; 0x7512a
+ jr .asm_52039
.BagFull
ld hl, HM04NoRoomText
call PrintText
-.asm_52039 ; 0x75132
+.asm_52039
jp TextScriptEnd
WardenGibberishText1: ; 75135 (1d:5135)
@@ -97,13 +93,13 @@ HM04NoRoomText: ; 7515e (1d:515e)
FuchsiaHouse2Text5: ; 75163 (1d:5163)
FuchsiaHouse2Text4: ; 75163 (1d:5163)
- db $08 ; asm
- ld a, [hSpriteIndexOrTextID]
+ TX_ASM
+ ld a, [H_SPRITEINDEX]
cp $4
ld hl, FuchsiaHouse2Text_7517b
- jr nz, .asm_4c9a2 ; 0x7516b
+ jr nz, .asm_4c9a2
ld hl, FuchsiaHouse2Text_75176
-.asm_4c9a2 ; 0x75170
+.asm_4c9a2
call PrintText
jp TextScriptEnd
diff --git a/scripts/fuchsiahouse3.asm b/scripts/fuchsiahouse3.asm
index 372df6a6..2aabb9c2 100755
--- a/scripts/fuchsiahouse3.asm
+++ b/scripts/fuchsiahouse3.asm
@@ -5,7 +5,7 @@ FuchsiaHouse3TextPointers: ; 5617f (15:617f)
dw FuchsiaHouse3Text1
FuchsiaHouse3Text1: ; 56181 (15:6181)
- db $08 ; asm
+ TX_ASM
ld a, [wd728]
bit 4, a
jr nz, .after
@@ -18,7 +18,7 @@ FuchsiaHouse3Text1: ; 56181 (15:6181)
and a
jr nz, .refused
- ld bc, (GOOD_ROD << 8) | 1
+ lb bc, GOOD_ROD, 1
call GiveItem
jr nc, .full
@@ -48,11 +48,11 @@ FuchsiaHouse3Text_561bd: ; 561bd (15:61bd)
db "@"
FuchsiaHouse3Text_561c2: ; 561c2 (15:61c2)
- TX_FAR _FuchsiaHouse3Text_561c2 ; 0xa06e8
+ TX_FAR _FuchsiaHouse3Text_561c2
db $0B
db "@"
-UnnamedText_561c8: ; 561c8
+UnusedText_561c8: ; 561c8
para "つり こそ"
line "おとこの ロマン だ!"
diff --git a/scripts/gary.asm b/scripts/gary.asm
index c0785cab..3215a04f 100755
--- a/scripts/gary.asm
+++ b/scripts/gary.asm
@@ -40,9 +40,9 @@ GaryScript1: ; 75f48 (1d:5f48)
ret
RLEMovement75f63: ; 75f63 (1d:5f63)
- db $40,1
- db $10,1
- db $40,3
+ db D_UP,1
+ db D_RIGHT,1
+ db D_UP,3
db $ff
GaryScript2: ; 75f6a (1d:5f6a)
@@ -55,7 +55,7 @@ GaryScript2: ; 75f6a (1d:5f6a)
ld hl, W_OPTIONS
res 7, [hl]
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call Delay3
ld hl, wd72d
@@ -64,18 +64,18 @@ GaryScript2: ; 75f6a (1d:5f6a)
ld hl, GaryText_760f9
ld de, GaryText_760fe
call SaveEndBattleTextPointers
- ld a, SONY3 + $c8
+ ld a, OPP_SONY3
ld [W_CUROPPONENT], a
; select which team to use during the encounter
ld a, [W_RIVALSTARTER]
cp STARTER2
- jr nz, .NotSquirtle ; 0x75f9f $4
+ jr nz, .NotSquirtle
ld a, $1
jr .done
.NotSquirtle
cp STARTER3
- jr nz, .Charmander ; 0x75fa7 $4
+ jr nz, .Charmander
ld a, $2
jr .done
.Charmander
@@ -93,16 +93,15 @@ GaryScript3: ; 75fbb (1d:5fbb)
ld a, [W_ISINBATTLE]
cp $ff
jp z, GaryScript_75f29
- call UpdateSprites ; move sprites
- ld hl, wd867
- set 1, [hl]
+ call UpdateSprites
+ SetEvent EVENT_BEAT_CHAMPION_RIVAL
ld a, $f0
ld [wJoyIgnore], a
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call GaryScript_760c8
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
ld a, $4
ld [W_GARYCURSCRIPT], a
@@ -111,43 +110,48 @@ GaryScript3: ; 75fbb (1d:5fbb)
GaryScript4: ; 75fe4 (1d:5fe4)
callba Music_Cities1AlternateTempo
ld a, $2
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call GaryScript_760c8
ld a, $2
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
ld de, MovementData_76014
ld a, $2
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, HS_CHAMPIONS_ROOM_OAK
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
ld a, $5
ld [W_GARYCURSCRIPT], a
ret
MovementData_76014: ; 76014 (1d:6014)
- db $40,$40,$40,$40,$40,$FF
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db $FF
GaryScript5: ; 7601a (1d:601a)
ld a, [wd730]
bit 0, a
ret nz
- ld a, $2
- ld [wd528], a
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
ld a, $1
- ld [$ff8c], a
- ld a, $8
- ld [$ff8d], a
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_LEFT
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, $2
- ld [$ff8c], a
- xor a
- ld [$ff8d], a
- call SetSpriteFacingDirectionAndDelay ; face object
+ ld [H_SPRITEINDEX], a
+ xor a ; SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
ld a, $3
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call GaryScript_760c8
ld a, $6
ld [W_GARYCURSCRIPT], a
@@ -155,12 +159,12 @@ GaryScript5: ; 7601a (1d:601a)
GaryScript6: ; 76047 (1d:6047)
ld a, $2
- ld [$ff8c], a
- ld a, $c
- ld [$ff8d], a
- call SetSpriteFacingDirectionAndDelay ; face object
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_RIGHT
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
ld a, $4
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call GaryScript_760c8
ld a, $7
ld [W_GARYCURSCRIPT], a
@@ -168,30 +172,32 @@ GaryScript6: ; 76047 (1d:6047)
GaryScript7: ; 7605f (1d:605f)
ld a, $2
- ld [$ff8c], a
- xor a
- ld [$ff8d], a
- call SetSpriteFacingDirectionAndDelay ; face object
+ ld [H_SPRITEINDEX], a
+ xor a ; SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
ld a, $5
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call GaryScript_760c8
ld de, MovementData_76080
ld a, $2
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $8
ld [W_GARYCURSCRIPT], a
ret
MovementData_76080: ; 76080 (1d:6080)
- db $40,$40,$FF
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db $FF
GaryScript8: ; 76083 (1d:6083)
ld a, [wd730]
bit 0, a
ret nz
ld a, HS_CHAMPIONS_ROOM_OAK
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, $9
ld [W_GARYCURSCRIPT], a
@@ -210,9 +216,9 @@ GaryScript9: ; 76099 (1d:6099)
ld [W_GARYCURSCRIPT], a
ret
-RLEMovement760b4 ; 760b4 (1d:60b4)
- db $40,4
- db $20,1
+RLEMovement760b4: ; 760b4 (1d:60b4)
+ db D_UP,4
+ db D_LEFT,1
db $ff
GaryScript10: ; 760b9 (1d:60b9)
@@ -225,7 +231,7 @@ GaryScript10: ; 760b9 (1d:60b9)
ld [W_GARYCURSCRIPT], a
ret
-GaryScript_760c8 ; 760c8 (1d:60c8)
+GaryScript_760c8: ; 760c8 (1d:60c8)
ld a, $f0
ld [wJoyIgnore], a
call DisplayTextID
@@ -241,13 +247,12 @@ GaryTextPointers: ; 760d6 (1d:60d6)
dw GaryText5
GaryText1: ; 760e0 (1d:60e0)
- db $08 ; asm
- ld a, [wd867]
- bit 1, a
+ TX_ASM
+ CheckEvent EVENT_BEAT_CHAMPION_RIVAL
ld hl, GaryText_760f4
- jr z, .asm_17e9f ; 0x760e9
+ jr z, .asm_17e9f
ld hl, GaryText_76103
-.asm_17e9f ; 0x760ee
+.asm_17e9f
call PrintText
jp TextScriptEnd
@@ -272,7 +277,7 @@ GaryText2: ; 76108 (1d:6108)
db "@"
GaryText3: ; 7610d (1d:610d)
- db $8
+ TX_ASM
ld a, [W_PLAYERSTARTER]
ld [wd11e], a
call GetMonName
diff --git a/scripts/halloffameroom.asm b/scripts/halloffameroom.asm
index c44622c7..1da6d3f5 100755
--- a/scripts/halloffameroom.asm
+++ b/scripts/halloffameroom.asm
@@ -21,13 +21,13 @@ HallofFameRoomScript3: ; 5a4ba (16:64ba)
HallofFameRoomScript2: ; 5a4bb (16:64bb)
call Delay3
- ld a, [wd358]
+ ld a, [wLetterPrintingDelayFlags]
push af
xor a
ld [wJoyIgnore], a
predef HallOfFamePC
pop af
- ld [wd358], a
+ ld [wLetterPrintingDelayFlags], a
ld hl, W_FLAGS_D733
res 1, [hl]
inc hl
@@ -39,12 +39,8 @@ HallofFameRoomScript2: ; 5a4bb (16:64bb)
ld [hl], a
ld [W_LANCECURSCRIPT], a
ld [W_HALLOFFAMEROOMCURSCRIPT], a
- ld hl, wd863
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
+ ; Elite 4 events
+ ResetEventRange ELITE4_EVENTS_START, ELITE4_CHAMPION_EVENTS_END, 1
xor a
ld [W_HALLOFFAMEROOMCURSCRIPT], a
ld a, PALLET_TOWN
@@ -55,7 +51,7 @@ HallofFameRoomScript2: ; 5a4bb (16:64bb)
ld c, 600 / 5
call DelayFrames
dec b
- jr nz, .asm_5a4ff ; 0x5a505 $f8
+ jr nz, .asm_5a4ff
call WaitForTextScrollButtonPress
jp Init
@@ -73,33 +69,33 @@ HallofFameRoomScript0: ; 5a50d (16:650d)
ret
RLEMovement5a528: ; 5a528 (16:6528)
- db $40,$5
+ db D_UP,$5
db $ff
HallofFameRoomScript1: ; 5a52b (16:652b)
ld a, [wSimulatedJoypadStatesIndex]
and a
ret nz
+ ld a, PLAYER_DIR_RIGHT
+ ld [wPlayerMovingDirection], a
ld a, $1
- ld [wd528], a
- ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
- ld a, $8
- ld [$ff8d], a
+ ld a, SPRITE_FACING_LEFT
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
call Delay3
xor a
ld [wJoyIgnore], a
- inc a
- ld [wd528], a
+ inc a ; PLAYER_DIR_RIGHT
+ ld [wPlayerMovingDirection], a
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $ff
ld [wJoyIgnore], a
ld a, HS_UNKNOWN_DUNGEON_GUY
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, $2
ld [W_HALLOFFAMEROOMCURSCRIPT], a
diff --git a/scripts/indigoplateaulobby.asm b/scripts/indigoplateaulobby.asm
index 1b09a61d..7655d8c7 100755
--- a/scripts/indigoplateaulobby.asm
+++ b/scripts/indigoplateaulobby.asm
@@ -5,18 +5,13 @@ IndigoPlateauLobbyScript: ; 19c5b (6:5c5b)
bit 6, [hl]
res 6, [hl]
ret z
- ld hl, wd869
- res 7, [hl]
- ld hl, wd734
+ ResetEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
+ ld hl, wBeatLorelei
bit 1, [hl]
res 1, [hl]
ret z
- ld hl, wd863
- xor a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
+ ; Elite 4 events
+ ResetEventRange ELITE4_EVENTS_START, EVENT_LANCES_ROOM_LOCK_DOOR
ret
IndigoPlateauLobbyTextPointers: ; 19c7f (6:5c7f)
diff --git a/scripts/lab2.asm b/scripts/lab2.asm
index 9839a563..4c3ab344 100755
--- a/scripts/lab2.asm
+++ b/scripts/lab2.asm
@@ -11,15 +11,15 @@ Lab2Text1: ; 75c2a (1d:5c2a)
db "@"
Lab2Text2: ; 75c2f (1d:5c2f)
- db $8
+ TX_ASM
ld a, $7
ld [wWhichTrade], a
- jr asm_78552 ; 0x75c35 $6
+ jr Lab2DoTrade
Lab2Text3: ; 75c37 (1d:5c37)
- db $8
+ TX_ASM
ld a, $8
ld [wWhichTrade], a
-asm_78552: ; 75c3d (1d:5c3d)
+Lab2DoTrade: ; 75c3d (1d:5c3d)
predef DoInGameTradeDialogue
jp TextScriptEnd
diff --git a/scripts/lab3.asm b/scripts/lab3.asm
index 66839b17..cbb5f53f 100755
--- a/scripts/lab3.asm
+++ b/scripts/lab3.asm
@@ -9,28 +9,26 @@ Lab3TextPointers: ; 75c8a (1d:5c8a)
dw Lab3Text5
Lab3Text1: ; 75c94 (1d:5c94)
- db $08 ; asm
- ld a, [wd7a1]
- bit 7, a
- jr nz, .asm_e551a ; 0x75c9a
+ TX_ASM
+ CheckEvent EVENT_GOT_TM35
+ jr nz, .asm_e551a
ld hl, TM35PreReceiveText
call PrintText
- ld bc, (TM_35 << 8) | 1
+ lb bc, TM_35, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedTM35Text
call PrintText
- ld hl, wd7a1
- set 7, [hl]
- jr .asm_eb896 ; 0x75cb5
+ SetEvent EVENT_GOT_TM35
+ jr .asm_eb896
.BagFull
ld hl, TM35NoRoomText
call PrintText
- jr .asm_eb896 ; 0x75cbd
-.asm_e551a ; 0x75cbf
+ jr .asm_eb896
+.asm_e551a
ld hl, TM35ExplanationText
call PrintText
-.asm_eb896 ; 0x75cc5
+.asm_eb896
jp TextScriptEnd
TM35PreReceiveText: ; 75cc8 (1d:5cc8)
diff --git a/scripts/lab4.asm b/scripts/lab4.asm
index 1e818676..dab07824 100755
--- a/scripts/lab4.asm
+++ b/scripts/lab4.asm
@@ -5,12 +5,11 @@ Lab4TextPointers: ; 75d34 (1d:5d34)
dw Lab4Text1
dw Lab4Text2
-Lab4Script_75d38: ; 75d38 (1d:5d38)
+Lab4Script_GetFossilsInBag: ; 75d38 (1d:5d38)
; construct a list of all fossils in the player's bag
-
xor a
- ld [wcd37], a
- ld de, wcc5b
+ ld [wFilteredBagItemsCount], a
+ ld de, wFilteredBagItems
ld hl, FossilsList
.loop
ld a, [hli]
@@ -20,7 +19,7 @@ Lab4Script_75d38: ; 75d38 (1d:5d38)
push de
ld [wd11e], a
ld b, a
- predef IsItemInBag_
+ predef GetQuantityOfItemInBag
pop de
pop hl
ld a, b
@@ -32,7 +31,7 @@ Lab4Script_75d38: ; 75d38 (1d:5d38)
ld [de], a
inc de
push hl
- ld hl, wcd37
+ ld hl, wFilteredBagItemsCount
inc [hl]
pop hl
jr .loop
@@ -48,45 +47,40 @@ FossilsList: ; 75d68 (1d:5d68)
db $00
Lab4Text1: ; 75d6c (1d:5d6c)
- db $8
- ld a, [wd7a3]
- bit 0, a
- jr nz, .asm_75d96 ; 0x75d72 $22
+ TX_ASM
+ CheckEvent EVENT_GAVE_FOSSIL_TO_LAB
+ jr nz, .asm_75d96
ld hl, Lab4Text_75dc6
call PrintText
- call Lab4Script_75d38
- ld a, [wcd37]
+ call Lab4Script_GetFossilsInBag
+ ld a, [wFilteredBagItemsCount]
and a
- jr z, .asm_75d8d ; 0x75d81 $a
+ jr z, .asm_75d8d
callba GiveFossilToCinnabarLab
- jr .asm_75d93 ; 0x75d8b $6
+ jr .asm_75d93
.asm_75d8d
ld hl, Lab4Text_75dcb
call PrintText
.asm_75d93
jp TextScriptEnd
.asm_75d96
- bit 1, a
- jr z, .asm_75da2 ; 0x75d98 $8
+ CheckEventAfterBranchReuseA EVENT_LAB_STILL_REVIVING_FOSSIL, EVENT_GAVE_FOSSIL_TO_LAB
+ jr z, .asm_75da2
ld hl, Lab4Text_75dd0
call PrintText
- jr .asm_75d93 ; 0x75da0 $f1
+ jr .asm_75d93
.asm_75da2
call LoadFossilItemAndMonNameBank1D
ld hl, Lab4Text_75dd5
call PrintText
- ld hl, wd7a3
- set 2, [hl]
+ SetEvent EVENT_LAB_HANDING_OVER_FOSSIL_MON
ld a, [W_FOSSILMON]
ld b, a
ld c, 30
call GivePokemon
- jr nc, .asm_75d93 ; 0x75db9 $d8
- ld hl, wd7a3
- res 0, [hl]
- res 1, [hl]
- res 2, [hl]
- jr .asm_75d93 ; 0x75dc4 $cd
+ jr nc, .asm_75d93
+ ResetEvents EVENT_GAVE_FOSSIL_TO_LAB, EVENT_LAB_STILL_REVIVING_FOSSIL, EVENT_LAB_HANDING_OVER_FOSSIL_MON
+ jr .asm_75d93
Lab4Text_75dc6: ; 75dc6 (1d:5dc6)
TX_FAR _Lab4Text_75dc6
@@ -105,13 +99,11 @@ Lab4Text_75dd5: ; 75dd5 (1d:5dd5)
db "@"
Lab4Text2: ; 75dda (1d:5dda)
- db $08 ; asm
+ TX_ASM
ld a, $3
ld [wWhichTrade], a
predef DoInGameTradeDialogue
jp TextScriptEnd
LoadFossilItemAndMonNameBank1D: ; 75de8 (1d:5de8)
- ld b, BANK(LoadFossilItemAndMonName)
- ld hl, LoadFossilItemAndMonName
- jp Bankswitch
+ jpba LoadFossilItemAndMonName
diff --git a/scripts/lance.asm b/scripts/lance.asm
index f2523098..e2c43614 100755
--- a/scripts/lance.asm
+++ b/scripts/lance.asm
@@ -13,8 +13,7 @@ LanceScript_5a2c4: ; 5a2c4 (16:62c4)
bit 5, [hl]
res 5, [hl]
ret z
- ld a, [wd866]
- bit 7, a
+ CheckEvent EVENT_LANCES_ROOM_LOCK_DOOR
jr nz, .asm_5a2da
ld a, $31
ld b, $32
@@ -25,13 +24,13 @@ LanceScript_5a2c4: ; 5a2c4 (16:62c4)
LanceScript_5a2de: ; 5a2de (16:62de)
push bc
- ld [wd09f], a
- ld bc, $602
+ ld [wNewTileBlockID], a
+ lb bc, 6, 2
call LanceScript_5a2f0
pop bc
ld a, b
- ld [wd09f], a
- ld bc, $603
+ ld [wNewTileBlockID], a
+ lb bc, 6, 3
LanceScript_5a2f0: ; 5a2f0 (16:62f0)
predef_jump ReplaceTileBlock
@@ -52,30 +51,27 @@ LanceScript4: ; 5a304 (16:6304)
ret
LanceScript0: ; 5a305 (16:6305)
- ld a, [wd866]
- bit 6, a
+ CheckEvent EVENT_BEAT_LANCE
ret nz
ld hl, CoordsData_5a33e
call ArePlayerCoordsInArray
jp nc, CheckFightingMapTrainers
xor a
ld [hJoyHeld], a
- ld a, [wWhichTrade] ; wWhichTrade
+ ld a, [wCoordIndex]
cp $3
jr nc, .asm_5a325
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
.asm_5a325
cp $5
jr z, LanceScript_5a35b
- ld hl, wd866
- bit 7, [hl]
- set 7, [hl]
+ CheckAndSetEvent EVENT_LANCES_ROOM_LOCK_DOOR
ret nz
ld hl, wd126
set 5, [hl]
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ ld a, SFX_GO_INSIDE
call PlaySound
jp LanceScript_5a2c4
@@ -89,11 +85,11 @@ CoordsData_5a33e: ; 5a33e (16:633e)
LanceScript2: ; 5a349 (16:6349)
call EndTrainerBattle
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, LanceScript_5a2f5
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
LanceScript_5a35b: ; 5a35b (16:635b)
@@ -111,10 +107,10 @@ LanceScript_5a35b: ; 5a35b (16:635b)
ret
RLEList_5a379: ; 5a379 (16:6379)
- db $40, $0C
- db $20, $0C
- db $80, $07
- db $20, $06
+ db D_UP, $0C
+ db D_LEFT, $0C
+ db D_DOWN, $07
+ db D_LEFT, $06
db $FF
LanceScript3: ; 5a382 (16:6382)
@@ -133,18 +129,18 @@ LanceTextPointers: ; 5a395 (16:6395)
LanceTrainerHeaders: ; 5a397 (16:6397)
LanceTrainerHeader0: ; 5a397 (16:6397)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_LANCES_ROOM_TRAINER_0
db ($0 << 4) ; trainer's view range
- dw wd866 ; flag's byte
- dw LanceBeforeBattleText ; 0x63ae TextBeforeBattle
- dw LanceAfterBattleText ; 0x63b8 TextAfterBattle
- dw LanceEndBattleText ; 0x63b3 TextEndBattle
- dw LanceEndBattleText ; 0x63b3 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_LANCES_ROOM_TRAINER_0
+ dw LanceBeforeBattleText ; TextBeforeBattle
+ dw LanceAfterBattleText ; TextAfterBattle
+ dw LanceEndBattleText ; TextEndBattle
+ dw LanceEndBattleText ; TextEndBattle
db $ff
LanceText1: ; 5a3a4 (16:63a4)
- db $08 ; asm
+ TX_ASM
ld hl, LanceTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -159,7 +155,6 @@ LanceEndBattleText: ; 5a3b3 (16:63b3)
LanceAfterBattleText: ; 5a3b8 (16:63b8)
TX_FAR _LanceAfterBattleText
- db $8
- ld hl, wd866
- set 6, [hl]
+ TX_ASM
+ SetEvent EVENT_BEAT_LANCE
jp TextScriptEnd
diff --git a/scripts/lavenderhouse1.asm b/scripts/lavenderhouse1.asm
index 5fd1dd34..ccf9cef1 100755
--- a/scripts/lavenderhouse1.asm
+++ b/scripts/lavenderhouse1.asm
@@ -11,17 +11,16 @@ LavenderHouse1TextPointers: ; 1d8ac (7:58ac)
dw LavenderHouse1Text6
LavenderHouse1Text1: ; 1d8b8 (7:58b8)
- db $08 ; asm
- ld a, [wd7e0]
- bit 7, a
- jr nz, .asm_72e5d ; 0x1d8be
+ TX_ASM
+ CheckEvent EVENT_RESCUED_MR_FUJI
+ jr nz, .asm_72e5d
ld hl, LavenderHouse1Text_1d8d1
call PrintText
- jr .asm_6957f ; 0x1d8c6
-.asm_72e5d ; 0x1d8c8
+ jr .asm_6957f
+.asm_72e5d
ld hl, LavenderHouse1Text_1d8d6
call PrintText
-.asm_6957f ; 0x1d8ce
+.asm_6957f
jp TextScriptEnd
LavenderHouse1Text_1d8d1: ; 1d8d1 (7:58d1)
@@ -33,17 +32,16 @@ LavenderHouse1Text_1d8d6: ; 1d8d6 (7:58d6)
db "@"
LavenderHouse1Text2: ; 1d8db (7:58db)
- db $08 ; asm
- ld a, [wd7e0]
- bit 7, a
- jr nz, .asm_06470 ; 0x1d8e1
+ TX_ASM
+ CheckEvent EVENT_RESCUED_MR_FUJI
+ jr nz, .asm_06470
ld hl, LavenderHouse1Text_1d8f4
call PrintText
- jr .asm_3d208 ; 0x1d8e9
-.asm_06470 ; 0x1d8eb
+ jr .asm_3d208
+.asm_06470
ld hl, LavenderHouse1Text_1d8f9
call PrintText
-.asm_3d208 ; 0x1d8f1
+.asm_3d208
jp TextScriptEnd
LavenderHouse1Text_1d8f4: ; 1d8f4 (7:58f4)
@@ -56,41 +54,39 @@ LavenderHouse1Text_1d8f9: ; 1d8f9 (7:58f9)
LavenderHouse1Text3: ; 1d8fe (7:58fe)
TX_FAR _LavenderHouse1Text3
- db $8
+ TX_ASM
ld a, PSYDUCK
call PlayCry
jp TextScriptEnd
LavenderHouse1Text4: ; 1d90b (7:590b)
TX_FAR _LavenderHouse1Text4
- db $8
+ TX_ASM
ld a, NIDORINO
call PlayCry
jp TextScriptEnd
LavenderHouse1Text5: ; 1d918 (7:5918)
- db $08 ; asm
- ld a, [wd76c]
- bit 0, a
- jr nz, .asm_15ac2 ; 0x1d91e
+ TX_ASM
+ CheckEvent EVENT_GOT_POKE_FLUTE
+ jr nz, .asm_15ac2
ld hl, LavenderHouse1Text_1d94c
call PrintText
- ld bc, (POKE_FLUTE << 8) | 1
+ lb bc, POKE_FLUTE, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedFluteText
call PrintText
- ld hl, wd76c
- set 0, [hl]
- jr .asm_da749 ; 0x1d939
+ SetEvent EVENT_GOT_POKE_FLUTE
+ jr .asm_da749
.BagFull
ld hl, FluteNoRoomText
call PrintText
- jr .asm_da749 ; 0x1d941
-.asm_15ac2 ; 0x1d943
+ jr .asm_da749
+.asm_15ac2
ld hl, MrFujiAfterFluteText
call PrintText
-.asm_da749 ; 0x1d949
+.asm_da749
jp TextScriptEnd
LavenderHouse1Text_1d94c: ; 1d94c (7:594c)
diff --git a/scripts/lavenderhouse2.asm b/scripts/lavenderhouse2.asm
index c2120058..fe0b3ee2 100755
--- a/scripts/lavenderhouse2.asm
+++ b/scripts/lavenderhouse2.asm
@@ -8,23 +8,22 @@ LavenderHouse2TextPointers: ; 1d9b2 (7:59b2)
LavenderHouse2Text1: ; 1d9b6 (7:59b6)
TX_FAR _LavenderHouse2Text1
- db $8
+ TX_ASM
ld a, CUBONE
call PlayCry
jp TextScriptEnd
LavenderHouse2Text2: ; 1d9c3 (7:59c3)
- db $08 ; asm
- ld a, [wd7e0]
- bit 7, a
- jr nz, .asm_65711 ; 0x1d9c9
+ TX_ASM
+ CheckEvent EVENT_RESCUED_MR_FUJI
+ jr nz, .asm_65711
ld hl, LavenderHouse2Text_1d9dc
call PrintText
- jr .asm_64be1 ; 0x1d9d1
-.asm_65711 ; 0x1d9d3
+ jr .asm_64be1
+.asm_65711
ld hl, LavenderHouse2Text_1d9e1
call PrintText
-.asm_64be1 ; 0x1d9d9
+.asm_64be1
jp TextScriptEnd
LavenderHouse2Text_1d9dc: ; 1d9dc (7:59dc)
diff --git a/scripts/lavendermart.asm b/scripts/lavendermart.asm
index 3852a235..85518fd2 100755
--- a/scripts/lavendermart.asm
+++ b/scripts/lavendermart.asm
@@ -11,17 +11,16 @@ LavenderMartText2: ; 5c935 (17:4935)
db "@"
LavenderMartText3: ; 5c93a (17:493a)
- db $08 ; asm
- ld a, [wd7e0]
- bit 7, a
- jr nz, .asm_c88d4 ; 0x5c940
+ TX_ASM
+ CheckEvent EVENT_RESCUED_MR_FUJI
+ jr nz, .asm_c88d4
ld hl, LavenderMart_5c953
call PrintText
- jr .asm_6d225 ; 0x5c948
-.asm_c88d4 ; 0x5c94a
+ jr .asm_6d225
+.asm_c88d4
ld hl, LavenderMart_5c958
call PrintText
-.asm_6d225 ; 0x5c950
+.asm_6d225
jp TextScriptEnd
LavenderMart_5c953: ; 5c953 (17:4953)
diff --git a/scripts/lavendertown.asm b/scripts/lavendertown.asm
index a4f1f200..30c6d4e5 100755
--- a/scripts/lavendertown.asm
+++ b/scripts/lavendertown.asm
@@ -13,16 +13,16 @@ LavenderTownTextPointers: ; 4410e (11:410e)
dw LavenderTownText9
LavenderTownText1: ; 44120 (11:4120)
- db $08 ; asm
+ TX_ASM
ld hl, LavenderTownText_4413c
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
ld hl, LavenderTownText_44146
- jr nz, .asm_40831 ; 0x44131
+ jr nz, .asm_40831
ld hl, LavenderTownText_44141
-.asm_40831 ; 0x44136
+.asm_40831
call PrintText
jp TextScriptEnd
diff --git a/scripts/lorelei.asm b/scripts/lorelei.asm
index ab769d94..43eee966 100755
--- a/scripts/lorelei.asm
+++ b/scripts/lorelei.asm
@@ -13,18 +13,17 @@ LoreleiScript_76191: ; 76191 (1d:6191)
bit 5, [hl]
res 5, [hl]
ret z
- ld hl, wd734
+ ld hl, wBeatLorelei
set 1, [hl]
- ld a, [wd863]
- bit 1, a
+ CheckEvent EVENT_BEAT_LORELEIS_ROOM_TRAINER_0
jr z, .asm_761a9
ld a, $5
jr .asm_761ab
.asm_761a9
ld a, $24
.asm_761ab
- ld [wd09f], a
- ld bc, $2
+ ld [wNewTileBlockID], a
+ lb bc, 0, 2
predef_jump ReplaceTileBlock
LoreleiScript_761b6: ; 761b6 (1d:61b6)
@@ -41,7 +40,8 @@ LoreleiScriptPointers: ; 761bb (1d:61bb)
LoreleiScript4: ; 761c5 (1d:61c5)
ret
-asm_761c6: ; 761c6 (1d:61c6)
+
+LoreleiScript_761c6: ; 761c6 (1d:61c6)
ld hl, wSimulatedJoypadStatesEnd
ld a, D_UP
ld [hli], a
@@ -57,6 +57,7 @@ asm_761c6: ; 761c6 (1d:61c6)
ld [W_LORELEICURSCRIPT], a
ld [W_CURMAPSCRIPT], a
ret
+
LoreleiScript0: ; 761e2 (1d:61e2)
ld hl, CoordsData_76223
call ArePlayerCoordsInArray
@@ -66,16 +67,14 @@ LoreleiScript0: ; 761e2 (1d:61e2)
ld [hJoyHeld], a
ld [wSimulatedJoypadStatesEnd], a
ld [wSimulatedJoypadStatesIndex], a
- ld a, [wWhichTrade] ; wWhichTrade
+ ld a, [wCoordIndex]
cp $3
jr c, .asm_76206
- ld hl, wd863
- bit 6, [hl]
- set 6, [hl]
- jr z, asm_761c6
+ CheckAndSetEvent EVENT_AUTOWALKED_INTO_LORELEIS_ROOM
+ jr z, LoreleiScript_761c6
.asm_76206
ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, D_UP
ld [wSimulatedJoypadStatesEnd], a
@@ -106,31 +105,31 @@ LoreleiScript3: ; 7622c (1d:622c)
ret
LoreleiScript2: ; 7623f (1d:623f)
call EndTrainerBattle
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, LoreleiScript_761b6
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
LoreleiTextPointers: ; 76251 (1d:6251)
dw LoreleiText1
- dw LoreleiText2
+ dw LoreleiDontRunAwayText
LoreleiTrainerHeaders: ; 76255 (1d:6255)
LoreleiTrainerHeader0: ; 76255 (1d:6255)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_LORELEIS_ROOM_TRAINER_0
db ($0 << 4) ; trainer's view range
- dw wd863 ; flag's byte
- dw LoreleiBeforeBattleText ; 0x626c TextBeforeBattle
- dw LoreleiAfterBattleText ; 0x6276 TextAfterBattle
- dw LoreleiEndBattleText ; 0x6271 TextEndBattle
- dw LoreleiEndBattleText ; 0x6271 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_LORELEIS_ROOM_TRAINER_0
+ dw LoreleiBeforeBattleText ; TextBeforeBattle
+ dw LoreleiAfterBattleText ; TextAfterBattle
+ dw LoreleiEndBattleText ; TextEndBattle
+ dw LoreleiEndBattleText ; TextEndBattle
db $ff
LoreleiText1: ; 76262 (1d:6262)
- db $08 ; asm
+ TX_ASM
ld hl, LoreleiTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -147,6 +146,6 @@ LoreleiAfterBattleText: ; 76276 (1d:6276)
TX_FAR _LoreleiAfterBattleText
db "@"
-LoreleiText2: ; 7627b (1d:627b)
- TX_FAR _LoreleiText2
+LoreleiDontRunAwayText: ; 7627b (1d:627b)
+ TX_FAR _LoreleiDontRunAwayText
db "@"
diff --git a/scripts/mansion1.asm b/scripts/mansion1.asm
index 3e067a98..bbfb0a0b 100755
--- a/scripts/mansion1.asm
+++ b/scripts/mansion1.asm
@@ -13,47 +13,46 @@ Mansion1Subscript1: ; 442c5 (11:42c5)
bit 5, [hl]
res 5, [hl]
ret z
- ld a, [wd796]
- bit 0, a
- jr nz, .asm_442ec ; 0x442d2 $18
- ld bc, $060c
+ CheckEvent EVENT_MANSION_SWITCH_ON
+ jr nz, .asm_442ec
+ lb bc, 6, 12
call Mansion1Script_4430b
- ld bc, $0308
+ lb bc, 3, 8
call Mansion1Script_44304
- ld bc, $080a
+ lb bc, 8, 10
call Mansion1Script_44304
- ld bc, $0d0d
+ lb bc, 13, 13
jp Mansion1Script_44304
.asm_442ec
- ld bc, $060c
+ lb bc, 6, 12
call Mansion1Script_44304
- ld bc, $0308
+ lb bc, 3, 8
call Mansion1Script_4430b
- ld bc, $080a
+ lb bc, 8, 10
call Mansion1Script_4430b
- ld bc, $0d0d
+ lb bc, 13, 13
jp Mansion1Script_4430b
Mansion1Script_44304: ; 44304 (11:4304)
ld a, $2d
- ld [wd09f], a
- jr asm_44310
+ ld [wNewTileBlockID], a
+ jr Mansion1ReplaceBlock
Mansion1Script_4430b: ; 4430b (11:430b)
ld a, $e
- ld [wd09f], a
-asm_44310: ; 44310 (11:4310)
+ ld [wNewTileBlockID], a
+Mansion1ReplaceBlock: ; 44310 (11:4310)
predef ReplaceTileBlock
ret
Mansion1Script_Switches: ; 44316 (11:4316)
ld a, [wSpriteStateData1 + 9]
- cp $4
+ cp SPRITE_FACING_UP
ret nz
xor a
ld [hJoyHeld], a
ld a, $4
- ld [H_SPRITEHEIGHT], a
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
Mansion1ScriptPointers: ; 44326 (11:4326)
@@ -63,24 +62,24 @@ Mansion1ScriptPointers: ; 44326 (11:4326)
Mansion1TextPointers: ; 4432c (11:432c)
dw Mansion1Text1
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
dw Mansion1Text4
Mansion1TrainerHeaders: ; 44334 (11:4334)
Mansion1TrainerHeader0: ; 44334 (11:4334)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MANSION_1_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd798 ; flag's byte
- dw Mansion1BattleText2 ; 0x434b TextBeforeBattle
- dw Mansion1AfterBattleText2 ; 0x4355 TextAfterBattle
- dw Mansion1EndBattleText2 ; 0x4350 TextEndBattle
- dw Mansion1EndBattleText2 ; 0x4350 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MANSION_1_TRAINER_0
+ dw Mansion1BattleText2 ; TextBeforeBattle
+ dw Mansion1AfterBattleText2 ; TextAfterBattle
+ dw Mansion1EndBattleText2 ; TextEndBattle
+ dw Mansion1EndBattleText2 ; TextEndBattle
db $ff
Mansion1Text1: ; 44341 (11:4341)
- db $08 ; asm
+ TX_ASM
ld hl, Mansion1TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -98,27 +97,25 @@ Mansion1AfterBattleText2: ; 44355 (11:4355)
db "@"
Mansion1Text4: ; 4435a (11:435a)
- db $8
+ TX_ASM
ld hl, MansionSwitchText
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr nz, .asm_4438c ; 0x44368 $22
+ jr nz, .asm_4438c
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, wd126
set 5, [hl]
ld hl, MansionSwitchPressedText
call PrintText
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ ld a, SFX_GO_INSIDE
call PlaySound
- ld hl, wd796
- bit 0, [hl]
- set 0, [hl]
- jr z, .asm_44392 ; 0x44386 $a
- res 0, [hl]
- jr .asm_44392 ; 0x4438a $6
+ CheckAndSetEvent EVENT_MANSION_SWITCH_ON
+ jr z, .asm_44392
+ ResetEventReuseHL EVENT_MANSION_SWITCH_ON
+ jr .asm_44392
.asm_4438c
ld hl, MansionSwitchNotPressedText
call PrintText
diff --git a/scripts/mansion2.asm b/scripts/mansion2.asm
index c643d229..22bc2b12 100755
--- a/scripts/mansion2.asm
+++ b/scripts/mansion2.asm
@@ -13,43 +13,42 @@ Mansion2Script_51fee: ; 51fee (14:5fee)
bit 5, [hl]
res 5, [hl]
ret z
- ld a, [wd796]
- bit 0, a
+ CheckEvent EVENT_MANSION_SWITCH_ON
jr nz, .asm_52016
ld a, $e
- ld bc, $204
+ lb bc, 2, 4
call Mansion2Script_5202f
ld a, $54
- ld bc, $409
+ lb bc, 4, 9
call Mansion2Script_5202f
ld a, $5f
- ld bc, $b03
+ lb bc, 11, 3
call Mansion2Script_5202f
ret
.asm_52016
ld a, $5f
- ld bc, $204
+ lb bc, 2, 4
call Mansion2Script_5202f
ld a, $e
- ld bc, $409
+ lb bc, 4, 9
call Mansion2Script_5202f
ld a, $e
- ld bc, $b03
+ lb bc, 11, 3
call Mansion2Script_5202f
ret
Mansion2Script_5202f: ; 5202f (14:602f)
- ld [wd09f], a
+ ld [wNewTileBlockID], a
predef_jump ReplaceTileBlock
Mansion2Script_Switches: ; 52037 (14:6037)
ld a, [wSpriteStateData1 + 9]
- cp $4
+ cp SPRITE_FACING_UP
ret nz
xor a
ld [hJoyHeld], a
ld a, $5
- ld [H_SPRITEHEIGHT], a
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
Mansion2ScriptPointers: ; 52047 (14:6047)
@@ -59,25 +58,25 @@ Mansion2ScriptPointers: ; 52047 (14:6047)
Mansion2TextPointers: ; 5204d (14:604d)
dw Mansion2Text1
- dw Predef5CText
+ dw PickUpItemText
dw Mansion2Text3
dw Mansion2Text4
dw Mansion2Text5
Mansion2TrainerHeaders: ; 52057 (14:6057)
Mansion2TrainerHeader0: ; 52057 (14:6057)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MANSION_2_TRAINER_0
db ($0 << 4) ; trainer's view range
- dw wd847 ; flag's byte
- dw Mansion2BattleText1 ; 0x606e TextBeforeBattle
- dw Mansion2AfterBattleText1 ; 0x6078 TextAfterBattle
- dw Mansion2EndBattleText1 ; 0x6073 TextEndBattle
- dw Mansion2EndBattleText1 ; 0x6073 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MANSION_2_TRAINER_0
+ dw Mansion2BattleText1 ; TextBeforeBattle
+ dw Mansion2AfterBattleText1 ; TextAfterBattle
+ dw Mansion2EndBattleText1 ; TextEndBattle
+ dw Mansion2EndBattleText1 ; TextEndBattle
db $ff
Mansion2Text1: ; 52064 (14:6064)
- db $08 ; asm
+ TX_ASM
ld hl, Mansion2TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -104,27 +103,25 @@ Mansion2Text4: ; 52082 (14:6082)
Mansion3Text6: ; 52087 (14:6087)
Mansion2Text5: ; 52087 (14:6087)
- db $8
+ TX_ASM
ld hl, Mansion2Text_520c2
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr nz, .asm_520b9 ; 0x52095 $22
+ jr nz, .asm_520b9
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, wd126
set 5, [hl]
ld hl, Mansion2Text_520c7
call PrintText
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ ld a, SFX_GO_INSIDE
call PlaySound
- ld hl, wd796
- bit 0, [hl]
- set 0, [hl]
- jr z, .asm_520bf ; 0x520b3 $a
- res 0, [hl]
- jr .asm_520bf ; 0x520b7 $6
+ CheckAndSetEvent EVENT_MANSION_SWITCH_ON
+ jr z, .asm_520bf
+ ResetEventReuseHL EVENT_MANSION_SWITCH_ON
+ jr .asm_520bf
.asm_520b9
ld hl, Mansion2Text_520cc
call PrintText
diff --git a/scripts/mansion3.asm b/scripts/mansion3.asm
index 6ad02dd9..e49667ef 100755
--- a/scripts/mansion3.asm
+++ b/scripts/mansion3.asm
@@ -13,8 +13,7 @@ Mansion3Script_52204: ; 52204 (14:6204)
bit 5, [hl]
res 5, [hl]
ret z
- ld a, [wd796]
- bit 0, a
+ CheckEvent EVENT_MANSION_SWITCH_ON
jr nz, .asm_52224
ld a, $e
ld bc, $207
@@ -65,7 +64,7 @@ Mansion3Script_5225b: ; 5225b (14:625b)
ret nz
call ArePlayerCoordsInArray
ret nc
- ld a, [wWhichTrade] ; wWhichTrade
+ ld a, [wCoordIndex]
ld [wWhichDungeonWarp], a
ld hl, wd72d
set 4, [hl]
@@ -75,51 +74,51 @@ Mansion3Script_5225b: ; 5225b (14:625b)
Mansion3Script_Switches: ; 5227a (14:627a)
ld a, [wSpriteStateData1 + 9]
- cp $4
+ cp SPRITE_FACING_UP
ret nz
xor a
ld [hJoyHeld], a
ld a, $6
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
Mansion3TextPointers: ; 5228a (14:628a)
dw Mansion3Text1
dw Mansion3Text2
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
dw Mansion3Text5
dw Mansion3Text6
Mansion3TrainerHeaders: ; 52296 (14:6296)
Mansion3TrainerHeader0: ; 52296 (14:6296)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MANSION_3_TRAINER_0
db ($0 << 4) ; trainer's view range
- dw wd849 ; flag's byte
- dw Mansion3BattleText1 ; 0x62c3 TextBeforeBattle
- dw Mansion3AfterBattleText1 ; 0x62cd TextAfterBattle
- dw Mansion3EndBattleText1 ; 0x62c8 TextEndBattle
- dw Mansion3EndBattleText1 ; 0x62c8 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MANSION_3_TRAINER_0
+ dw Mansion3BattleText1 ; TextBeforeBattle
+ dw Mansion3AfterBattleText1 ; TextAfterBattle
+ dw Mansion3EndBattleText1 ; TextEndBattle
+ dw Mansion3EndBattleText1 ; TextEndBattle
Mansion3TrainerHeader2: ; 522a2 (14:62a2)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MANSION_3_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd849 ; flag's byte
- dw Mansion3BattleText2 ; 0x62d2 TextBeforeBattle
- dw Mansion3AfterBattleText2 ; 0x62dc TextAfterBattle
- dw Mansion3EndBattleText2 ; 0x62d7 TextEndBattle
- dw Mansion3EndBattleText2 ; 0x62d7 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MANSION_3_TRAINER_2
+ dw Mansion3BattleText2 ; TextBeforeBattle
+ dw Mansion3AfterBattleText2 ; TextAfterBattle
+ dw Mansion3EndBattleText2 ; TextEndBattle
+ dw Mansion3EndBattleText2 ; TextEndBattle
db $ff
Mansion3Text1: ; 522af (14:62af)
- db $08 ; asm
+ TX_ASM
ld hl, Mansion3TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
Mansion3Text2: ; 522b9 (14:62b9)
- db $08 ; asm
+ TX_ASM
ld hl, Mansion3TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/mansion4.asm b/scripts/mansion4.asm
index b89af5f2..59ee3704 100755
--- a/scripts/mansion4.asm
+++ b/scripts/mansion4.asm
@@ -13,8 +13,7 @@ Mansion4Script_523cf: ; 523cf (14:63cf)
bit 5, [hl]
res 5, [hl]
ret z
- ld a, [wd796]
- bit 0, a
+ CheckEvent EVENT_MANSION_SWITCH_ON
jr nz, .asm_523ff
ld a, $e
ld bc, $80d
@@ -46,12 +45,12 @@ Mansion4Script_523cf: ; 523cf (14:63cf)
Mansion4Script_Switches: ; 52420 (14:6420)
ld a, [wSpriteStateData1 + 9]
- cp $4
+ cp SPRITE_FACING_UP
ret nz
xor a
ld [hJoyHeld], a
ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
Mansion4ScriptPointers: ; 52430 (14:6430)
@@ -62,43 +61,43 @@ Mansion4ScriptPointers: ; 52430 (14:6430)
Mansion4TextPointers: ; 52436 (14:6436)
dw Mansion4Text1
dw Mansion4Text2
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
dw Mansion4Text7
- dw Predef5CText
+ dw PickUpItemText
dw Mansion3Text6
Mansion4TrainerHeaders: ; 52448 (14:6448)
Mansion4TrainerHeader0: ; 52448 (14:6448)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MANSION_4_TRAINER_0
db ($0 << 4) ; trainer's view range
- dw wd84b ; flag's byte
- dw Mansion4BattleText1 ; 0x6475 TextBeforeBattle
- dw Mansion4AfterBattleText1 ; 0x647f TextAfterBattle
- dw Mansion4EndBattleText1 ; 0x647a TextEndBattle
- dw Mansion4EndBattleText1 ; 0x647a TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MANSION_4_TRAINER_0
+ dw Mansion4BattleText1 ; TextBeforeBattle
+ dw Mansion4AfterBattleText1 ; TextAfterBattle
+ dw Mansion4EndBattleText1 ; TextEndBattle
+ dw Mansion4EndBattleText1 ; TextEndBattle
Mansion4TrainerHeader2: ; 52454 (14:6454)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MANSION_4_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd84b ; flag's byte
- dw Mansion4BattleText2 ; 0x6484 TextBeforeBattle
- dw Mansion4AfterBattleText2 ; 0x648e TextAfterBattle
- dw Mansion4EndBattleText2 ; 0x6489 TextEndBattle
- dw Mansion4EndBattleText2 ; 0x6489 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MANSION_4_TRAINER_2
+ dw Mansion4BattleText2 ; TextBeforeBattle
+ dw Mansion4AfterBattleText2 ; TextAfterBattle
+ dw Mansion4EndBattleText2 ; TextEndBattle
+ dw Mansion4EndBattleText2 ; TextEndBattle
db $ff
Mansion4Text1: ; 52461 (14:6461)
- db $08 ; asm
+ TX_ASM
ld hl, Mansion4TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
Mansion4Text2: ; 5246b (14:646b)
- db $08 ; asm
+ TX_ASM
ld hl, Mansion4TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/mtmoon1.asm b/scripts/mtmoon1.asm
index def597ba..4a5eeae3 100755
--- a/scripts/mtmoon1.asm
+++ b/scripts/mtmoon1.asm
@@ -20,118 +20,118 @@ MtMoon1TextPointers: ; 499e1 (12:59e1)
dw MtMoon1Text5
dw MtMoon1Text6
dw MtMoon1Text7
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
dw MtMoon1Text14
MtMoon1TrainerHeaders: ; 499fd (12:59fd)
MtMoon1TrainerHeader0: ; 499fd (12:59fd)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd7f5 ; flag's byte
- dw MtMoon1BattleText2 ; 0x5a98 TextBeforeBattle
- dw MtMoon1AfterBattleText2 ; 0x5aa2 TextAfterBattle
- dw MtMoon1EndBattleText2 ; 0x5a9d TextEndBattle
- dw MtMoon1EndBattleText2 ; 0x5a9d TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_0
+ dw MtMoon1BattleText2 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText2 ; TextAfterBattle
+ dw MtMoon1EndBattleText2 ; TextEndBattle
+ dw MtMoon1EndBattleText2 ; TextEndBattle
MtMoon1TrainerHeader2: ; 49a09 (12:5a09)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd7f5 ; flag's byte
- dw MtMoon1BattleText3 ; 0x5aa7 TextBeforeBattle
- dw MtMoon1AfterBattleText3 ; 0x5ab1 TextAfterBattle
- dw MtMoon1EndBattleText3 ; 0x5aac TextEndBattle
- dw MtMoon1EndBattleText3 ; 0x5aac TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_2
+ dw MtMoon1BattleText3 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText3 ; TextAfterBattle
+ dw MtMoon1EndBattleText3 ; TextEndBattle
+ dw MtMoon1EndBattleText3 ; TextEndBattle
MtMoon1TrainerHeader3: ; 49a15 (12:5a15)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd7f5 ; flag's byte
- dw MtMoon1BattleText4 ; 0x5ab6 TextBeforeBattle
- dw MtMoon1AfterBattleText4 ; 0x5ac0 TextAfterBattle
- dw MtMoon1EndBattleText4 ; 0x5abb TextEndBattle
- dw MtMoon1EndBattleText4 ; 0x5abb TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_3
+ dw MtMoon1BattleText4 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText4 ; TextAfterBattle
+ dw MtMoon1EndBattleText4 ; TextEndBattle
+ dw MtMoon1EndBattleText4 ; TextEndBattle
MtMoon1TrainerHeader4: ; 49a21 (12:5a21)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_4
db ($3 << 4) ; trainer's view range
- dw wd7f5 ; flag's byte
- dw MtMoon1BattleText5 ; 0x5ac5 TextBeforeBattle
- dw MtMoon1AfterBattleText5 ; 0x5acf TextAfterBattle
- dw MtMoon1EndBattleText5 ; 0x5aca TextEndBattle
- dw MtMoon1EndBattleText5 ; 0x5aca TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_4
+ dw MtMoon1BattleText5 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText5 ; TextAfterBattle
+ dw MtMoon1EndBattleText5 ; TextEndBattle
+ dw MtMoon1EndBattleText5 ; TextEndBattle
MtMoon1TrainerHeader5: ; 49a2d (12:5a2d)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_5
db ($3 << 4) ; trainer's view range
- dw wd7f5 ; flag's byte
- dw MtMoon1BattleText6 ; 0x5ad4 TextBeforeBattle
- dw MtMoon1AfterBattleText6 ; 0x5ade TextAfterBattle
- dw MtMoon1EndBattleText6 ; 0x5ad9 TextEndBattle
- dw MtMoon1EndBattleText6 ; 0x5ad9 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_5
+ dw MtMoon1BattleText6 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText6 ; TextAfterBattle
+ dw MtMoon1EndBattleText6 ; TextEndBattle
+ dw MtMoon1EndBattleText6 ; TextEndBattle
MtMoon1TrainerHeader6: ; 49a39 (12:5a39)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_6
db ($3 << 4) ; trainer's view range
- dw wd7f5 ; flag's byte
- dw MtMoon1BattleText7 ; 0x5ae3 TextBeforeBattle
- dw MtMoon1AfterBattleText7 ; 0x5aed TextAfterBattle
- dw MtMoon1EndBattleText7 ; 0x5ae8 TextEndBattle
- dw MtMoon1EndBattleText7 ; 0x5ae8 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_6
+ dw MtMoon1BattleText7 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText7 ; TextAfterBattle
+ dw MtMoon1EndBattleText7 ; TextEndBattle
+ dw MtMoon1EndBattleText7 ; TextEndBattle
MtMoon1TrainerHeader7: ; 49a45 (12:5a45)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_7
db ($3 << 4) ; trainer's view range
- dw wd7f5 ; flag's byte
- dw MtMoon1BattleText8 ; 0x5af2 TextBeforeBattle
- dw MtMoon1AfterBattleText8 ; 0x5afc TextAfterBattle
- dw MtMoon1EndBattleText8 ; 0x5af7 TextEndBattle
- dw MtMoon1EndBattleText8 ; 0x5af7 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_7
+ dw MtMoon1BattleText8 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText8 ; TextAfterBattle
+ dw MtMoon1EndBattleText8 ; TextEndBattle
+ dw MtMoon1EndBattleText8 ; TextEndBattle
db $ff
MtMoon1Text1: ; 49a52 (12:5a52)
- db $08 ; asm
+ TX_ASM
ld hl, MtMoon1TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
MtMoon1Text2: ; 49a5c (12:5a5c)
- db $08 ; asm
+ TX_ASM
ld hl, MtMoon1TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
MtMoon1Text3: ; 49a66 (12:5a66)
- db $08 ; asm
+ TX_ASM
ld hl, MtMoon1TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
MtMoon1Text4: ; 49a70 (12:5a70)
- db $08 ; asm
+ TX_ASM
ld hl, MtMoon1TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
MtMoon1Text5: ; 49a7a (12:5a7a)
- db $08 ; asm
+ TX_ASM
ld hl, MtMoon1TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
MtMoon1Text6: ; 49a84 (12:5a84)
- db $08 ; asm
+ TX_ASM
ld hl, MtMoon1TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
MtMoon1Text7: ; 49a8e (12:5a8e)
- db $08 ; asm
+ TX_ASM
ld hl, MtMoon1TrainerHeader7
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/mtmoon3.asm b/scripts/mtmoon3.asm
index eb0fc301..84c00981 100755
--- a/scripts/mtmoon3.asm
+++ b/scripts/mtmoon3.asm
@@ -1,16 +1,15 @@
MtMoon3Script: ; 49d0b (12:5d0b)
call EnableAutoTextBoxDrawing
- ld hl, MtMoon3TrainerHeader0 ; $5e48
+ ld hl, MtMoon3TrainerHeader0
ld de, MtMoon3ScriptPointers
ld a, [W_MTMOON3CURSCRIPT]
call ExecuteCurMapScriptInTable
ld [W_MTMOON3CURSCRIPT], a
- ld a, [wd7f6]
- bit 1, a
+ CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
ret z
ld hl, CoordsData_49d37
call ArePlayerCoordsInArray
- jr nc, .asm_49d31 ; 0x49d29 $6
+ jr nc, .asm_49d31
ld hl, wd72e
set 4, [hl]
ret
@@ -54,35 +53,32 @@ MtMoon3ScriptPointers: ; 49d63 (12:5d63)
dw MtMoon3Script5
MtMoon3Script0: ; 49d6f (12:5d6f)
- ld a, [wd7f6]
- bit 1, a
+ CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
jp nz, MtMoon3Script_49d91
- ld a, [W_YCOORD] ; wd361
+ ld a, [W_YCOORD]
cp $8
jp nz, MtMoon3Script_49d91
- ld a, [W_XCOORD] ; wd362
+ ld a, [W_XCOORD]
cp $d
jp nz, MtMoon3Script_49d91
xor a
ld [hJoyHeld], a
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
MtMoon3Script_49d91: ; 49d91 (12:5d91)
- ld a, [wd7f6]
- and $c0
+ CheckEitherEventSet EVENT_GOT_DOME_FOSSIL, EVENT_GOT_HELIX_FOSSIL
jp z, CheckFightingMapTrainers
ret
MtMoon3Script3: ; 49d9a (12:5d9a)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, MtMoon3Script_49d58
call UpdateSprites
call Delay3
- ld hl, wd7f6
- set 1, [hl]
+ SetEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
xor a
ld [wJoyIgnore], a
ld a, $0
@@ -92,7 +88,7 @@ MtMoon3Script3: ; 49d9a (12:5d9a)
MtMoon3Script4: ; 49dba (12:5dba)
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
ld hl, CoordsData_49dea
call ArePlayerCoordsInArray
@@ -106,7 +102,7 @@ MtMoon3Script4: ; 49dba (12:5dba)
ld de, MovementData_49df8
.asm_49dda
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $5
ld [W_MTMOON3CURSCRIPT], a
@@ -126,10 +122,10 @@ CoordsData_49df1: ; 49df1 (12:5df1)
db $FF
MovementData_49df8: ; 49df8 (12:5df8)
- db $C0
+ db NPC_MOVEMENT_RIGHT
MovementData_49df9: ; 49df9 (12:5df9)
- db $40,$FF
+ db NPC_MOVEMENT_UP,$FF
MtMoon3Script5: ; 49dfb (12:5dfb)
ld a, [wd730]
@@ -140,17 +136,16 @@ MtMoon3Script5: ; 49dfb (12:5dfb)
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld a, $a
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld a, [wd7f6]
- bit 6, a
+ CheckEvent EVENT_GOT_DOME_FOSSIL
jr z, .asm_49e1d
ld a, HS_MT_MOON_3_FOSSIL_2
jr .asm_49e1f
.asm_49e1d
ld a, HS_MT_MOON_3_FOSSIL_1
.asm_49e1f
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
xor a
ld [wJoyIgnore], a
@@ -167,60 +162,59 @@ MtMoon3TextPointers: ; 49e34 (12:5e34)
dw MtMoon3Text5
dw MtMoon3Text6
dw MtMoon3Text7
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
dw MtMoon3Text_49f99
MtMoon3TrainerHeaders: ; 49e48 (12:5e48)
MtMoon3TrainerHeader0: ; 49e48 (12:5e48)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd7f6 ; flag's byte
- dw MtMoon3BattleText2 ; 0x5f9f TextBeforeBattle
- dw MtMoon3AfterBattleText2 ; 0x5fa9 TextAfterBattle
- dw MtMoon3EndBattleText2 ; 0x5fa4 TextEndBattle
- dw MtMoon3EndBattleText2 ; 0x5fa4 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_0
+ dw MtMoon3BattleText2 ; TextBeforeBattle
+ dw MtMoon3AfterBattleText2 ; TextAfterBattle
+ dw MtMoon3EndBattleText2 ; TextEndBattle
+ dw MtMoon3EndBattleText2 ; TextEndBattle
MtMoon3TrainerHeader2: ; 49e54 (12:5e54)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd7f6 ; flag's byte
- dw MtMoon3BattleText3 ; 0x5fae TextBeforeBattle
- dw MtMoon3AfterBattleText3 ; 0x5fb8 TextAfterBattle
- dw MtMoon3EndBattleText3 ; 0x5fb3 TextEndBattle
- dw MtMoon3EndBattleText3 ; 0x5fb3 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_2
+ dw MtMoon3BattleText3 ; TextBeforeBattle
+ dw MtMoon3AfterBattleText3 ; TextAfterBattle
+ dw MtMoon3EndBattleText3 ; TextEndBattle
+ dw MtMoon3EndBattleText3 ; TextEndBattle
MtMoon3TrainerHeader3: ; 49e60 (12:5e60)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_3
db ($4 << 4) ; trainer's view range
- dw wd7f6 ; flag's byte
- dw MtMoon3BattleText4 ; 0x5fbd TextBeforeBattle
- dw MtMoon3AfterBattleText4 ; 0x5fc7 TextAfterBattle
- dw MtMoon3EndBattleText4 ; 0x5fc2 TextEndBattle
- dw MtMoon3EndBattleText4 ; 0x5fc2 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_3
+ dw MtMoon3BattleText4 ; TextBeforeBattle
+ dw MtMoon3AfterBattleText4 ; TextAfterBattle
+ dw MtMoon3EndBattleText4 ; TextEndBattle
+ dw MtMoon3EndBattleText4 ; TextEndBattle
MtMoon3TrainerHeader4: ; 49e6c (12:5e6c)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_4
db ($4 << 4) ; trainer's view range
- dw wd7f6 ; flag's byte
- dw MtMoon3BattleText5 ; 0x5fcc TextBeforeBattle
- dw MtMoon3AfterBattleText5 ; 0x5fd6 TextAfterBattle
- dw MtMoon3EndBattleText5 ; 0x5fd1 TextEndBattle
- dw MtMoon3EndBattleText5 ; 0x5fd1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_4
+ dw MtMoon3BattleText5 ; TextBeforeBattle
+ dw MtMoon3AfterBattleText5 ; TextAfterBattle
+ dw MtMoon3EndBattleText5 ; TextEndBattle
+ dw MtMoon3EndBattleText5 ; TextEndBattle
db $ff
MtMoon3Text1: ; 49e79 (12:5e79)
- db $08 ; asm
- ld a, [wd7f6]
- bit 1, a
- jr z, .asm_be1e0 ; 0x49e7f
+ TX_ASM
+ CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
+ jr z, .asm_49e8d
and $c0
- jr nz, .asm_f8cd4 ; 0x49e83
+ jr nz, .asm_49eb8
ld hl, MtMoon3Text_49f8f
call PrintText
- jr .asm_f1fba ; 0x49e8b
-.asm_be1e0 ; 0x49e8d
+ jr .asm_49ebe
+.asm_49e8d
ld hl, MtMoon3Text_49f85
call PrintText
ld hl, wd72d
@@ -229,46 +223,46 @@ MtMoon3Text1: ; 49e79 (12:5e79)
ld hl, MtMoon3Text_49f8a
ld de, MtMoon3Text_49f8a
call SaveEndBattleTextPointers
- ldh a, [$8c]
+ ld a, [H_SPRITEINDEX]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
ld a, $3
ld [W_MTMOON3CURSCRIPT], a
ld [W_CURMAPSCRIPT], a
- jr .asm_f1fba ; 0x49eb6
-.asm_f8cd4 ; 0x49eb8
+ jr .asm_49ebe
+.asm_49eb8
ld hl, MtMoon3Text_49f94
call PrintText
-.asm_f1fba ; 0x49ebe
+.asm_49ebe
jp TextScriptEnd
MtMoon3Text2: ; 49ec1 (12:5ec1)
- db $08 ; asm
+ TX_ASM
ld hl, MtMoon3TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
MtMoon3Text3: ; 49ecb (12:5ecb)
- db $08 ; asm
+ TX_ASM
ld hl, MtMoon3TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
MtMoon3Text4: ; 49ed5 (12:5ed5)
- db $08 ; asm
+ TX_ASM
ld hl, MtMoon3TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
MtMoon3Text5: ; 49edf (12:5edf)
- db $08 ; asm
- ld hl, MtMoon3TrainerHeader4 ; $5e6c
+ TX_ASM
+ ld hl, MtMoon3TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
MtMoon3Text6: ; 49ee9 (12:5ee9)
- db $08 ; asm
+ TX_ASM
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, MtMoon3Text_49f24
@@ -276,20 +270,19 @@ MtMoon3Text6: ; 49ee9 (12:5ee9)
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr nz, .asm_1fa5e ; 0x49efc
- ld bc,(DOME_FOSSIL << 8) | 1
+ jr nz, .asm_49f21
+ lb bc, DOME_FOSSIL, 1
call GiveItem
jp nc, MtMoon3Script_49f76
call MtMoon3Script_49f69
ld a, HS_MT_MOON_3_FOSSIL_1
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
- ld hl, wd7f6
- set 6, [hl]
+ SetEvent EVENT_GOT_DOME_FOSSIL
ld a, $4
ld [W_MTMOON3CURSCRIPT], a
ld [W_CURMAPSCRIPT], a
-.asm_1fa5e ; 0x49f21
+.asm_49f21
jp TextScriptEnd
MtMoon3Text_49f24: ; 49f24 (12:5f24)
@@ -297,7 +290,7 @@ MtMoon3Text_49f24: ; 49f24 (12:5f24)
db "@"
MtMoon3Text7: ; 49f29 (12:5f29)
- db $08 ; asm
+ TX_ASM
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, MtMoon3Text_49f64
@@ -305,20 +298,19 @@ MtMoon3Text7: ; 49f29 (12:5f29)
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr nz, .asm_8e988 ; 0x49f3c
- ld bc, (HELIX_FOSSIL << 8) | 1
+ jr nz, .asm_49f61
+ lb bc, HELIX_FOSSIL, 1
call GiveItem
jp nc, MtMoon3Script_49f76
call MtMoon3Script_49f69
ld a, HS_MT_MOON_3_FOSSIL_2
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
- ld hl, wd7f6
- set 7, [hl]
+ SetEvent EVENT_GOT_HELIX_FOSSIL
ld a, $4
ld [W_MTMOON3CURSCRIPT], a
ld [W_CURMAPSCRIPT], a
-.asm_8e988 ; 0x49f61
+.asm_49f61
jp TextScriptEnd
MtMoon3Text_49f64: ; 49f64 (12:5f64)
@@ -330,7 +322,7 @@ MtMoon3Script_49f69: ; 49f69 (12:5f69)
jp PrintText
MtMoon3Text_49f6f: ; 49f6f (12:5f6f)
- TX_FAR _MtMoon3Text_49f6f ; 0x80995
+ TX_FAR _MtMoon3Text_49f6f
db $11, $d, "@"
MtMoon3Script_49f76: ; 49f76 (12:5f76)
@@ -339,7 +331,7 @@ MtMoon3Script_49f76: ; 49f76 (12:5f76)
jp TextScriptEnd
MtMoon3Text_49f7f: ; 49f7f (12:5f7f)
- TX_FAR _MtMoon3Text_49f7f ; 0x809a8
+ TX_FAR _MtMoon3Text_49f7f
db $d, "@"
MtMoon3Text_49f85: ; 49f85 (12:5f85)
diff --git a/scripts/mtmoonpokecenter.asm b/scripts/mtmoonpokecenter.asm
index 080a64fe..fd3e4e53 100755
--- a/scripts/mtmoonpokecenter.asm
+++ b/scripts/mtmoonpokecenter.asm
@@ -22,54 +22,52 @@ MtMoonPokecenterText3: ; 492e7 (12:52e7)
db "@"
MtMoonPokecenterText4: ; 492ec (12:52ec)
- db $08 ; asm
- ld a, [wd7c6]
- add a
- jp c, .asm_49353
+ TX_ASM
+ CheckEvent EVENT_BOUGHT_MAGIKARP, 1
+ jp c, .alreadyBoughtMagikarp
ld hl, MtMoonPokecenterText_4935c
call PrintText
- ld a, $13
+ ld a, MONEY_BOX
ld [wTextBoxID], a
call DisplayTextBoxID
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jp nz, .asm_4934e
- ld [$ff9f], a
- ld [$ffa1], a
+ jp nz, .choseNo
+ ld [hMoney], a
+ ld [hMoney + 2], a
ld a, $5
- ld [$ffa0], a
+ ld [hMoney + 1], a
call HasEnoughMoney
- jr nc, .asm_faa09 ; 0x49317
+ jr nc, .enoughMoney
ld hl, MtMoonPokecenterText_49366
- jr .asm_49356 ; 0x4931c
-.asm_faa09 ; 0x4931e
- ld bc,(MAGIKARP << 8) | 5
+ jr .printText
+.enoughMoney
+ lb bc, MAGIKARP, 5
call GivePokemon
- jr nc, .asm_49359 ; 0x49324
+ jr nc, .done
xor a
- ld [wWhichTrade], a
- ld [wTrainerFacingDirection], a
+ ld [wPriceTemp], a
+ ld [wPriceTemp + 2], a
ld a, $5
- ld [wTrainerEngageDistance], a
- ld hl, wTrainerFacingDirection
+ ld [wPriceTemp + 1], a
+ ld hl, wPriceTemp + 2
ld de, wPlayerMoney + 2
ld c, $3
predef SubBCDPredef
- ld a, $13
+ ld a, MONEY_BOX
ld [wTextBoxID], a
call DisplayTextBoxID
- ld hl, wd7c6
- set 7, [hl]
- jr .asm_49359 ; 0x4934c
-.asm_4934e ; 0x4934e
+ SetEvent EVENT_BOUGHT_MAGIKARP
+ jr .done
+.choseNo
ld hl, MtMoonPokecenterText_49361
- jr .asm_49356 ; 0x49351
-.asm_49353 ; 0x49353
+ jr .printText
+.alreadyBoughtMagikarp
ld hl, MtMoonPokecenterText_4936b
-.asm_49356 ; 0x49356
+.printText
call PrintText
-.asm_49359 ; 0x49359
+.done
jp TextScriptEnd
MtMoonPokecenterText_4935c: ; 4935c (12:535c)
diff --git a/scripts/museum1f.asm b/scripts/museum1f.asm
index cd2b3c29..ac552c6d 100755
--- a/scripts/museum1f.asm
+++ b/scripts/museum1f.asm
@@ -17,7 +17,7 @@ Museum1FScript0: ; 5c10d (17:410d)
ret nz
ld a, [W_XCOORD]
cp $9
- jr z, .asm_5c120 ; 0x5c118 $6
+ jr z, .asm_5c120
ld a, [W_XCOORD]
cp $a
ret nz
@@ -25,7 +25,7 @@ Museum1FScript0: ; 5c10d (17:410d)
xor a
ld [hJoyHeld], a
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
Museum1FScript1: ; 5c12a (17:412a)
@@ -39,7 +39,7 @@ Museum1FTextPointers: ; 5c12b (17:412b)
dw Museum1FText5
Museum1FText1: ; 5c135 (17:4135)
- db $8
+ TX_ASM
ld a, [W_YCOORD]
cp $4
jr nz, .asm_8774b
@@ -54,22 +54,20 @@ Museum1FText1: ; 5c135 (17:4135)
cp $c
jp z, Museum1FScript_5c1f9
.asm_d49e7
- ld a, [wd754]
- bit 0, a
+ CheckEvent EVENT_BOUGHT_MUSEUM_TICKET
jr nz, .asm_31a16
ld hl, Museum1FText_5c23d
call PrintText
- jp asm_d1145
+ jp Museum1FScriptEnd
.asm_b8709
- ld a, [wd754]
- bit 0, a
+ CheckEvent EVENT_BOUGHT_MUSEUM_TICKET
jr z, .asm_3ded4
.asm_31a16
ld hl, Museum1FText_5c242
call PrintText
- jp asm_d1145
+ jp Museum1FScriptEnd
.asm_3ded4
- ld a, $13
+ ld a, MONEY_BOX
ld [wTextBoxID], a
call DisplayTextBoxID
xor a
@@ -81,10 +79,10 @@ Museum1FText1: ; 5c135 (17:4135)
and a
jr nz, .asm_de133
xor a
- ld [$ff9f], a
- ld [$ffa0], a
+ ld [hMoney], a
+ ld [hMoney + 1], a
ld a, $50
- ld [$ffa1], a
+ ld [hMoney + 2], a
call HasEnoughMoney
jr nc, .asm_0f3e3
ld hl, Museum1FText_5c229
@@ -93,38 +91,37 @@ Museum1FText1: ; 5c135 (17:4135)
.asm_0f3e3
ld hl, Museum1FText_5c224
call PrintText
- ld hl, wd754
- set 0, [hl]
+ SetEvent EVENT_BOUGHT_MUSEUM_TICKET
xor a
- ld [wWhichTrade], a
- ld [wTrainerEngageDistance], a
+ ld [wPriceTemp], a
+ ld [wPriceTemp + 1], a
ld a, $50
- ld [wTrainerFacingDirection], a
- ld hl, wTrainerFacingDirection
+ ld [wPriceTemp + 2], a
+ ld hl, wPriceTemp + 2
ld de, wPlayerMoney + 2
ld c, $3
predef SubBCDPredef
- ld a, $13
+ ld a, MONEY_BOX
ld [wTextBoxID], a
call DisplayTextBoxID
- ld a, (SFX_02_5a - SFX_Headers_02) / 3
+ ld a, SFX_PURCHASE
call PlaySoundWaitForCurrent
call WaitForSoundToFinish
jr .asm_0b094
.asm_de133
- ld hl, Museum1FText_5c21a ; $421a
+ ld hl, Museum1FText_5c21a
call PrintText
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
- ld a, $80
+ ld a, D_DOWN
ld [wSimulatedJoypadStatesEnd], a
call StartSimulatingJoypadStates
call UpdateSprites
- jr asm_d1145
+ jr Museum1FScriptEnd
.asm_0b094
ld a, $1
ld [W_MUSEUM1FCURSCRIPT], a
- jr asm_d1145
+ jr Museum1FScriptEnd
Museum1FScript_5c1f9: ; 5c1f9 (17:41f9)
ld hl, Museum1FText_5c22e
@@ -135,11 +132,11 @@ Museum1FScript_5c1f9: ; 5c1f9 (17:41f9)
jr nz, .asm_d1144
ld hl, Museum1FText_5c233
call PrintText
- jr asm_d1145
+ jr Museum1FScriptEnd
.asm_d1144
ld hl, Museum1FText_5c238
call PrintText
-asm_d1145: ; 5c217 (17:4217)
+Museum1FScriptEnd: ; 5c217 (17:4217)
jp TextScriptEnd
Museum1FText_5c21a: ; 5c21a (17:421a)
@@ -179,7 +176,7 @@ Museum1FText_5c242: ; 5c242 (17:4242)
db "@"
Museum1FText2: ; 5c247 (17:4247)
- db $08 ; asm
+ TX_ASM
ld hl, Museum1FText_5c251
call PrintText
jp TextScriptEnd
@@ -189,28 +186,26 @@ Museum1FText_5c251: ; 5c251 (17:4251)
db "@"
Museum1FText3: ; 5c256 (17:4256)
- db $08 ; asm
- ld a, [wd754]
- bit 1, a
- jr nz, .asm_16599 ; 0x5c25c
+ TX_ASM
+ CheckEvent EVENT_GOT_OLD_AMBER
+ jr nz, .asm_5c285
ld hl, Museum1FText_5c28e
call PrintText
- ld bc, (OLD_AMBER << 8) | 1
+ lb bc, OLD_AMBER, 1
call GiveItem
jr nc, .BagFull
- ld hl, wd754
- set 1, [hl]
+ SetEvent EVENT_GOT_OLD_AMBER
ld a, HS_OLD_AMBER
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld hl, ReceivedOldAmberText
- jr .asm_52e0f ; 0x5c27e
+ jr .asm_5c288
.BagFull
ld hl, Museum1FText_5c29e
- jr .asm_52e0f ; 0x5c283
-.asm_16599 ; 0x5c285
+ jr .asm_5c288
+.asm_5c285
ld hl, Museum1FText_5c299
-.asm_52e0f ; 0x5c288
+.asm_5c288
call PrintText
jp TextScriptEnd
@@ -231,7 +226,7 @@ Museum1FText_5c29e: ; 5c29e (17:429e)
db "@"
Museum1FText4: ; 5c2a3 (17:42a3)
- db $08 ; asm
+ TX_ASM
ld hl, Museum1FText_5c2ad
call PrintText
jp TextScriptEnd
@@ -241,7 +236,7 @@ Museum1FText_5c2ad: ; 5c2ad (17:42ad)
db "@"
Museum1FText5: ; 5c2b2 (17:42b2)
- db $08 ; asm
+ TX_ASM
ld hl, Museum1FText_5c2bc
call PrintText
jp TextScriptEnd
diff --git a/scripts/namerater.asm b/scripts/namerater.asm
index c9e3bfb4..42b82b62 100755
--- a/scripts/namerater.asm
+++ b/scripts/namerater.asm
@@ -10,15 +10,15 @@ NameRaterScript_1da15: ; 1da15 (7:5a15)
NameRaterScript_1da20: ; 1da20 (7:5a20)
ld hl, wPartyMonOT
- ld bc, $000b
+ ld bc, NAME_LENGTH
ld a, [wWhichPokemon]
call AddNTimes
ld de, wPlayerName
- ld c, $b
+ ld c, NAME_LENGTH
call .asm_1da47
- jr c, .asm_1da52 ; 0x1da34 $1c
+ jr c, .asm_1da52
ld hl, wPartyMon1OTID
- ld bc, $002c
+ ld bc, wPartyMon2 - wPartyMon1
ld a, [wWhichPokemon]
call AddNTimes
ld de, wPlayerID
@@ -26,11 +26,11 @@ NameRaterScript_1da20: ; 1da20 (7:5a20)
.asm_1da47
ld a, [de]
cp [hl]
- jr nz, .asm_1da52 ; 0x1da49 $7
+ jr nz, .asm_1da52
inc hl
inc de
dec c
- jr nz, .asm_1da47 ; 0x1da4e $f7
+ jr nz, .asm_1da47
and a
ret
.asm_1da52
@@ -41,15 +41,15 @@ NameRaterTextPointers: ; 1da54 (7:5a54)
dw NameRaterText1
NameRaterText1: ; 1da56 (7:5a56)
- db $8
+ TX_ASM
call SaveScreenTilesToBuffer2
ld hl, NameRaterText_1dab3
call NameRaterScript_1da15
- jr nz, .asm_1daae ; 0x1da60 $4c
+ jr nz, .asm_1daae
ld hl, NameRaterText_1dab8
call PrintText
xor a
- ld [wd07d], a
+ ld [wPartyMenuTypeOrMessageID], a
ld [wUpdateSpritesEnabled], a
ld [wMenuItemToSwap], a
call DisplayPartyMenu
@@ -58,25 +58,25 @@ NameRaterText1: ; 1da56 (7:5a56)
call RestoreScreenTilesAndReloadTilePatterns
call LoadGBPal
pop af
- jr c, .asm_1daae ; 0x1da80 $2c
+ jr c, .asm_1daae
call GetPartyMonName2
call NameRaterScript_1da20
ld hl, NameRaterText_1dad1
- jr c, .asm_1daa8 ; 0x1da8b $1b
+ jr c, .asm_1daa8
ld hl, NameRaterText_1dabd
call NameRaterScript_1da15
- jr nz, .asm_1daae ; 0x1da93 $19
+ jr nz, .asm_1daae
ld hl, NameRaterText_1dac2
call PrintText
- callba Func_655c
- jr c, .asm_1daae ; 0x1daa3 $9
+ callba DisplayNameRaterScreen
+ jr c, .asm_1daae
ld hl, NameRaterText_1dac7
.asm_1daa8
call PrintText
jp TextScriptEnd
.asm_1daae
ld hl, NameRaterText_1dacc
- jr .asm_1daa8 ; 0x1dab1 $f5
+ jr .asm_1daa8
NameRaterText_1dab3: ; 1dab3 (7:5ab3)
TX_FAR _NameRaterText_1dab3
diff --git a/scripts/oakslab.asm b/scripts/oakslab.asm
index 8f23cd3e..c5ca2e6e 100755
--- a/scripts/oakslab.asm
+++ b/scripts/oakslab.asm
@@ -1,6 +1,5 @@
OaksLabScript: ; 1cb0e (7:4b0e)
- ld a, [wd74b]
- bit 6, a
+ CheckEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS_2
call nz, OaksLabScript_1d076
ld a, $1
ld [wAutoTextBoxDrawingControl], a
@@ -32,14 +31,13 @@ OaksLabScriptPointers: ; 1cb28 (7:4b28)
dw OaksLabScript18
OaksLabScript0: ; 1cb4e (7:4b4e)
- ld a, [wd74b]
- bit 7, a
+ CheckEvent EVENT_OAK_APPEARED_IN_PALLET
ret z
ld a, [wNPCMovementScriptFunctionNum]
and a
ret nz
ld a, HS_OAKS_LAB_OAK_2
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
ld hl, wd72e
res 4, [hl]
@@ -59,17 +57,20 @@ OaksLabScript1: ; 1cb6e (7:4b6e)
ret
OakEntryMovement: ; 1cb7e (7:4b7e)
- db $40,$40,$40,$FF
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db $FF
OaksLabScript2: ; 1cb82 (7:4b82)
ld a, [wd730]
bit 0, a
ret nz
ld a, HS_OAKS_LAB_OAK_2
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_OAKS_LAB_OAK_1
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
ld a, $3
@@ -87,12 +88,12 @@ OaksLabScript3: ; 1cba2 (7:4ba2)
ld a, $1
ld [H_SPRITEINDEX], a
xor a
- ld [$ff8d], a
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, $5
ld [H_SPRITEINDEX], a
xor a
- ld [$ff8d], a
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, $4
@@ -100,20 +101,19 @@ OaksLabScript3: ; 1cba2 (7:4ba2)
ret
PlayerEntryMovementRLE: ; 1cbcf (7:4bcf)
- db $40, $8, $ff
+ db D_UP,$8
+ db $ff
OaksLabScript4: ; 1cbd2 (7:4bd2)
ld a, [wSimulatedJoypadStatesIndex]
and a
ret nz
- ld hl, wd747
- set 0, [hl]
- ld hl, wd74b
- set 0, [hl]
+ SetEvent EVENT_FOLLOWED_OAK_INTO_LAB
+ SetEvent EVENT_FOLLOWED_OAK_INTO_LAB_2
ld a, $1
ld [H_SPRITEINDEX], a
- ld a, $4
- ld [$ff8d], a
+ ld a, SPRITE_FACING_UP
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
call UpdateSprites
ld hl, W_FLAGS_D733
@@ -128,22 +128,21 @@ OaksLabScript5: ; 1cbfd (7:4bfd)
ld a, $fc
ld [wJoyIgnore], a
ld a, $11
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call Delay3
ld a, $12
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call Delay3
ld a, $13
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call Delay3
ld a, $14
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd74b
- set 1, [hl]
+ SetEvent EVENT_OAK_ASKED_TO_CHOOSE_MON
xor a
ld [wJoyIgnore], a
@@ -157,25 +156,25 @@ OaksLabScript6: ; 1cc36 (7:4c36)
ret nz
ld a, $5
ld [H_SPRITEINDEX], a
- xor a
- ld [$ff8d], a
+ xor a ; SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, $1
ld [H_SPRITEINDEX], a
xor a
- ld [$ff8d], a
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
call UpdateSprites
ld a, $c
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
- ld a, $40
+ ld a, D_UP
ld [wSimulatedJoypadStatesEnd], a
call StartSimulatingJoypadStates
- ld a, $8
- ld [wd528], a
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
ld a, $7
ld [W_OAKSLABCURSCRIPT], a
@@ -194,46 +193,70 @@ OaksLabScript7: ; 1cc72 (7:4c72)
OaksLabScript8: ; 1cc80 (7:4c80)
ld a, [W_PLAYERSTARTER]
cp STARTER1
- jr z, .Charmander ; 0x1cc85 $6
+ jr z, .Charmander
cp STARTER2
- jr z, .Squirtle ; 0x1cc89 $1d
- jr .Bulbasaur ; 0x1cc8b $38
+ jr z, .Squirtle
+ jr .Bulbasaur
.Charmander
ld de, .MiddleBallMovement1
ld a, [W_YCOORD]
cp $4 ; is the player standing below the table?
- jr z, .asm_1ccf3 ; 0x1cc95 $5c
+ jr z, .asm_1ccf3
ld de, .MiddleBallMovement2
- jr .asm_1ccf3 ; 0x1cc9a $57
+ jr .asm_1ccf3
.MiddleBallMovement1
- db 0,0,$C0,$C0,$C0,$40,$FF
+ 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
+
.MiddleBallMovement2
- db 0,$C0,$C0,$C0,$FF
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
.Squirtle
ld de, .RightBallMovement1
ld a, [W_YCOORD]
cp $4 ; is the player standing below the table?
- jr z, .asm_1ccf3 ; 0x1ccb0 $41
+ jr z, .asm_1ccf3
ld de, .RightBallMovement2
- jr .asm_1ccf3 ; 0x1ccb5 $3c
+ jr .asm_1ccf3
.RightBallMovement1
- db 0,0,$C0,$C0,$C0,$C0,$40,$FF
+ 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
+
.RightBallMovement2
- db 0,$C0,$C0,$C0,$C0,$FF
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
.Bulbasaur
ld de, .LeftBallMovement1
ld a, [W_XCOORD]
cp $9 ; is the player standing to the right of the table?
- jr nz, .asm_1ccf3 ; 0x1cccd $24
+ jr nz, .asm_1ccf3
push hl
ld a, $1
ld [H_SPRITEINDEX], a
ld a, $4
- ld [$ff8b], a
+ ld [H_SPRITEDATAOFFSET], a
call GetPointerWithinSpriteStateData1
push hl
ld [hl], $4c
@@ -247,12 +270,14 @@ OaksLabScript8: ; 1cc80 (7:4c80)
ld [hl], $9
ld de, .LeftBallMovement2 ; the rival is not currently onscreen, so account for that
pop hl
- jr .asm_1ccf3 ; 0x1cced $4
+ jr .asm_1ccf3
.LeftBallMovement1
- db $00,$C0 ; not yet terminated!
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT ; not yet terminated!
.LeftBallMovement2
- db $C0,$FF
+ db NPC_MOVEMENT_RIGHT
+ db $FF
.asm_1ccf3
ld a, $1
@@ -271,43 +296,42 @@ OaksLabScript9: ; 1cd00 (7:4d00)
ld [wJoyIgnore], a
ld a, $1
ld [H_SPRITEINDEX], a
- ld a, $4
- ld [$ff8d], a
+ ld a, SPRITE_FACING_UP
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, $d
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld a, [wTrainerEngageDistance]
+ ld a, [wRivalStarterBallSpriteIndex]
cp $2
- jr nz, .asm_1cd28 ; 0x1cd22 $4
+ jr nz, .asm_1cd28
ld a, HS_STARTER_BALL_1
- jr .asm_1cd32 ; 0x1cd26 $a
+ jr .asm_1cd32
.asm_1cd28
cp $3
- jr nz, .asm_1cd30 ; 0x1cd2a $4
+ jr nz, .asm_1cd30
ld a, HS_STARTER_BALL_2
- jr .asm_1cd32 ; 0x1cd2e $2
+ jr .asm_1cd32
.asm_1cd30
ld a, HS_STARTER_BALL_3
.asm_1cd32
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
call Delay3
- ld a, [wWhichTrade]
+ ld a, [wRivalStarterTemp]
ld [W_RIVALSTARTER], a
ld [wcf91], a
ld [wd11e], a
call GetMonName
ld a, $1
ld [H_SPRITEINDEX], a
- ld a, $4
- ld [$ff8d], a
+ ld a, SPRITE_FACING_UP
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, $e
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd74b
- set 2, [hl]
+ SetEvent EVENT_GOT_STARTER
xor a
ld [wJoyIgnore], a
@@ -321,26 +345,26 @@ OaksLabScript10: ; 1cd6d (7:4d6d)
ret nz
ld a, $1
ld [H_SPRITEINDEX], a
- xor a
- ld [$ff8d], a
+ xor a ; SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
- ld a, $8
- ld [wd528], a
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
ld c, BANK(Music_MeetRival)
ld a, MUSIC_MEET_RIVAL
- call PlayMusic ; play music
+ call PlayMusic
ld a, $f
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $1
- ld [$ff9b], a
+ ld [hNPCPlayerRelativePosPerspective], a
ld a, $1
swap a
- ld [$ff95], a
+ ld [hNPCSpriteOffset], a
predef CalcPositionOfPlayerRelativeToNPC
- ld a, [$ff95]
+ ld a, [hNPCPlayerYDistance]
dec a
- ld [$ff95], a
+ ld [hNPCPlayerYDistance], a
predef FindPathToPlayer
ld de, wNPCMovementDirections2
ld a, $1
@@ -357,18 +381,18 @@ OaksLabScript11: ; 1cdb9 (7:4db9)
ret nz
; define which team rival uses, and fight it
- ld a, SONY1 + $C8
+ ld a, OPP_SONY1
ld [W_CUROPPONENT], a
ld a, [W_RIVALSTARTER]
cp STARTER2
- jr nz, .NotSquirtle ; 0x1cdc9 $4
+ jr nz, .NotSquirtle
ld a, $1
- jr .done ; 0x1cdcd $a
+ jr .done
.NotSquirtle
cp STARTER3
- jr nz, .Charmander ; 0x1cdd1 $4
+ jr nz, .Charmander
ld a, $2
- jr .done ; 0x1cdd5 $2
+ jr .done
.Charmander
ld a, $3
.done
@@ -384,8 +408,8 @@ OaksLabScript11: ; 1cdb9 (7:4db9)
set 7, [hl]
xor a
ld [wJoyIgnore], a
- ld a, $8
- ld [wd528], a
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
ld a, $c
ld [W_OAKSLABCURSCRIPT], a
ret
@@ -393,30 +417,29 @@ OaksLabScript11: ; 1cdb9 (7:4db9)
OaksLabScript12: ; 1ce03 (7:4e03)
ld a, $f0
ld [wJoyIgnore], a
- ld a, $8
- ld [wd528], a
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
call UpdateSprites
ld a, $1
ld [wSpriteIndex], a
call SetSpritePosition1
ld a, $1
ld [H_SPRITEINDEX], a
- xor a
- ld [$ff8d], a
+ xor a ; SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
predef HealParty
- ld hl, wd74b
- set 3, [hl]
+ SetEvent EVENT_BATTLED_RIVAL_IN_OAKS_LAB
ld a, $d
ld [W_OAKSLABCURSCRIPT], a
ret
OaksLabScript13: ; 1ce32 (7:4e32)
- ld c, $14
+ ld c, 20
call DelayFrames
ld a, $10
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
callba Music_RivalAlternateStart
ld a, $1
@@ -426,52 +449,59 @@ OaksLabScript13: ; 1ce32 (7:4e32)
ld a, [W_XCOORD]
cp $4
; move left or right depending on where the player is standing
- jr nz, .asm_1ce5b ; 0x1ce55 $4
- ld a, $c0
- jr .asm_1ce5d ; 0x1ce59 $2
-.asm_1ce5b
- ld a, $80
-.asm_1ce5d
- ld [wcc5b], a
+ jr nz, .moveLeft
+ ld a, NPC_MOVEMENT_RIGHT
+ jr .next
+.moveLeft
+ ld a, NPC_MOVEMENT_LEFT
+.next
+ ld [wNPCMovementDirections], a
ld a, $e
ld [W_OAKSLABCURSCRIPT], a
ret
.RivalExitMovement
- db $E0,$00,$00,$00,$00,$00,$FF
+ 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
OaksLabScript14: ; 1ce6d (7:4e6d)
ld a, [wd730]
bit 0, a
- jr nz, .asm_1ce8c ; 0x1ce72 $18
+ jr nz, .asm_1ce8c
ld a, HS_OAKS_LAB_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
xor a
ld [wJoyIgnore], a
call PlayDefaultMusic ; reset to map music
ld a, $12
ld [W_OAKSLABCURSCRIPT], a
- jr .done ; 0x1ce8a $23
+ jr .done
+; make the player keep facing the rival as he walks away
.asm_1ce8c
- ld a, [wcf0f]
+ ld a, [wNPCNumScriptedSteps]
cp $5
- jr nz, .asm_1cea8 ; 0x1ce91 $15
+ jr nz, .asm_1cea8
ld a, [W_XCOORD]
cp $4
- jr nz, .asm_1cea1 ; 0x1ce98 $7
- ld a, $c
+ jr nz, .asm_1cea1
+ ld a, SPRITE_FACING_RIGHT
ld [wSpriteStateData1 + 9], a
- jr .done ; 0x1ce9f $e
+ jr .done
.asm_1cea1
- ld a, $8
+ ld a, SPRITE_FACING_LEFT
ld [wSpriteStateData1 + 9], a
- jr .done ; 0x1cea6 $7
+ jr .done
.asm_1cea8
cp $4
ret nz
- xor a
+ xor a ; ld a, SPRITE_FACING_DOWN
ld [wSpriteStateData1 + 9], a
.done
ret
@@ -481,22 +511,22 @@ OaksLabScript15: ; 1ceb0 (7:4eb0)
ld [hJoyHeld], a
call EnableAutoTextBoxDrawing
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
callba Music_RivalAlternateStart
ld a, $15
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call OaksLabScript_1d02b
ld a, HS_OAKS_LAB_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
ld a, [wNPCMovementDirections2Index]
- ld [wd157], a
- ld b, $0
+ ld [wSavedNPCMovementDirections2Index], a
+ ld b, 0
ld c, a
ld hl, wNPCMovementDirections2
- ld a, $40
+ ld a, NPC_MOVEMENT_UP
call FillMemory
ld [hl], $ff
ld a, $1
@@ -508,16 +538,16 @@ OaksLabScript15: ; 1ceb0 (7:4eb0)
ld [W_OAKSLABCURSCRIPT], a
ret
-OaksLabScript_1cefd ; 1cefd (7:4efd)
+OaksLabScript_1cefd: ; 1cefd (7:4efd)
ld a, $1
ld [H_SPRITEINDEX], a
- ld a, $4
- ld [$ff8d], a
+ ld a, SPRITE_FACING_UP
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, $8
ld [H_SPRITEINDEX], a
- xor a
- ld [$ff8d], a
+ xor a ; SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection], a
jp SetSpriteFacingDirectionAndDelay
OaksLabScript16: ; 1cf12 (7:4f12)
@@ -530,61 +560,59 @@ OaksLabScript16: ; 1cf12 (7:4f12)
ld [wJoyIgnore], a
call OaksLabScript_1cefd
ld a, $16
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call DelayFrame
call OaksLabScript_1cefd
ld a, $17
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call DelayFrame
call OaksLabScript_1cefd
ld a, $18
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call DelayFrame
ld a, $19
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call Delay3
ld a, HS_POKEDEX_1
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_POKEDEX_2
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
call OaksLabScript_1cefd
ld a, $1a
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $1
ld [H_SPRITEINDEX], a
- ld a, $c
- ld [$ff8d], a
+ ld a, SPRITE_FACING_RIGHT
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
call Delay3
ld a, $1b
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd74b
- set 5, [hl]
- ld hl, wd74e
- set 0, [hl]
+ SetEvent EVENT_GOT_POKEDEX
+ SetEvent EVENT_OAK_GOT_PARCEL
ld a, HS_LYING_OLD_MAN
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_OLD_MAN
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
- ld a, [wd157]
- ld b, $0
+ ld a, [wSavedNPCMovementDirections2Index]
+ ld b, 0
ld c, a
ld hl, wNPCMovementDirections2
- xor a
+ xor a ; NPC_MOVEMENT_DOWN
call FillMemory
ld [hl], $ff
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
callba Music_RivalAlternateStart
ld a, $1
@@ -602,14 +630,13 @@ OaksLabScript17: ; 1cfd4 (7:4fd4)
ret nz
call PlayDefaultMusic
ld a, HS_OAKS_LAB_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
- ld hl, wd7eb
- set 0, [hl]
- res 1, [hl]
- set 7, [hl]
+ 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
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
ld a, $5
ld [W_PALLETTOWNCURSCRIPT], a
@@ -623,24 +650,24 @@ OaksLabScript17: ; 1cfd4 (7:4fd4)
OaksLabScript18: ; 1d009 (7:5009)
ret
-OaksLabScript_1d00a: ; 1d00a (7:500a)
+OaksLabScript_RemoveParcel: ; 1d00a (7:500a)
ld hl, wBagItems
ld bc, $0000
-.asm_1d010
+.loop
ld a, [hli]
cp $ff
ret z
cp OAKS_PARCEL
- jr z, .GotParcel ; 0x1d016 $4
+ jr z, .foundParcel
inc hl
inc c
- jr .asm_1d010 ; 0x1d01a $f4
-.GotParcel
+ jr .loop
+.foundParcel
ld hl, wNumBagItems
ld a, c
ld [wWhichPokemon], a
ld a, $1
- ld [wcf96], a
+ ld [wItemQuantity], a
jp RemoveItemFromInventory
OaksLabScript_1d02b: ; 1d02b (7:502b)
@@ -650,29 +677,29 @@ OaksLabScript_1d02b: ; 1d02b (7:502b)
ld [$ffee], a
ld a, [W_YCOORD]
cp $3
- jr nz, .asm_1d045 ; 0x1d038 $b
+ jr nz, .asm_1d045
ld a, $4
ld [wNPCMovementDirections2Index], a
ld a, $30
ld b, $b
- jr .asm_1d068 ; 0x1d043 $23
+ jr .asm_1d068
.asm_1d045
cp $1
- jr nz, .asm_1d054 ; 0x1d047 $b
+ jr nz, .asm_1d054
ld a, $2
ld [wNPCMovementDirections2Index], a
ld a, $30
ld b, $9
- jr .asm_1d068 ; 0x1d052 $14
+ jr .asm_1d068
.asm_1d054
ld a, $3
ld [wNPCMovementDirections2Index], a
ld b, $a
ld a, [W_XCOORD]
cp $4
- jr nz, .asm_1d066 ; 0x1d060 $4
+ jr nz, .asm_1d066
ld a, $40
- jr .asm_1d068 ; 0x1d064 $2
+ jr .asm_1d068
.asm_1d066
ld a, $20
.asm_1d068
@@ -685,7 +712,7 @@ OaksLabScript_1d02b: ; 1d02b (7:502b)
ret
OaksLabScript_1d076: ; 1d076 (7:5076)
- ld hl, OaksLabTextPointers + $36 ; $50b8 ; starts at OaksLabText28
+ ld hl, OaksLabTextPointers + $36 ; starts at OaksLabText28
ld a, l
ld [W_MAPTEXTPTR], a
ld a, h
@@ -734,23 +761,22 @@ OaksLabTextPointers: ; 1d082 (7:5082)
OaksLabText28: ; 1d0ce (7:50ce)
OaksLabText1: ; 1d0ce (7:50ce)
- db $08 ; asm
- ld a, [wd74b]
- bit 0, a
- jr nz, .asm_1d0de ; 0x1d0d4
+ TX_ASM
+ CheckEvent EVENT_FOLLOWED_OAK_INTO_LAB_2
+ jr nz, .asm_1d0de
ld hl, OaksLabGaryText1
call PrintText
- jr .asm_1d0f0 ; 0x1d0dc
-.asm_1d0de ; 0x1d0de
+ jr .asm_1d0f0
+.asm_1d0de
bit 2, a
- jr nz, .asm_1d0ea ; 0x1d0e0
+ jr nz, .asm_1d0ea
ld hl, OaksLabText40
call PrintText
- jr .asm_1d0f0 ; 0x1d0e8
-.asm_1d0ea ; 0x1d0ea
+ jr .asm_1d0f0
+.asm_1d0ea
ld hl, OaksLabText41
call PrintText
-.asm_1d0f0 ; 0x1d0f0
+.asm_1d0f0
jp TextScriptEnd
OaksLabGaryText1: ; 1d0f3 (7:50f3)
@@ -767,33 +793,33 @@ OaksLabText41: ; 1d0fd (7:50fd)
OaksLabText29: ; 1d102 (7:5102)
OaksLabText2: ; 1d102 (7:5102)
- db $8
+ TX_ASM
ld a, STARTER2
- ld [wWhichTrade], a
+ ld [wRivalStarterTemp], a
ld a, $3
- ld [wTrainerEngageDistance], a
+ ld [wRivalStarterBallSpriteIndex], a
ld a, STARTER1
ld b, $2
- jr OaksLabScript_1d133 ; 0x1d111 $20
+ jr OaksLabScript_1d133
OaksLabText30: ; 1d113 (7:5113)
OaksLabText3: ; 1d113 (7:5113)
- db $8
+ TX_ASM
ld a, STARTER3
- ld [wWhichTrade], a
+ ld [wRivalStarterTemp], a
ld a, $4
- ld [wTrainerEngageDistance], a
+ ld [wRivalStarterBallSpriteIndex], a
ld a, STARTER2
ld b, $3
- jr OaksLabScript_1d133 ; 0x1d122 $f
+ jr OaksLabScript_1d133
OaksLabText31: ; 1d124 (7:5124)
OaksLabText4: ; 1d124 (7:5124)
- db $8
+ TX_ASM
ld a, STARTER1
- ld [wWhichTrade], a
+ ld [wRivalStarterTemp], a
ld a, $2
- ld [wTrainerEngageDistance], a
+ ld [wRivalStarterBallSpriteIndex], a
ld a, STARTER3
ld b, $4
@@ -802,11 +828,10 @@ OaksLabScript_1d133: ; 1d133 (7:5133)
ld [wd11e], a
ld a, b
ld [wSpriteIndex], a
- ld a, [wd74b]
- bit 2, a
+ CheckEvent EVENT_GOT_STARTER
jp nz, OaksLabScript_1d22d
- bit 1, a
- jr nz, OaksLabScript_1d157 ; 0x1d147 $e
+ CheckEventReuseA EVENT_OAK_ASKED_TO_CHOOSE_MON
+ jr nz, OaksLabScript_1d157
ld hl, OaksLabText39
call PrintText
jp TextScriptEnd
@@ -819,23 +844,22 @@ OaksLabScript_1d157: ; 1d157 (7:5157)
ld a, $5
ld [H_SPRITEINDEX], a
ld a, $9
- ld [$ff8b], a
+ ld [H_SPRITEDATAOFFSET], a
call GetPointerWithinSpriteStateData1
- ld [hl], $0
- ; manually fixed some disassembler issues around here
+ ld [hl], SPRITE_FACING_DOWN
ld a, $1
ld [H_SPRITEINDEX], a
ld a, $9
- ld [$ff8b], a
+ ld [H_SPRITEDATAOFFSET], a
call GetPointerWithinSpriteStateData1
- ld [hl], $c
+ ld [hl], SPRITE_FACING_RIGHT
ld hl, wd730
set 6, [hl]
- predef StarterDex ; StarterDex
+ predef StarterDex
ld hl, wd730
res 6, [hl]
call ReloadMapData
- ld c, $a
+ ld c, 10
call DelayFrames
ld a, [wSpriteIndex]
cp $2
@@ -844,7 +868,7 @@ OaksLabScript_1d157: ; 1d157 (7:5157)
jr z, OaksLabLookAtSquirtle
jr OaksLabLookAtBulbasaur
-OaksLabLookAtCharmander ; 0x1d195
+OaksLabLookAtCharmander: ; 1d195 (7:5195)
ld hl, OaksLabCharmanderText
jr OaksLabMonChoiceMenu
OaksLabCharmanderText: ; 1d19a (7:519a)
@@ -879,18 +903,18 @@ OaksLabMonChoiceMenu: ; 1d1b3 (7:51b3)
call GetMonName
ld a, [wSpriteIndex]
cp $2
- jr nz, asm_1d1db ; 0x1d1d5 $4
+ jr nz, .asm_1d1db
ld a, HS_STARTER_BALL_1
- jr asm_1d1e5 ; 0x1d1d9 $a
-asm_1d1db: ; 1d1db (7:51db)
+ jr .asm_1d1e5
+.asm_1d1db
cp $3
- jr nz, asm_1d1e3 ; 0x1d1dd $4
+ jr nz, .asm_1d1e3
ld a, HS_STARTER_BALL_2
- jr asm_1d1e5 ; 0x1d1e1 $2
-asm_1d1e3: ; 1d1e3 (7:51e3)
+ jr .asm_1d1e5
+.asm_1d1e3
ld a, HS_STARTER_BALL_3
-asm_1d1e5: ; 1d1e5 (7:51e5)
- ld [wcc4d], a
+.asm_1d1e5
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
@@ -898,9 +922,9 @@ asm_1d1e5: ; 1d1e5 (7:51e5)
call PrintText
ld hl, OaksLabReceivedMonText
call PrintText
- xor a
- ld [wcc49], a
- ld a, $5
+ xor a ; PLAYER_PARTY_DATA
+ ld [wMonDataLocation], a
+ ld a, 5
ld [W_CURENEMYLVL], a
ld a, [wcf91]
ld [wd11e], a
@@ -926,7 +950,7 @@ OaksLabScript_1d22d: ; 1d22d (7:522d)
ld a, $5
ld [H_SPRITEINDEX], a
ld a, $9
- ld [$ff8b], a
+ ld [H_SPRITEDATAOFFSET], a
call GetPointerWithinSpriteStateData1
ld [hl], $0
ld hl, OaksLabLastMonText
@@ -939,80 +963,74 @@ OaksLabLastMonText: ; 1d243 (7:5243)
OaksLabText32: ; 1d248 (7:5248)
OaksLabText5: ; 1d248 (7:5248)
- db $08 ; asm
- ld a, [wd747]
- bit 6, a
- jr nz, .asm_50e81 ; 0x1d24e
+ TX_ASM
+ CheckEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS
+ jr nz, .asm_1d266
ld hl, wPokedexOwned
ld b, wPokedexOwnedEnd - wPokedexOwned
call CountSetBits
- ld a, [wd11e]
- cp $2
- jr c, .asm_b28b0 ; 0x1d25d
- ld a, [wd74b]
- bit 5, a
- jr z, .asm_b28b0 ; 0x1d264
-.asm_50e81 ; 0x1d266
+ ld a, [wNumSetBits]
+ cp 2
+ jr c, .asm_1d279
+ CheckEvent EVENT_GOT_POKEDEX
+ jr z, .asm_1d279
+.asm_1d266
ld hl, OaksLabText_1d31d
call PrintText
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
predef DisplayDexRating
- jp .asm_0f042
-.asm_b28b0 ; 0x1d279
+ jp .asm_1d2ed
+.asm_1d279
ld b,POKE_BALL
call IsItemInBag
- jr nz, .asm_17c30 ; 0x1d27e
- ld a, [wd7eb]
- bit 5, a
- jr nz, .asm_f1adc ; 0x1d285
- ld a, [wd74b]
- bit 5, a
- jr nz, .asm_333a2 ; 0x1d28c
- bit 3, a
- jr nz, .asm_76269 ; 0x1d290
+ jr nz, .asm_1d2e7
+ CheckEvent EVENT_BEAT_ROUTE22_RIVAL_1ST_BATTLE
+ jr nz, .asm_1d2d0
+ CheckEvent EVENT_GOT_POKEDEX
+ jr nz, .asm_1d2c8
+ CheckEventReuseA EVENT_BATTLED_RIVAL_IN_OAKS_LAB
+ jr nz, .asm_1d2a9
ld a, [wd72e]
bit 3, a
- jr nz, .asm_4a5e0 ; 0x1d297
+ jr nz, .asm_1d2a1
ld hl, OaksLabText_1d2f0
call PrintText
- jr .asm_0f042 ; 0x1d29f
-.asm_4a5e0 ; 0x1d2a1
+ jr .asm_1d2ed
+.asm_1d2a1
ld hl, OaksLabText_1d2f5
call PrintText
- jr .asm_0f042 ; 0x1d2a7
-.asm_76269 ; 0x1d2a9
+ jr .asm_1d2ed
+.asm_1d2a9
ld b, OAKS_PARCEL
call IsItemInBag
- jr nz, .asm_a8fcf ; 0x1d2ae
+ jr nz, .asm_1d2b8
ld hl, OaksLabText_1d2fa
call PrintText
- jr .asm_0f042 ; 0x1d2b6
-.asm_a8fcf ; 0x1d2b8
+ jr .asm_1d2ed
+.asm_1d2b8
ld hl, OaksLabDeliverParcelText
call PrintText
- call OaksLabScript_1d00a
+ call OaksLabScript_RemoveParcel
ld a, $f
ld [W_OAKSLABCURSCRIPT], a
- jr .asm_0f042 ; 0x1d2c6
-.asm_333a2 ; 0x1d2c8
+ jr .asm_1d2ed
+.asm_1d2c8
ld hl, OaksLabAroundWorldText
call PrintText
- jr .asm_0f042 ; 0x1d2ce
-.asm_f1adc ; 0x1d2d0
- ld hl, wd74b
- bit 4, [hl]
- set 4, [hl]
- jr nz, .asm_17c30 ; 0x1d2d7
- ld bc, (POKE_BALL << 8) | 5
+ jr .asm_1d2ed
+.asm_1d2d0
+ CheckAndSetEvent EVENT_GOT_POKEBALLS_FROM_OAK
+ jr nz, .asm_1d2e7
+ lb bc, POKE_BALL, 5
call GiveItem
ld hl, OaksLabGivePokeballsText
call PrintText
- jr .asm_0f042 ; 0x1d2e5
-.asm_17c30 ; 0x1d2e7
+ jr .asm_1d2ed
+.asm_1d2e7
ld hl, OaksLabPleaseVisitText
call PrintText
-.asm_0f042 ; 0x1d2ed
+.asm_1d2ed
jp TextScriptEnd
OaksLabText_1d2f0: ; 1d2f0 (7:52f0)
@@ -1055,7 +1073,7 @@ OaksLabText34: ; 1d322 (7:5322)
OaksLabText33: ; 1d322 (7:5322)
OaksLabText7: ; 1d322 (7:5322)
OaksLabText6: ; 1d322 (7:5322)
- db $08 ; asm
+ TX_ASM
ld hl, OaksLabText_1d32c
call PrintText
jp TextScriptEnd
@@ -1071,7 +1089,7 @@ OaksLabText8: ; 1d331 (7:5331)
OaksLabText36: ; 1d336 (7:5336)
OaksLabText9: ; 1d336 (7:5336)
- db $08 ; asm
+ TX_ASM
ld hl, OaksLabText_1d340
call PrintText
jp TextScriptEnd
@@ -1081,7 +1099,7 @@ OaksLabText_1d340: ; 1d340 (7:5340)
db "@"
OaksLabText17: ; 1d345 (7:5345)
- db $8
+ TX_ASM
ld hl, OaksLabRivalWaitingText
call PrintText
jp TextScriptEnd
@@ -1091,7 +1109,7 @@ OaksLabRivalWaitingText: ; 1d34f (7:534f)
db "@"
OaksLabText18: ; 1d354 (7:5354)
- db $8
+ TX_ASM
ld hl, OaksLabChooseMonText
call PrintText
jp TextScriptEnd
@@ -1101,7 +1119,7 @@ OaksLabChooseMonText: ; 1d35e (7:535e)
db "@"
OaksLabText19: ; 1d363 (7:5363)
- db $8
+ TX_ASM
ld hl, OaksLabRivalInterjectionText
call PrintText
jp TextScriptEnd
@@ -1111,7 +1129,7 @@ OaksLabRivalInterjectionText: ; 1d36d (7:536d)
db "@"
OaksLabText20: ; 1d372 (7:5372)
- db $8
+ TX_ASM
ld hl, OaksLabBePatientText
call PrintText
jp TextScriptEnd
@@ -1121,7 +1139,7 @@ OaksLabBePatientText: ; 1d37c (7:537c)
db "@"
OaksLabText12: ; 1d381 (7:5381)
- db $8
+ TX_ASM
ld hl, OaksLabLeavingText
call PrintText
jp TextScriptEnd
@@ -1131,7 +1149,7 @@ OaksLabLeavingText: ; 1d38b (7:538b)
db "@"
OaksLabText13: ; 1d390 (7:5390)
- db $8
+ TX_ASM
ld hl, OaksLabRivalPickingMonText
call PrintText
jp TextScriptEnd
@@ -1141,7 +1159,7 @@ OaksLabRivalPickingMonText: ; 1d39a (7:539a)
db "@"
OaksLabText14: ; 1d39f (7:539f)
- db $8
+ TX_ASM
ld hl, OaksLabRivalReceivedMonText
call PrintText
jp TextScriptEnd
@@ -1151,7 +1169,7 @@ OaksLabRivalReceivedMonText: ; 1d3a9 (7:53a9)
db $11, "@"
OaksLabText15: ; 1d3af (7:53af)
- db $8
+ TX_ASM
ld hl, OaksLabRivalChallengeText
call PrintText
jp TextScriptEnd
@@ -1169,7 +1187,7 @@ OaksLabText_1d3c3: ; 1d3c3 (7:53c3)
db "@"
OaksLabText16: ; 1d3c8 (7:53c8)
- db $8
+ TX_ASM
ld hl, OaksLabRivalToughenUpText
call PrintText
jp TextScriptEnd
@@ -1210,7 +1228,7 @@ OaksLabText38: ; 1d3fb (7:53fb)
OaksLabText37: ; 1d3fb (7:53fb)
OaksLabText11: ; 1d3fb (7:53fb)
OaksLabText10: ; 1d3fb (7:53fb)
- db $08 ; asm
+ TX_ASM
ld hl, OaksLabText_1d405
call PrintText
jp TextScriptEnd
diff --git a/scripts/pallettown.asm b/scripts/pallettown.asm
index c43b9682..e4c3f135 100755
--- a/scripts/pallettown.asm
+++ b/scripts/pallettown.asm
@@ -1,9 +1,7 @@
PalletTownScript: ; 18e5b (6:4e5b)
- ld a,[wd74b]
- bit 4,a
+ CheckEvent EVENT_GOT_POKEBALLS_FROM_OAK
jr z,.next
- ld hl,wd747
- set 6,[hl]
+ SetEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS
.next
call EnableAutoTextBoxDrawing
ld hl,PalletTownScriptPointers
@@ -20,26 +18,24 @@ PalletTownScriptPointers: ; 18e73 (6:4e73)
dw PalletTownScript6
PalletTownScript0: ; 18e81 (6:4e81)
- ld a,[wd747]
- bit 0,a
+ CheckEvent EVENT_FOLLOWED_OAK_INTO_LAB
ret nz
ld a,[W_YCOORD]
cp 1 ; is player near north exit?
ret nz
xor a
ld [hJoyHeld],a
- ld a,4
- ld [wd528],a
+ ld a,PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection],a
ld a,$FF
call PlaySound ; stop music
ld a, BANK(Music_MeetProfOak)
- ld c,a ; song bank
+ ld c,a
ld a, MUSIC_MEET_PROF_OAK ; “oak appears” music
- call PlayMusic ; plays music
+ call PlayMusic
ld a,$FC
ld [wJoyIgnore],a
- ld hl,wd74b
- set 7,[hl]
+ SetEvent EVENT_OAK_APPEARED_IN_PALLET
; trigger the next script
ld a,1
@@ -50,12 +46,12 @@ PalletTownScript1: ; 18eb2 (6:4eb2)
xor a
ld [wcf0d],a
ld a,1
- ld [$FF8C],a
+ ld [hSpriteIndexOrTextID],a
call DisplayTextID
ld a,$FF
ld [wJoyIgnore],a
ld a,HS_PALLET_TOWN_OAK
- ld [wcc4d],a
+ ld [wMissableObjectIndex],a
predef ShowObject
; trigger the next script
@@ -65,25 +61,25 @@ PalletTownScript1: ; 18eb2 (6:4eb2)
PalletTownScript2: ; 18ed2 (6:4ed2)
ld a,1
- ld [$FF8C],a
- ld a,4
- ld [$FF8D],a
+ ld [H_SPRITEINDEX],a
+ ld a,SPRITE_FACING_UP
+ ld [hSpriteFacingDirection],a
call SetSpriteFacingDirectionAndDelay
call Delay3
ld a,1
ld [W_YCOORD],a
ld a,1
- ld [$FF9B],a
+ ld [hNPCPlayerRelativePosPerspective],a
ld a,1
swap a
- ld [$FF95],a
+ ld [hNPCSpriteOffset],a
predef CalcPositionOfPlayerRelativeToNPC
- ld hl,$FF95
+ ld hl,hNPCPlayerYDistance
dec [hl]
predef FindPathToPlayer ; load Oak’s movement into wNPCMovementDirections2
ld de,wNPCMovementDirections2
ld a,1 ; oak
- ld [$FF8C],a
+ ld [H_SPRITEINDEX],a
call MoveSprite
ld a,$FF
ld [wJoyIgnore],a
@@ -97,15 +93,16 @@ PalletTownScript3: ; 18f12 (6:4f12)
ld a,[wd730]
bit 0,a
ret nz
- xor a
+ xor a ; ld a, SPRITE_FACING_DOWN
ld [wSpriteStateData1 + 9],a
ld a,1
ld [wcf0d],a
ld a,$FC
ld [wJoyIgnore],a
ld a,1
- ld [$FF8C],a
+ ld [hSpriteIndexOrTextID],a
call DisplayTextID
+; set up movement script that causes the player to follow Oak to his lab
ld a,$FF
ld [wJoyIgnore],a
ld a,1
@@ -124,7 +121,7 @@ PalletTownScript3: ; 18f12 (6:4f12)
PalletTownScript4: ; 18f4b (6:4f4b)
ld a,[wNPCMovementScriptPointerTableNum]
- and a
+ and a ; is the movement script over?
ret nz
; trigger the next script
@@ -133,26 +130,21 @@ PalletTownScript4: ; 18f4b (6:4f4b)
ret
PalletTownScript5: ; 18f56 (6:4f56)
- ld a,[wd74a]
- bit 2,a
+ CheckEvent EVENT_DAISY_WALKING
jr nz,.next
- and 3
- cp 3
+ CheckBothEventsSet EVENT_GOT_TOWN_MAP, EVENT_ENTERED_BLUES_HOUSE, 1
jr nz,.next
- ld hl,wd74a
- set 2,[hl]
+ SetEvent EVENT_DAISY_WALKING
ld a,HS_DAISY_SITTING
- ld [wcc4d],a
+ ld [wMissableObjectIndex],a
predef HideObject
ld a,HS_DAISY_WALKING
- ld [wcc4d],a
+ ld [wMissableObjectIndex],a
predef_jump ShowObject
.next
- ld a,[wd74b]
- bit 4,a
+ CheckEvent EVENT_GOT_POKEBALLS_FROM_OAK
ret z
- ld hl,wd74b
- set 6,[hl]
+ SetEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS_2
PalletTownScript6: ; 18f87 (6:4f87)
ret
@@ -166,7 +158,7 @@ PalletTownTextPointers: ; 18f88 (6:4f88)
dw PalletTownText7
PalletTownText1: ; 18f96 (6:4f96)
- db 8
+ TX_ASM
ld a,[wcf0d]
and a
jr nz,.next
@@ -182,15 +174,15 @@ PalletTownText1: ; 18f96 (6:4f96)
OakAppearsText: ; 18fb0 (6:4fb0)
TX_FAR _OakAppearsText
- db 8
+ TX_ASM
ld c,10
call DelayFrames
xor a
- ld [wcd4f],a
- ld [wcd50],a
- predef EmotionBubble ; display ! over head
- ld a,4
- ld [wd528],a
+ ld [wEmotionBubbleSpriteIndex],a ; player's sprite
+ ld [wWhichEmotionBubble],a ; EXCLAMATION_BUBBLE
+ predef EmotionBubble
+ ld a,PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection],a
jp TextScriptEnd
OakWalksUpText: ; 18fce (6:4fce)
diff --git a/scripts/pewtercity.asm b/scripts/pewtercity.asm
index bd6872a1..66589d52 100755
--- a/scripts/pewtercity.asm
+++ b/scripts/pewtercity.asm
@@ -16,14 +16,12 @@ PewterCityScriptPointers: ; 19243 (6:5243)
PewterCityScript0: ; 19251 (6:5251)
xor a
ld [W_MUSEUM1FCURSCRIPT], a
- ld hl, wd754
- res 0, [hl]
+ ResetEvent EVENT_BOUGHT_MUSEUM_TICKET
call PewterCityScript_1925e
ret
PewterCityScript_1925e: ; 1925e (6:525e)
- ld a, [wd755]
- bit 7, a
+ CheckEvent EVENT_BEAT_BROCK
ret nz
ld hl, CoordsData_19277
call ArePlayerCoordsInArray
@@ -31,7 +29,7 @@ PewterCityScript_1925e: ; 1925e (6:525e)
ld a, $f0
ld [wJoyIgnore], a
ld a, $5
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
CoordsData_19277: ; 19277 (6:5277)
@@ -48,16 +46,16 @@ PewterCityScript1: ; 19280 (6:5280)
ld a, $3
ld [H_SPRITEINDEX], a
ld a, SPRITE_FACING_UP
- ld [$ff8d], a
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, ($3 << 4) | SPRITE_FACING_UP
- ld [$ff8d], a
+ ld [hSpriteImageIndex], a
call SetSpriteImageIndexAfterSettingFacingDirection
call PlayDefaultMusic
ld hl, wFlags_0xcd60
set 4, [hl]
ld a, $d
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $3c
ld [$ffeb], a
@@ -71,22 +69,26 @@ PewterCityScript1: ; 19280 (6:5280)
ld [wSpriteIndex], a
call SetSpritePosition1
ld a, $3
- ld [$ff8c], a
- ld de, MovementData_PewterMuseumGuyExit ; $52ce
+ ld [H_SPRITEINDEX], a
+ ld de, MovementData_PewterMuseumGuyExit
call MoveSprite
ld a, $2
ld [W_PEWTERCITYCURSCRIPT], a
ret
MovementData_PewterMuseumGuyExit: ; 192ce (6:52ce)
- db $00,$00,$00,$00,$FF
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
PewterCityScript2: ; 192d3 (6:52d3)
ld a, [wd730]
bit 0, a
ret nz
ld a, HS_MUSEUM_GUY
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, $3
ld [W_PEWTERCITYCURSCRIPT], a
@@ -97,7 +99,7 @@ PewterCityScript3: ; 192e9 (6:52e9)
ld [wSpriteIndex], a
call SetSpritePosition2
ld a, HS_MUSEUM_GUY
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
xor a
ld [wJoyIgnore], a
@@ -110,18 +112,18 @@ PewterCityScript4: ; 19305 (6:5305)
and a
ret nz
ld a, $5
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
ld a, SPRITE_FACING_LEFT
- ld [$ff8d], a
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, ($1 << 4) | SPRITE_FACING_LEFT
- ld [$ff8d], a
+ ld [hSpriteImageIndex], a
call SetSpriteImageIndexAfterSettingFacingDirection
call PlayDefaultMusic
ld hl, wFlags_0xcd60
set 4, [hl]
ld a, $e
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $3c
ld [$ffeb], a
@@ -135,7 +137,7 @@ PewterCityScript4: ; 19305 (6:5305)
ld [wSpriteIndex], a
call SetSpritePosition1
ld a, $5
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
ld de, MovementData_PewterGymGuyExit
call MoveSprite
ld a, $5
@@ -143,14 +145,19 @@ PewterCityScript4: ; 19305 (6:5305)
ret
MovementData_PewterGymGuyExit: ; 19353 (6:5353)
- db $C0,$C0,$C0,$C0,$C0,$FF
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
PewterCityScript5: ; 19359 (6:5359)
ld a, [wd730]
bit 0, a
ret nz
ld a, HS_GYM_GUY
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, $6
ld [W_PEWTERCITYCURSCRIPT], a
@@ -161,7 +168,7 @@ PewterCityScript6: ; 1936f (6:536f)
ld [wSpriteIndex], a
call SetSpritePosition2
ld a, HS_GYM_GUY
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
xor a
ld [wJoyIgnore], a
@@ -194,17 +201,17 @@ PewterCityText2: ; 193ac (6:53ac)
db "@"
PewterCityText3: ; 193b1 (6:53b1)
- db $08 ; asm
+ TX_ASM
ld hl, PewterCityText_193f1
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr nz, .asm_f46a9 ; 0x193bf
+ jr nz, .asm_193c9
ld hl, PewterCityText_193f6
call PrintText
- jr .asm_ac429 ; 0x193c7
-.asm_f46a9 ; 0x193c9
+ jr .asm_193ee
+.asm_193c9
ld hl, PewterCityText_193fb
call PrintText
xor a
@@ -220,7 +227,7 @@ PewterCityText3: ; 193b1 (6:53b1)
call GetSpritePosition2
ld a, $1
ld [W_PEWTERCITYCURSCRIPT], a
-.asm_ac429 ; 0x193ee
+.asm_193ee
jp TextScriptEnd
PewterCityText_193f1: ; 193f1 (6:53f1)
@@ -240,20 +247,20 @@ PewterCityText13: ; 19400 (6:5400)
db "@"
PewterCityText4: ; 19405 (6:5405)
- db $8
+ TX_ASM
ld hl, PewterCityText_19427
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
cp $0
- jr nz, .asm_e4603
+ jr nz, .asm_1941e
ld hl, PewterCityText_1942c
call PrintText
- jr .asm_e4604 ; 0x1941c $6
-.asm_e4603
+ jr .asm_19424
+.asm_1941e
ld hl, PewterCityText_19431
call PrintText
-.asm_e4604 ; 0x19424
+.asm_19424
jp TextScriptEnd
PewterCityText_19427: ; 19427 (6:5427)
@@ -269,7 +276,7 @@ PewterCityText_19431: ; 19431 (6:5431)
db "@"
PewterCityText5: ; 19436 (6:5436)
- db $08 ; asm
+ TX_ASM
ld hl, PewterCityText_1945d
call PrintText
xor a
diff --git a/scripts/pewtergym.asm b/scripts/pewtergym.asm
index 8cb6696c..831403bb 100755
--- a/scripts/pewtergym.asm
+++ b/scripts/pewtergym.asm
@@ -12,8 +12,8 @@ PewterGymScript: ; 5c387 (17:4387)
ret
PewterGymScript_5c3a4: ; 5c3a4 (17:43a4)
- ld hl, Gym1CityName ; $43ad
- ld de, Gym1LeaderName ; $43b9
+ ld hl, Gym1CityName
+ ld de, Gym1LeaderName
jp LoadGymLeaderAndCityName
Gym1CityName: ; 5c3ad (17:43ad)
@@ -36,7 +36,7 @@ PewterGymScriptPointers: ; 5c3ca (17:43ca)
dw PewterGymScript3
PewterGymScript3: ; 5c3d2 (17:43d2)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, PewterGymScript_5c3bf
ld a, $f0
@@ -44,43 +44,38 @@ PewterGymScript3: ; 5c3d2 (17:43d2)
PewterGymScript_5c3df: ; 5c3df (17:43df)
ld a, $4
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd755
- set 7, [hl]
- ld bc, (TM_34 << 8) | 1
+ SetEvent EVENT_BEAT_BROCK
+ lb bc, TM_34, 1
call GiveItem
jr nc, .BagFull
ld a, $5
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd755
- set 6, [hl]
+ SetEvent EVENT_GOT_TM34
jr .asm_5c408
.BagFull
ld a, $6
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
.asm_5c408
ld hl, W_OBTAINEDBADGES
set 0, [hl]
- ld hl, wd72a
+ ld hl, wBeatGymFlags
set 0, [hl]
ld a, HS_GYM_GUY
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_ROUTE_22_RIVAL_1
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
- ld hl, wd7eb
- res 0, [hl]
- res 7, [hl]
+ ResetEvents EVENT_1ST_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
; deactivate gym trainers
- ld hl, wd755
- set 2, [hl]
+ SetEvent EVENT_BEAT_PEWTER_GYM_TRAINER_0
jp PewterGymScript_5c3bf
@@ -94,31 +89,30 @@ PewterGymTextPointers: ; 5c435 (17:4435)
PewterGymTrainerHeaders: ; 5c441 (17:4441)
PewterGymTrainerHeader0: ; 5c441 (17:4441)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_PEWTER_GYM_TRAINER_0
db ($5 << 4) ; trainer's view range
- dw wd755 ; flag's byte
- dw PewterGymBattleText1 ; 0x44d0 TextBeforeBattle
- dw PewterGymAfterBattleText1 ; 0x44da TextAfterBattle
- dw PewterGymEndBattleText1 ; 0x44d5 TextEndBattle
- dw PewterGymEndBattleText1 ; 0x44d5 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_PEWTER_GYM_TRAINER_0
+ dw PewterGymBattleText1 ; TextBeforeBattle
+ dw PewterGymAfterBattleText1 ; TextAfterBattle
+ dw PewterGymEndBattleText1 ; TextEndBattle
+ dw PewterGymEndBattleText1 ; TextEndBattle
db $ff
PewterGymText1: ; 5c44e (17:444e)
- db $08 ; asm
- ld a, [wd755]
- bit 7, a
- jr z, .asm_4a735 ; 0x5c454
- bit 6, a
- jr nz, .asm_ff7d0 ; 0x5c458
+ TX_ASM
+ CheckEvent EVENT_BEAT_BROCK
+ jr z, .asm_5c46a
+ CheckEventReuseA EVENT_GOT_TM34
+ jr nz, .asm_5c462
call z, PewterGymScript_5c3df
call DisableWaitingAfterTextDisplay
- jr .asm_e0ffb ; 0x5c460
-.asm_ff7d0 ; 0x5c462
+ jr .asm_5c49b
+.asm_5c462
ld hl, PewterGymText_5c4a3
call PrintText
- jr .asm_e0ffb ; 0x5c468
-.asm_4a735 ; 0x5c46a
+ jr .asm_5c49b
+.asm_5c46a
ld hl, PewterGymText_5c49e
call PrintText
ld hl, wd72d
@@ -138,7 +132,7 @@ PewterGymText1: ; 5c44e (17:444e)
ld a, $3
ld [W_PEWTERGYMCURSCRIPT], a
ld [W_CURMAPSCRIPT], a
-.asm_e0ffb ; 0x5c49b
+.asm_5c49b
jp TextScriptEnd
PewterGymText_5c49e: ; 5c49e (17:449e)
@@ -170,7 +164,7 @@ PewterGymText_5c4bc: ; 5c4bc (17:44bc)
db "@"
PewterGymText2: ; 5c4c6 (17:44c6)
- db $08 ; asm
+ TX_ASM
ld hl, PewterGymTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -188,30 +182,30 @@ PewterGymAfterBattleText1: ; 5c4da (17:44da)
db "@"
PewterGymText3: ; 5c4df (17:44df)
- db $08 ; asm
- ld a, [wd72a]
+ TX_ASM
+ ld a, [wBeatGymFlags]
bit 0, a
- jr nz, .asm_71369 ; 0x5c4e5
+ jr nz, .asm_5c50c
ld hl, PewterGymText_5c515
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr nz, .asm_6123a ; 0x5c4f4
+ jr nz, .asm_5c4fe
ld hl, PewterGymText_5c51a
call PrintText
- jr .asm_d1578 ; 0x5c4fc
-.asm_6123a ; 0x5c4fe
+ jr .asm_5c504
+.asm_5c4fe
ld hl, PewterGymText_5c524
call PrintText
-.asm_d1578 ; 0x5c504
+.asm_5c504
ld hl, PewterGymText_5c51f
call PrintText
- jr .asm_07013 ; 0x5c50a
-.asm_71369 ; 0x5c50c
+ jr .asm_5c512
+.asm_5c50c
ld hl, PewterGymText_5c529
call PrintText
-.asm_07013 ; 0x5c512
+.asm_5c512
jp TextScriptEnd
PewterGymText_5c515: ; 5c515 (17:4515)
diff --git a/scripts/pewterhouse1.asm b/scripts/pewterhouse1.asm
index 05d27a14..a670f23c 100755
--- a/scripts/pewterhouse1.asm
+++ b/scripts/pewterhouse1.asm
@@ -8,7 +8,7 @@ PewterHouse1TextPointers: ; 1d5f6 (7:55f6)
PewterHouse1Text1: ; 1d5fc (7:55fc)
TX_FAR _PewterHouse1Text1
- db $08 ; asm
+ TX_ASM
ld a, NIDORAN_M
call PlayCry
call WaitForSoundToFinish
diff --git a/scripts/pewtermart.asm b/scripts/pewtermart.asm
index 8fe99d94..62831d1b 100755
--- a/scripts/pewtermart.asm
+++ b/scripts/pewtermart.asm
@@ -10,7 +10,7 @@ PewterMartTextPointers: ; 74cb6 (1d:4cb6)
dw PewterMartText3
PewterMartText2: ; 74cbc (1d:4cbc)
- db $08 ; asm
+ TX_ASM
ld hl, PewterMartText_74cc6
call PrintText
jp TextScriptEnd
@@ -20,7 +20,7 @@ PewterMartText_74cc6: ; 74cc6 (1d:4cc6)
db "@"
PewterMartText3: ; 74ccb (1d:4ccb)
- db $08 ; asm
+ TX_ASM
ld hl, PewterMartText_74cd5
call PrintText
jp TextScriptEnd
diff --git a/scripts/pewterpokecenter.asm b/scripts/pewterpokecenter.asm
index 1f3cabe0..46d4d509 100755
--- a/scripts/pewterpokecenter.asm
+++ b/scripts/pewterpokecenter.asm
@@ -16,50 +16,56 @@ PewterPokecenterText2: ; 5c596 (17:4596)
db "@"
PewterPokecenterText3: ; 5c59b (17:459b)
- db $8
+ TX_ASM
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, PewterPokecenterText5
call PrintText
ld a, $ff
call PlaySound
- ld c, $20
+ ld c, 32
call DelayFrames
- ld hl, Unknown_5c608 ; $4608
- ld de, wTrainerFacingDirection
- ld bc, $0004
+ ld hl, JigglypuffFacingDirections
+ ld de, wJigglypuffFacingDirections
+ ld bc, JigglypuffFacingDirectionsEnd - JigglypuffFacingDirections
call CopyData
- ld a, [wSpriteStateData1 + $32]
- ld hl, wTrainerFacingDirection
-.asm_5c5c3
+
+ ld a, [wSpriteStateData1 + 3 * $10 + $2]
+ ld hl, wJigglypuffFacingDirections
+.findMatchingFacingDirectionLoop
cp [hl]
inc hl
- jr nz, .asm_5c5c3 ; 0x5c5c5 $fc
+ jr nz, .findMatchingFacingDirectionLoop
dec hl
push hl
ld c, BANK(Music_JigglypuffSong)
ld a, MUSIC_JIGGLYPUFF_SONG
call PlayMusic
pop hl
-.asm_5c5d1
+.loop
ld a, [hl]
- ld [wSpriteStateData1 + $32], a
+ ld [wSpriteStateData1 + 3 * $10 + $2], a
+
+; rotate the array
push hl
- ld hl, wTrainerFacingDirection
- ld de, wTrainerEngageDistance
- ld bc, $0004
+ ld hl, wJigglypuffFacingDirections
+ ld de, wJigglypuffFacingDirections - 1
+ ld bc, JigglypuffFacingDirectionsEnd - JigglypuffFacingDirections
call CopyData
- ld a, [wTrainerEngageDistance]
- ld [wcd42], a
+ ld a, [wJigglypuffFacingDirections - 1]
+ ld [wJigglypuffFacingDirections + 3], a
pop hl
- ld c, $18
+
+ ld c, 24
call DelayFrames
- ld a, [wc026]
+
+ ld a, [wChannelSoundIDs]
ld b, a
- ld a, [wc027]
+ ld a, [wChannelSoundIDs + CH1]
or b
- jr nz, .asm_5c5d1 ; 0x5c5f6 $d9
- ld c, $30
+ jr nz, .loop
+
+ ld c, 48
call DelayFrames
call PlayDefaultMusic
jp TextScriptEnd
@@ -68,8 +74,12 @@ PewterPokecenterText5: ; 5c603 (17:4603)
TX_FAR _PewterPokecenterText5
db "@"
-Unknown_5c608: ; 5c608 (17:4608)
- db $30, $38, $34, $3c
+JigglypuffFacingDirections: ; 5c608 (17:4608)
+ db $30 | SPRITE_FACING_DOWN
+ db $30 | SPRITE_FACING_LEFT
+ db $30 | SPRITE_FACING_UP
+ db $30 | SPRITE_FACING_RIGHT
+JigglypuffFacingDirectionsEnd:
PewterPokecenterText4: ; 5c60c (17:460c)
db $f6
diff --git a/scripts/pokemontower2.asm b/scripts/pokemontower2.asm
index dc9275f2..bee2b3b2 100755
--- a/scripts/pokemontower2.asm
+++ b/scripts/pokemontower2.asm
@@ -17,38 +17,36 @@ PokemonTower2ScriptPointers: ; 60509 (18:4509)
dw PokemonTower2Script2
PokemonTower2Script0: ; 6050f (18:450f)
- ld a, [wd764]
- bit 7, a
+ CheckEvent EVENT_BEAT_POKEMON_TOWER_RIVAL
ret nz
- ld hl, CoordsData_6055e ; $455e
+ ld hl, CoordsData_6055e
call ArePlayerCoordsInArray
ret nc
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
ld c, BANK(Music_MeetRival)
ld a, MUSIC_MEET_RIVAL
call PlayMusic
- ld hl, wd764
- res 6, [hl]
- ld a, [wWhichTrade]
+ ResetEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT
+ ld a, [wCoordIndex]
cp $1
- ld a, $8
- ld b, $0
- jr nz, .asm_60544 ; 0x60539 $9
- ld hl, wd764
- set 6, [hl]
- ld a, $2
- ld b, $c
+ ld a, PLAYER_DIR_UP
+ ld b, SPRITE_FACING_DOWN
+ jr nz, .asm_60544
+; the rival is on the left side and the player is on the right side
+ SetEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT
+ ld a, PLAYER_DIR_LEFT
+ ld b, SPRITE_FACING_RIGHT
.asm_60544
- ld [wd528], a
+ ld [wPlayerMovingDirection], a
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
ld a, b
- ld [$ff8d], a
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [hJoyHeld], a
@@ -66,22 +64,20 @@ PokemonTower2Script1: ; 60563 (18:4563)
jp z, PokemonTower2Script_604fe
ld a, $f0
ld [wJoyIgnore], a
- ld hl, wd764
- set 7, [hl]
+ SetEvent EVENT_BEAT_POKEMON_TOWER_RIVAL
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld de, MovementData_605b2
- ld a, [wd764]
- bit 6, a
- jr nz, .asm_60589 ; 0x60584 $3
+ CheckEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT
+ jr nz, .asm_60589
ld de, MovementData_605a9
.asm_60589
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
callba Music_RivalAlternateStart
ld a, $2
@@ -90,17 +86,33 @@ PokemonTower2Script1: ; 60563 (18:4563)
ret
MovementData_605a9: ; 605a9 (18:45a9)
- db $C0,$00,$00,$C0,$00,$00,$C0,$C0,$FF
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
MovementData_605b2: ; 605b2 (18:45b2)
- db $00,$00,$C0,$C0,$C0,$C0,$00,$00,$FF
+ 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_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
PokemonTower2Script2: ; 605bb (18:45bb)
ld a, [wd730]
bit 0, a
ret nz
ld a, HS_POKEMONTOWER_2_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
xor a
ld [wJoyIgnore], a
@@ -115,37 +127,36 @@ PokemonTower2TextPointers: ; 605db (18:45db)
dw PokemonTower2Text2
PokemonTower2Text1: ; 605df (18:45df)
- db $08 ; asm
- ld a, [wd764]
- bit 7, a
- jr z, .asm_16f24 ; 0x605e5
+ TX_ASM
+ CheckEvent EVENT_BEAT_POKEMON_TOWER_RIVAL
+ jr z, .asm_16f24
ld hl, PokemonTower2Text_6063c
call PrintText
- jr .asm_41852 ; 0x605ed
-.asm_16f24 ; 0x605ef
+ jr .asm_41852
+.asm_16f24
ld hl, PokemonTower2Text_6062d
call PrintText
ld hl, wd72d
set 6, [hl]
set 7, [hl]
ld hl, PokemonTower2Text_60632
- ld de, PokemonTower2Text_60637 ; XXX $4637
+ ld de, PokemonTower2Text_60637
call SaveEndBattleTextPointers
- ld a, SONY2 + $c8
+ ld a, OPP_SONY2
ld [W_CUROPPONENT], a
; select which team to use during the encounter
ld a, [W_RIVALSTARTER]
cp STARTER2
- jr nz, .NotSquirtle ; 0x6060f
+ jr nz, .NotSquirtle
ld a, $4
jr .done
-.NotSquirtle ; 0x60615
+.NotSquirtle
cp STARTER3
- jr nz, .Charmander ; 0x60617
+ jr nz, .Charmander
ld a, $5
jr .done
-.Charmander ; 0x6061d
+.Charmander
ld a, $6
.done
ld [W_TRAINERNO], a
@@ -153,7 +164,7 @@ PokemonTower2Text1: ; 605df (18:45df)
ld a, $1
ld [W_POKEMONTOWER2CURSCRIPT], a
ld [W_CURMAPSCRIPT], a
-.asm_41852 ; 0x6062a
+.asm_41852
jp TextScriptEnd
PokemonTower2Text_6062d: ; 6062d (18:462d)
diff --git a/scripts/pokemontower3.asm b/scripts/pokemontower3.asm
index 8df5bfc5..a4fbbf18 100755
--- a/scripts/pokemontower3.asm
+++ b/scripts/pokemontower3.asm
@@ -16,51 +16,51 @@ PokemonTower3TextPointers: ; 606e5 (18:46e5)
dw PokemonTower3Text1
dw PokemonTower3Text2
dw PokemonTower3Text3
- dw Predef5CText
+ dw PickUpItemText
PokemonTower3TrainerHeaders: ; 606ed (18:46ed)
PokemonTower3TrainerHeader0: ; 606ed (18:46ed)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_3_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd765 ; flag's byte
- dw PokemonTower3BattleText1 ; 0x4730 TextBeforeBattle
- dw PokemonTower3AfterBattleText1 ; 0x473a TextAfterBattle
- dw PokemonTower3EndBattleText1 ; 0x4735 TextEndBattle
- dw PokemonTower3EndBattleText1 ; 0x4735 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_3_TRAINER_0
+ dw PokemonTower3BattleText1 ; TextBeforeBattle
+ dw PokemonTower3AfterBattleText1 ; TextAfterBattle
+ dw PokemonTower3EndBattleText1 ; TextEndBattle
+ dw PokemonTower3EndBattleText1 ; TextEndBattle
PokemonTower3TrainerHeader1: ; 606f9 (18:46f9)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_3_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd765 ; flag's byte
- dw PokemonTower3BattleText2 ; 0x473f TextBeforeBattle
- dw PokemonTower3AfterBattleText2 ; 0x4749 TextAfterBattle
- dw PokemonTower3EndBattleText2 ; 0x4744 TextEndBattle
- dw PokemonTower3EndBattleText2 ; 0x4744 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_3_TRAINER_1
+ dw PokemonTower3BattleText2 ; TextBeforeBattle
+ dw PokemonTower3AfterBattleText2 ; TextAfterBattle
+ dw PokemonTower3EndBattleText2 ; TextEndBattle
+ dw PokemonTower3EndBattleText2 ; TextEndBattle
PokemonTower3TrainerHeader2: ; 60705 (18:4705)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_3_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd765 ; flag's byte
- dw PokemonTower3BattleText3 ; 0x474e TextBeforeBattle
- dw PokemonTower3AfterBattleText3 ; 0x4758 TextAfterBattle
- dw PokemonTower3EndBattleText3 ; 0x4753 TextEndBattle
- dw PokemonTower3EndBattleText3 ; 0x4753 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_3_TRAINER_2
+ dw PokemonTower3BattleText3 ; TextBeforeBattle
+ dw PokemonTower3AfterBattleText3 ; TextAfterBattle
+ dw PokemonTower3EndBattleText3 ; TextEndBattle
+ dw PokemonTower3EndBattleText3 ; TextEndBattle
db $ff
PokemonTower3Text1: ; 60712 (18:4712)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower3TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
PokemonTower3Text2: ; 6071c (18:471c)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower3TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
PokemonTower3Text3: ; 60726 (18:4726)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower3TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/pokemontower4.asm b/scripts/pokemontower4.asm
index 760bb604..2638bdc2 100755
--- a/scripts/pokemontower4.asm
+++ b/scripts/pokemontower4.asm
@@ -16,54 +16,54 @@ PokemonTower4TextPointers: ; 6080f (18:480f)
dw PokemonTower4Text1
dw PokemonTower4Text2
dw PokemonTower4Text3
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
PokemonTower4TrainerHeaders: ; 6081b (18:481b)
PokemonTower4TrainerHeader0: ; 6081b (18:481b)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_4_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd766 ; flag's byte
- dw PokemonTower4BattleText1 ; 0x485e TextBeforeBattle
- dw PokemonTower4AfterBattleText1 ; 0x4868 TextAfterBattle
- dw PokemonTower4EndBattleText1 ; 0x4863 TextEndBattle
- dw PokemonTower4EndBattleText1 ; 0x4863 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_4_TRAINER_0
+ dw PokemonTower4BattleText1 ; TextBeforeBattle
+ dw PokemonTower4AfterBattleText1 ; TextAfterBattle
+ dw PokemonTower4EndBattleText1 ; TextEndBattle
+ dw PokemonTower4EndBattleText1 ; TextEndBattle
PokemonTower4TrainerHeader1: ; 60827 (18:4827)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_4_TRAINER_1
db ($2 << 4) ; trainer's view range
- dw wd766 ; flag's byte
- dw PokemonTower4BattleText2 ; 0x486d TextBeforeBattle
- dw PokemonTower4AfterBattleText2 ; 0x4877 TextAfterBattle
- dw PokemonTower4EndBattleText2 ; 0x4872 TextEndBattle
- dw PokemonTower4EndBattleText2 ; 0x4872 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_4_TRAINER_1
+ dw PokemonTower4BattleText2 ; TextBeforeBattle
+ dw PokemonTower4AfterBattleText2 ; TextAfterBattle
+ dw PokemonTower4EndBattleText2 ; TextEndBattle
+ dw PokemonTower4EndBattleText2 ; TextEndBattle
PokemonTower4TrainerHeader2: ; 60833 (18:4833)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_4_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd766 ; flag's byte
- dw PokemonTower4BattleText3 ; 0x487c TextBeforeBattle
- dw PokemonTower4AfterBattleText3 ; 0x4886 TextAfterBattle
- dw PokemonTower4EndBattleText3 ; 0x4881 TextEndBattle
- dw PokemonTower4EndBattleText3 ; 0x4881 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_4_TRAINER_2
+ dw PokemonTower4BattleText3 ; TextBeforeBattle
+ dw PokemonTower4AfterBattleText3 ; TextAfterBattle
+ dw PokemonTower4EndBattleText3 ; TextEndBattle
+ dw PokemonTower4EndBattleText3 ; TextEndBattle
db $ff
PokemonTower4Text1: ; 60840 (18:4840)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower4TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
PokemonTower4Text2: ; 6084a (18:484a)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower4TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
PokemonTower4Text3: ; 60854 (18:4854)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower4TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/pokemontower5.asm b/scripts/pokemontower5.asm
index b70f9e28..c4e9eed9 100755
--- a/scripts/pokemontower5.asm
+++ b/scripts/pokemontower5.asm
@@ -13,18 +13,15 @@ PokemonTower5ScriptPointers: ; 60945 (18:4945)
dw EndTrainerBattle
PokemonTower5Script0: ; 6094b (18:494b)
- ld hl, CoordsData_60992 ; $4992
+ ld hl, CoordsData_60992
call ArePlayerCoordsInArray
jr c, .asm_60960
ld hl, wd72e
res 4, [hl]
- ld hl, wd767
- res 7, [hl]
+ ResetEvent EVENT_IN_PURIFIED_ZONE
jp CheckFightingMapTrainers
.asm_60960
- ld hl, wd767
- bit 7, [hl]
- set 7, [hl]
+ CheckAndSetEvent EVENT_IN_PURIFIED_ZONE
ret nz
xor a
ld [hJoyHeld], a
@@ -38,7 +35,7 @@ PokemonTower5Script0: ; 6094b (18:494b)
call Delay3
call GBFadeInFromWhite
ld a, $7
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [wJoyIgnore], a
@@ -57,45 +54,45 @@ PokemonTower5TextPointers: ; 6099b (18:499b)
dw PokemonTower5Text3
dw PokemonTower5Text4
dw PokemonTower5Text5
- dw Predef5CText
+ dw PickUpItemText
dw PokemonTower5Text7
PokemonTower5TrainerHeaders: ; 609a9 (18:49a9)
PokemonTower5TrainerHeader0: ; 609a9 (18:49a9)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_5_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd767 ; flag's byte
- dw PokemonTower5BattleText1 ; 0x49e9 TextBeforeBattle
- dw PokemonTower5AfterBattleText1 ; 0x49f3 TextAfterBattle
- dw PokemonTower5EndBattleText1 ; 0x49ee TextEndBattle
- dw PokemonTower5EndBattleText1 ; 0x49ee TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_5_TRAINER_0
+ dw PokemonTower5BattleText1 ; TextBeforeBattle
+ dw PokemonTower5AfterBattleText1 ; TextAfterBattle
+ dw PokemonTower5EndBattleText1 ; TextEndBattle
+ dw PokemonTower5EndBattleText1 ; TextEndBattle
PokemonTower5TrainerHeader1: ; 609b5 (18:49b5)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_5_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd767 ; flag's byte
- dw PokemonTower5BattleText2 ; 0x4a02 TextBeforeBattle
- dw PokemonTower5AfterBattleText2 ; 0x4a0c TextAfterBattle
- dw PokemonTower5EndBattleText2 ; 0x4a07 TextEndBattle
- dw PokemonTower5EndBattleText2 ; 0x4a07 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_5_TRAINER_1
+ dw PokemonTower5BattleText2 ; TextBeforeBattle
+ dw PokemonTower5AfterBattleText2 ; TextAfterBattle
+ dw PokemonTower5EndBattleText2 ; TextEndBattle
+ dw PokemonTower5EndBattleText2 ; TextEndBattle
PokemonTower5TrainerHeader2: ; 609c1 (18:49c1)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_5_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd767 ; flag's byte
- dw PokemonTower5BattleText3 ; 0x4a1b TextBeforeBattle
- dw PokemonTower5AfterBattleText3 ; 0x4a25 TextAfterBattle
- dw PokemonTower5EndBattleText3 ; 0x4a20 TextEndBattle
- dw PokemonTower5EndBattleText3 ; 0x4a20 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_5_TRAINER_2
+ dw PokemonTower5BattleText3 ; TextBeforeBattle
+ dw PokemonTower5AfterBattleText3 ; TextAfterBattle
+ dw PokemonTower5EndBattleText3 ; TextEndBattle
+ dw PokemonTower5EndBattleText3 ; TextEndBattle
PokemonTower5TrainerHeader3: ; 609cd (18:49cd)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_5_TRAINER_3
db ($2 << 4) ; trainer's view range
- dw wd767 ; flag's byte
- dw PokemonTower5BattleText4 ; 0x4a34 TextBeforeBattle
- dw PokemonTower5AfterBattleText4 ; 0x4a3e TextAfterBattle
- dw PokemonTower5EndBattleText4 ; 0x4a39 TextEndBattle
- dw PokemonTower5EndBattleText4 ; 0x4a39 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_5_TRAINER_3
+ dw PokemonTower5BattleText4 ; TextBeforeBattle
+ dw PokemonTower5AfterBattleText4 ; TextAfterBattle
+ dw PokemonTower5EndBattleText4 ; TextEndBattle
+ dw PokemonTower5EndBattleText4 ; TextEndBattle
db $ff
@@ -104,7 +101,7 @@ PokemonTower5Text1: ; 609da (18:49da)
db "@"
PokemonTower5Text2: ; 609df (18:49df)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower5TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -122,7 +119,7 @@ PokemonTower5AfterBattleText1: ; 609f3 (18:49f3)
db "@"
PokemonTower5Text3: ; 609f8 (18:49f8)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower5TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -140,7 +137,7 @@ PokemonTower5AfterBattleText2: ; 60a0c (18:4a0c)
db "@"
PokemonTower5Text4: ; 60a11 (18:4a11)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower5TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -158,8 +155,8 @@ PokemonTower5AfterBattleText3: ; 60a25 (18:4a25)
db "@"
PokemonTower5Text5: ; 60a2a (18:4a2a)
- db $08 ; asm
- ld hl, PokemonTower5TrainerHeader3 ; $49cd
+ TX_ASM
+ ld hl, PokemonTower5TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/pokemontower6.asm b/scripts/pokemontower6.asm
index 58968d17..37ca1b33 100755
--- a/scripts/pokemontower6.asm
+++ b/scripts/pokemontower6.asm
@@ -22,21 +22,20 @@ PokemonTower6ScriptPointers: ; 60b0d (18:4b0d)
dw PokemonTower6Script4
PokemonTower6Script0: ; 60b17 (18:4b17)
- ld a, [wd768]
- bit 7, a
+ CheckEvent EVENT_BEAT_GHOST_MAROWAK
jp nz, CheckFightingMapTrainers
- ld hl, CoordsData_60b45 ; $4b45
+ ld hl, CoordsData_60b45
call ArePlayerCoordsInArray
jp nc, CheckFightingMapTrainers
xor a
ld [hJoyHeld], a
ld a, $6
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, MAROWAK
- ld [W_CUROPPONENT], a ; wd059
+ ld [W_CUROPPONENT], a
ld a, 30
- ld [W_CURENEMYLVL], a ; W_CURENEMYLVL
+ ld [W_CURENEMYLVL], a
ld a, $4
ld [W_POKEMONTOWER6CURSCRIPT], a
ld [W_CURMAPSCRIPT], a
@@ -46,7 +45,7 @@ CoordsData_60b45: ; 60b45 (18:4b45)
db $10,$0A,$FF
PokemonTower6Script4: ; 60b48 (18:4b48)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, PokemonTower6Script_60b02
ld a, $ff
@@ -60,10 +59,9 @@ PokemonTower6Script4: ; 60b48 (18:4b48)
ld a, [wBattleResult]
and a
jr nz, .asm_60b82
- ld hl, wd768
- set 7, [hl]
+ SetEvent EVENT_BEAT_GHOST_MAROWAK
ld a, $7
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [wJoyIgnore], a
@@ -100,67 +98,67 @@ PokemonTower6TextPointers: ; 60bb1 (18:4bb1)
dw PokemonTower6Text1
dw PokemonTower6Text2
dw PokemonTower6Text3
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
dw PokemonTower6Text6
dw PokemonTower6Text7
PokemonTower6TrainerHeaders: ; 60bbf (18:4bbf)
PokemonTower6TrainerHeader0: ; 60bbf (18:4bbf)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_6_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd768 ; flag's byte
- dw PokemonTower6BattleText1 ; 0x4c29 TextBeforeBattle
- dw PokemonTower6AfterBattleText1 ; 0x4c33 TextAfterBattle
- dw PokemonTower6EndBattleText1 ; 0x4c2e TextEndBattle
- dw PokemonTower6EndBattleText1 ; 0x4c2e TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_6_TRAINER_0
+ dw PokemonTower6BattleText1 ; TextBeforeBattle
+ dw PokemonTower6AfterBattleText1 ; TextAfterBattle
+ dw PokemonTower6EndBattleText1 ; TextEndBattle
+ dw PokemonTower6EndBattleText1 ; TextEndBattle
PokemonTower6TrainerHeader1: ; 60bcb (18:4bcb)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_6_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd768 ; flag's byte
- dw PokemonTower6BattleText2 ; 0x4c38 TextBeforeBattle
- dw PokemonTower6AfterBattleText2 ; 0x4c42 TextAfterBattle
- dw PokemonTower6EndBattleText2 ; 0x4c3d TextEndBattle
- dw PokemonTower6EndBattleText2 ; 0x4c3d TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_6_TRAINER_1
+ dw PokemonTower6BattleText2 ; TextBeforeBattle
+ dw PokemonTower6AfterBattleText2 ; TextAfterBattle
+ dw PokemonTower6EndBattleText2 ; TextEndBattle
+ dw PokemonTower6EndBattleText2 ; TextEndBattle
PokemonTower6TrainerHeader2: ; 60bd7 (18:4bd7)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_6_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd768 ; flag's byte
- dw PokemonTower6BattleText3 ; 0x4c47 TextBeforeBattle
- dw PokemonTower6AfterBattleText3 ; 0x4c51 TextAfterBattle
- dw PokemonTower6EndBattleText3 ; 0x4c4c TextEndBattle
- dw PokemonTower6EndBattleText3 ; 0x4c4c TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_6_TRAINER_2
+ dw PokemonTower6BattleText3 ; TextBeforeBattle
+ dw PokemonTower6AfterBattleText3 ; TextAfterBattle
+ dw PokemonTower6EndBattleText3 ; TextEndBattle
+ dw PokemonTower6EndBattleText3 ; TextEndBattle
db $ff
PokemonTower6Text1: ; 60be4 (18:4be4)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower6TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
PokemonTower6Text2: ; 60bee (18:4bee)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower6TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
PokemonTower6Text3: ; 60bf8 (18:4bf8)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower6TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
PokemonTower6Text7: ; 60c02 (18:4c02)
- db $8
+ TX_ASM
ld hl, PokemonTower2Text_60c1f
call PrintText
ld a, MAROWAK
call PlayCry
call WaitForSoundToFinish
- ld c, $1e
+ ld c, 30
call DelayFrames
ld hl, PokemonTower2Text_60c24
call PrintText
diff --git a/scripts/pokemontower7.asm b/scripts/pokemontower7.asm
index ab42121d..a4635aa3 100755
--- a/scripts/pokemontower7.asm
+++ b/scripts/pokemontower7.asm
@@ -24,14 +24,14 @@ PokemonTower7ScriptPointers:
PokemonTower7Script2: ; 60d23 (18:4d23)
ld hl, wFlags_0xcd60
res 0, [hl]
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, PokemonTower7Script_60d18
call EndTrainerBattle
ld a, $f0
ld [wJoyIgnore], a
ld a, [wSpriteIndex]
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call PokemonTower7Script_60db6
ld a, $3
@@ -51,13 +51,13 @@ PokemonTower7Script3: ; 60d56 (18:4d56)
cp b ; search for sprite ID in missing objects list
ld a, [hli]
jr nz, .missableObjectsListLoop
- ld [wcc4d], a ; remove missable object
+ ld [wMissableObjectIndex], a ; remove missable object
predef HideObject
xor a
ld [wJoyIgnore], a
ld [wSpriteIndex], a
ld [wTrainerHeaderFlagBit], a
- ld [wda38], a
+ ld [wUnusedDA38], a
ld a, $0
ld [W_POKEMONTOWER7CURSCRIPT], a
ld [W_CURMAPSCRIPT], a
@@ -67,12 +67,12 @@ PokemonTower7Script4: ; 60d86 (18:4d86)
ld a, $ff
ld [wJoyIgnore], a
ld a, HS_POKEMONTOWER_7_MR_FUJI
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
- ld a, $4
+ ld a, SPRITE_FACING_UP
ld [wSpriteStateData1 + 9], a
ld a, LAVENDER_HOUSE_1
- ld [H_DOWNARROWBLINKCNT1], a ; $ff8b
+ ld [hWarpDestinationMap], a
ld a, $1
ld [wDestinationWarpID], a
ld a, LAVENDER_TOWN
@@ -85,16 +85,16 @@ PokemonTower7Script4: ; 60d86 (18:4d86)
ret
PokemonTower7Script_60db6: ; 60db6 (18:4db6)
- ld hl, CoordsData_60de3 ; $4de3
+ ld hl, CoordsData_60de3
ld a, [wSpriteIndex]
dec a
swap a
ld d, $0
ld e, a
add hl, de
- ld a, [W_YCOORD] ; wd361
+ ld a, [W_YCOORD]
ld b, a
- ld a, [W_XCOORD] ; wd362
+ ld a, [W_XCOORD]
ld c, a
.asm_60dcb
ld a, [hli]
@@ -107,7 +107,7 @@ PokemonTower7Script_60db6: ; 60db6 (18:4db6)
ld d, [hl]
ld e, a
ld a, [wSpriteIndex]
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
jp MoveSprite
.asm_60dde
inc hl
@@ -143,22 +143,60 @@ CoordsData_60de3: ; 60de3 (18:4de3)
dw MovementData_60e22
MovementData_60e13: ; 60e13
- db $C0,$00,$00,$00,$00,$00,$80,$FF
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_LEFT
+ db $FF
MovementData_60e1b: ; 60e1b
- db $00,$C0,$00,$00,$00,$00,$FF
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
MovementData_60e22: ; 60e22
- db $00,$00,$00,$00,$00,$FF
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
MovementData_60e28: ; 60e28
- db $80,$00,$00,$00,$00,$00,$00,$FF
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
MovementData_60e30: ; 60e30
- db $00,$00,$00,$80,$00,$00,$FF
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
MovementData_60e37: ; 60e37
- db $C0,$00,$00,$00,$00,$00,$00,$FF
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
PokemonTower7TextPointers: ; 60e3f (18:4e3f)
dw PokemonTower7Text1
@@ -168,68 +206,66 @@ PokemonTower7TextPointers: ; 60e3f (18:4e3f)
PokemonTower7TrainerHeaders: ; 60e47 (18:4e47)
PokemonTower7TrainerHeader0: ; 60e47 (18:4e47)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_7_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd769 ; flag's byte
- dw PokemonTower7BattleText1 ; 0x4ec9 TextBeforeBattle
- dw PokemonTower7AfterBattleText1 ; 0x4ed3 TextAfterBattle
- dw PokemonTower7EndBattleText1 ; 0x4ece TextEndBattle
- dw PokemonTower7EndBattleText1 ; 0x4ece TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_7_TRAINER_0
+ dw PokemonTower7BattleText1 ; TextBeforeBattle
+ dw PokemonTower7AfterBattleText1 ; TextAfterBattle
+ dw PokemonTower7EndBattleText1 ; TextEndBattle
+ dw PokemonTower7EndBattleText1 ; TextEndBattle
PokemonTower7TrainerHeader1: ; 60e53 (18:4e53)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd769 ; flag's byte
- dw PokemonTower7BattleText2 ; 0x4ed8 TextBeforeBattle
- dw PokemonTower7AfterBattleText2 ; 0x4ee2 TextAfterBattle
- dw PokemonTower7EndBattleText2 ; 0x4edd TextEndBattle
- dw PokemonTower7EndBattleText2 ; 0x4edd TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
+ dw PokemonTower7BattleText2 ; TextBeforeBattle
+ dw PokemonTower7AfterBattleText2 ; TextAfterBattle
+ dw PokemonTower7EndBattleText2 ; TextEndBattle
+ dw PokemonTower7EndBattleText2 ; TextEndBattle
PokemonTower7TrainerHeader2: ; 60e5f (18:4e5f)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_7_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd769 ; flag's byte
- dw PokemonTower7BattleText3 ; 0x4ee7 TextBeforeBattle
- dw PokemonTower7AfterBattleText3 ; 0x4ef1 TextAfterBattle
- dw PokemonTower7EndBattleText3 ; 0x4eec TextEndBattle
- dw PokemonTower7EndBattleText3 ; 0x4eec TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_7_TRAINER_2
+ dw PokemonTower7BattleText3 ; TextBeforeBattle
+ dw PokemonTower7AfterBattleText3 ; TextAfterBattle
+ dw PokemonTower7EndBattleText3 ; TextEndBattle
+ dw PokemonTower7EndBattleText3 ; TextEndBattle
db $ff
PokemonTower7Text1: ; 60e6c (18:4e6c)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower7TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
PokemonTower7Text2: ; 60e76 (18:4e76)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower7TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
PokemonTower7Text3: ; 60e80 (18:4e80)
- db $08 ; asm
+ TX_ASM
ld hl, PokemonTower7TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
PokemonTower7FujiText:
- db 8 ; asm
+ TX_ASM
ld hl, TowerRescueFujiText
call PrintText
- ld hl, wd7e0
- set 7, [hl]
- ld hl, wd769
- set 7, [hl]
+ SetEvent EVENT_RESCUED_MR_FUJI
+ SetEvent EVENT_RESCUED_MR_FUJI_2
ld a, HS_LAVENDER_HOUSE_1_MR_FUJI
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
ld a, HS_SAFFRON_CITY_E
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_SAFFRON_CITY_F
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
ld a, $4
ld [W_POKEMONTOWER7CURSCRIPT], a
diff --git a/scripts/powerplant.asm b/scripts/powerplant.asm
index ec4f89b3..48f291e1 100755
--- a/scripts/powerplant.asm
+++ b/scripts/powerplant.asm
@@ -22,89 +22,89 @@ PowerPlantTextPointers: ; 1e2df (7:62df)
dw PowerPlantText7
dw PowerPlantText8
dw PowerPlantText9
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
PowerPlantTrainerHeaders: ; 1e2fb (7:62fb)
PowerPlantTrainerHeader0: ; 1e2fb (7:62fb)
- db 1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_TRAINER_0
db 0 ; view range
- dw wd7d3 ; flag's byte
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_TRAINER_0
dw VoltorbBattleText ; TextBeforeBattle
dw VoltorbBattleText ; TextAfterBattle
dw VoltorbBattleText ; TextEndBattle
dw VoltorbBattleText ; TextEndBattle
PowerPlantTrainerHeader1: ; 1e307 (7:6307)
- db 2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_TRAINER_1
db 0 ; view range
- dw wd7d3 ; flag's byte
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_TRAINER_1
dw VoltorbBattleText ; TextBeforeBattle
dw VoltorbBattleText ; TextAfterBattle
dw VoltorbBattleText ; TextEndBattle
dw VoltorbBattleText ; TextEndBattle
PowerPlantTrainerHeader2: ; 1e313 (7:6313)
- db 3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_TRAINER_2
db 0 ; view range
- dw wd7d3 ; flag's byte
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_TRAINER_2
dw VoltorbBattleText ; TextBeforeBattle
dw VoltorbBattleText ; TextAfterBattle
dw VoltorbBattleText ; TextEndBattle
dw VoltorbBattleText ; TextEndBattle
PowerPlantTrainerHeader3: ; 1e31f (7:631f)
- db 4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_TRAINER_3
db 0 ; view range
- dw wd7d3 ; flag's byte
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_TRAINER_3
dw VoltorbBattleText ; TextBeforeBattle
dw VoltorbBattleText ; TextAfterBattle
dw VoltorbBattleText ; TextEndBattle
dw VoltorbBattleText ; TextEndBattle
PowerPlantTrainerHeader4: ; 1e32b (7:632b)
- db 5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_TRAINER_4
db 0 ; view range
- dw wd7d3 ; flag's byte
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_TRAINER_4
dw VoltorbBattleText ; TextBeforeBattle
dw VoltorbBattleText ; TextAfterBattle
dw VoltorbBattleText ; TextEndBattle
dw VoltorbBattleText ; TextEndBattle
PowerPlantTrainerHeader5: ; 1e337 (7:6337)
- db 6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_TRAINER_5
db 0 ; view range
- dw wd7d3 ; flag's byte
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_TRAINER_5
dw VoltorbBattleText ; TextBeforeBattle
dw VoltorbBattleText ; TextAfterBattle
dw VoltorbBattleText ; TextEndBattle
dw VoltorbBattleText ; TextEndBattle
PowerPlantTrainerHeader6: ; 1e343 (7:6343)
- db 7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_TRAINER_6
db 0 ; view range
- dw wd7d3 ; flag's byte
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_TRAINER_6
dw VoltorbBattleText ; TextBeforeBattle
dw VoltorbBattleText ; TextAfterBattle
dw VoltorbBattleText ; TextEndBattle
dw VoltorbBattleText ; TextEndBattle
PowerPlantTrainerHeader7: ; 1e34f (7:634f)
- db 8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_TRAINER_7, 1
db 0 ; view range
- dw wd7d3 ; flag's byte
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_TRAINER_7, 1
dw VoltorbBattleText ; TextBeforeBattle
dw VoltorbBattleText ; TextAfterBattle
dw VoltorbBattleText ; TextEndBattle
dw VoltorbBattleText ; TextEndBattle
PowerPlantTrainerHeader8: ; 1e35b (7:635b)
- db 9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_TRAINER_8, 1
db 0 ; view range
- dw wd7d3 ; flag's byte
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_TRAINER_8, 1
dw ZapdosBattleText ; TextBeforeBattle
dw ZapdosBattleText ; TextAfterBattle
dw ZapdosBattleText ; TextEndBattle
@@ -112,56 +112,56 @@ PowerPlantTrainerHeader8: ; 1e35b (7:635b)
db $ff
-asm_234cc: ; 1e368 (7:6368)
+InitVoltorbBattle: ; 1e368 (7:6368)
call TalkToTrainer
ld a, [W_CURMAPSCRIPT]
ld [W_POWERPLANTCURSCRIPT], a
jp TextScriptEnd
PowerPlantText1: ; 1e374 (7:6374)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader0 ; $62fb
- jr asm_234cc ; 0x1e378 $ee
+ TX_ASM
+ ld hl, PowerPlantTrainerHeader0
+ jr InitVoltorbBattle
PowerPlantText2: ; 1e37a (7:637a)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader1 ; $6307
- jr asm_234cc ; 0x1e37e $e8
+ TX_ASM
+ ld hl, PowerPlantTrainerHeader1
+ jr InitVoltorbBattle
PowerPlantText3: ; 1e380 (7:6380)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader2 ; $6313
- jr asm_234cc ; 0x1e384 $e2
+ TX_ASM
+ ld hl, PowerPlantTrainerHeader2
+ jr InitVoltorbBattle
PowerPlantText4: ; 1e386 (7:6386)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader3 ; $631f
- jr asm_234cc ; 0x1e38a $dc
+ TX_ASM
+ ld hl, PowerPlantTrainerHeader3
+ jr InitVoltorbBattle
PowerPlantText5: ; 1e38c (7:638c)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader4 ; $632b
- jr asm_234cc ; 0x1e390 $d6
+ TX_ASM
+ ld hl, PowerPlantTrainerHeader4
+ jr InitVoltorbBattle
PowerPlantText6: ; 1e392 (7:6392)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader5 ; $6337
- jr asm_234cc ; 0x1e396 $d0
+ TX_ASM
+ ld hl, PowerPlantTrainerHeader5
+ jr InitVoltorbBattle
PowerPlantText7: ; 1e398 (7:6398)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader6 ; $6343
- jr asm_234cc ; 0x1e39c $ca
+ TX_ASM
+ ld hl, PowerPlantTrainerHeader6
+ jr InitVoltorbBattle
PowerPlantText8: ; 1e39e (7:639e)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader7 ; $634f
- jr asm_234cc ; 0x1e3a2 $c4
+ TX_ASM
+ ld hl, PowerPlantTrainerHeader7
+ jr InitVoltorbBattle
PowerPlantText9: ; 1e3a4 (7:63a4)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader8 ; $635b
- jr asm_234cc ; 0x1e3a8 $be
+ TX_ASM
+ ld hl, PowerPlantTrainerHeader8
+ jr InitVoltorbBattle
VoltorbBattleText: ; 1e3aa (7:63aa)
TX_FAR _VoltorbBattleText
@@ -169,7 +169,7 @@ VoltorbBattleText: ; 1e3aa (7:63aa)
ZapdosBattleText: ; 1e3af (7:63af)
TX_FAR _ZapdosBattleText
- db $8
+ TX_ASM
ld a, ZAPDOS
call PlayCry
call WaitForSoundToFinish
diff --git a/scripts/redshouse1f.asm b/scripts/redshouse1f.asm
index 7b3f1f87..f9c7193f 100755
--- a/scripts/redshouse1f.asm
+++ b/scripts/redshouse1f.asm
@@ -5,8 +5,8 @@ RedsHouse1FTextPointers: ; 4816b (12:416b)
dw RedsHouse1FText1
dw RedsHouse1FText2
-RedsHouse1FText1: ; 4816f (12:416f) ; 416F Mom
- db 8
+RedsHouse1FText1: ; 4816f (12:416f) Mom
+ TX_ASM
ld a, [wd72e]
bit 3, a
jr nz, .heal ; if player has received a Pokémon from Oak, heal team
@@ -29,14 +29,14 @@ MomHealPokemon: ; 4818a (12:418a)
call ReloadMapData
predef HealParty
ld a, MUSIC_PKMN_HEALED
- ld [wc0ee], a
- call PlaySound ; play sound?
+ ld [wNewSoundID], a
+ call PlaySound
.next
- ld a, [wc026]
+ ld a, [wChannelSoundIDs]
cp MUSIC_PKMN_HEALED
jr z, .next
- ld a, [wd35b]
- ld [wc0ee], a
+ ld a, [wMapMusicSoundID]
+ ld [wNewSoundID], a
call PlaySound
call GBFadeInFromWhite
ld hl, MomHealText2
@@ -50,13 +50,13 @@ MomHealText2: ; 481c1 (12:41c1)
db "@"
RedsHouse1FText2: ; 0x481c6 TV
- db 8
+ TX_ASM
ld a,[wSpriteStateData1 + 9]
- cp 4
+ cp SPRITE_FACING_UP
ld hl,TVWrongSideText
- jr nz,.done ; if player is not facing up
+ jr nz,.notUp
ld hl,StandByMeText
-.done
+.notUp
call PrintText
jp TextScriptEnd
diff --git a/scripts/redshouse2f.asm b/scripts/redshouse2f.asm
index 8fcdc66e..2335e6d1 100755
--- a/scripts/redshouse2f.asm
+++ b/scripts/redshouse2f.asm
@@ -11,8 +11,8 @@ RedsHouse2FScriptPointers: ; 5c0bc (17:40bc)
RedsHouse2FScript0: ; 5c0c0 (17:40c0)
xor a
ld [hJoyHeld],a
- ld a,8
- ld [wd528],a
+ ld a,PLAYER_DIR_UP
+ ld [wPlayerMovingDirection],a
ld a,1
ld [W_REDSHOUSE2CURSCRIPT],a
ret
diff --git a/scripts/rockethideout1.asm b/scripts/rockethideout1.asm
index 499f77ef..82561577 100755
--- a/scripts/rockethideout1.asm
+++ b/scripts/rockethideout1.asm
@@ -13,23 +13,21 @@ RocketHideout1Script_44be0: ; 44be0 (11:4be0)
bit 5, [hl]
res 5, [hl]
ret z
- ld a, [wd815]
- bit 7, a
+ CheckEvent EVENT_677
jr nz, .asm_44c01
- bit 5, a
+ CheckEventReuseA EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_5
jr nz, .asm_44bf7
ld a, $54
jr .asm_44c03
.asm_44bf7
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ ld a, SFX_GO_INSIDE
call PlaySound
- ld hl, wd815
- bit 7, [hl]
+ CheckEventHL EVENT_677
.asm_44c01
ld a, $e
.asm_44c03
- ld [wd09f], a
- ld bc, $080c
+ ld [wNewTileBlockID], a
+ lb bc, 8, 12
predef_jump ReplaceTileBlock
RocketHideout1ScriptPointers: ; 44c0e (11:4c0e)
@@ -43,92 +41,91 @@ RocketHideout1TextPointers: ; 44c14 (11:4c14)
dw RocketHideout1Text3
dw RocketHideout1Text4
dw RocketHideout1Text5
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
RocketHideout1TrainerHeaders: ; 44c22 (11:4c22)
RocketHideout1TrainerHeader0: ; 44c22 (11:4c22)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd815 ; flag's byte
- dw RocketHideout1BattleText2 ; 0x4ca1 TextBeforeBattle
- dw RocketHideout1AfterBattleTxt2 ; 0x4cab TextAfterBattle
- dw RocketHideout1EndBattleText2 ; 0x4ca6 TextEndBattle
- dw RocketHideout1EndBattleText2 ; 0x4ca6 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_0
+ dw RocketHideout1BattleText2 ; TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt2 ; TextAfterBattle
+ dw RocketHideout1EndBattleText2 ; TextEndBattle
+ dw RocketHideout1EndBattleText2 ; TextEndBattle
RocketHideout1TrainerHeader2: ; 44c2e (11:4c2e)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd815 ; flag's byte
- dw RocketHideout1BattleText3 ; 0x4cb0 TextBeforeBattle
- dw RocketHideout1AfterBattleTxt3 ; 0x4cba TextAfterBattle
- dw RocketHideout1EndBattleText3 ; 0x4cb5 TextEndBattle
- dw RocketHideout1EndBattleText3 ; 0x4cb5 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_2
+ dw RocketHideout1BattleText3 ; TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt3 ; TextAfterBattle
+ dw RocketHideout1EndBattleText3 ; TextEndBattle
+ dw RocketHideout1EndBattleText3 ; TextEndBattle
RocketHideout1TrainerHeader3: ; 44c3a (11:4c3a)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_3
db ($2 << 4) ; trainer's view range
- dw wd815 ; flag's byte
- dw RocketHideout1BattleText4 ; 0x4cbf TextBeforeBattle
- dw RocketHideout1AfterBattleTxt4 ; 0x4cc9 TextAfterBattle
- dw RocketHideout1EndBattleText4 ; 0x4cc4 TextEndBattle
- dw RocketHideout1EndBattleText4 ; 0x4cc4 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_3
+ dw RocketHideout1BattleText4 ; TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt4 ; TextAfterBattle
+ dw RocketHideout1EndBattleText4 ; TextEndBattle
+ dw RocketHideout1EndBattleText4 ; TextEndBattle
RocketHideout1TrainerHeader4: ; 44c46 (11:4c46)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4
db ($3 << 4) ; trainer's view range
- dw wd815 ; flag's byte
- dw RocketHideout1BattleText5 ; 0x4cce TextBeforeBattle
- dw RocketHideout1AfterBattleTxt5 ; 0x4cd8 TextAfterBattle
- dw RocketHideout1EndBattleText5 ; 0x4cd3 TextEndBattle
- dw RocketHideout1EndBattleText5 ; 0x4cd3 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4
+ dw RocketHideout1BattleText5 ; TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt5 ; TextAfterBattle
+ dw RocketHideout1EndBattleText5 ; TextEndBattle
+ dw RocketHideout1EndBattleText5 ; TextEndBattle
RocketHideout1TrainerHeader5: ; 44c52 (11:4c52)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_5
db ($3 << 4) ; trainer's view range
- dw wd815 ; flag's byte
- dw RocketHideout1BattleText6 ; 0x4cdd TextBeforeBattle
- dw RocketHideout1AfterBattleTxt6 ; 0x4ce2 TextAfterBattle
- dw RocketHideout1EndBattleText6 ; 0x4c91 TextEndBattle
- dw RocketHideout1EndBattleText6 ; 0x4c91 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_5
+ dw RocketHideout1BattleText6 ; TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt6 ; TextAfterBattle
+ dw RocketHideout1EndBattleText6 ; TextEndBattle
+ dw RocketHideout1EndBattleText6 ; TextEndBattle
db $ff
RocketHideout1Text1: ; 44c5f (11:4c5f)
- db $08 ; asm
+ TX_ASM
ld hl, RocketHideout1TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
RocketHideout1Text2: ; 44c69 (11:4c69)
- db $08 ; asm
+ TX_ASM
ld hl, RocketHideout1TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
RocketHideout1Text3: ; 44c73 (11:4c73)
- db $08 ; asm
+ TX_ASM
ld hl, RocketHideout1TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
RocketHideout1Text4: ; 44c7d (11:4c7d)
- db $08 ; asm
+ TX_ASM
ld hl, RocketHideout1TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
RocketHideout1Text5: ; 44c87 (11:4c87)
- db $08 ; asm
+ TX_ASM
ld hl, RocketHideout1TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
RocketHideout1EndBattleText6: ; 44c91 (11:4c91)
TX_FAR _RocketHideout1EndBattleText6
- db $8
- ld hl, wd815
- set 5, [hl]
+ TX_ASM
+ SetEvent EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_5
ld hl, RocketHideout1Text_44c9f
ret
diff --git a/scripts/rockethideout2.asm b/scripts/rockethideout2.asm
index 99754658..f269faef 100755
--- a/scripts/rockethideout2.asm
+++ b/scripts/rockethideout2.asm
@@ -25,7 +25,7 @@ RocketHideout2Script0: ; 44e42 (11:4e42)
ld hl, wd736
set 7, [hl]
call StartSimulatingJoypadStates
- ld a, (SFX_02_52 - SFX_Headers_02) / 3
+ ld a, SFX_ARROW_TILES
call PlaySound
ld a, $ff
ld [wJoyIgnore], a
@@ -126,183 +126,179 @@ RocketHideout2ArrowTilePlayerMovement: ; 44e6d (11:4e6d)
db $FF
;format: direction, count
-;right: $10
-;left: $20
-;up: $40
-;down: $80
;each list is read starting from the $FF and working backwards
RocketHideout2ArrowMovement1: ; 44f1a (11:4f1a)
- db $20,$02
+ db D_LEFT,$02
db $FF
RocketHideout2ArrowMovement2: ; 44f1d (11:4f1d)
- db $10,$04
+ db D_RIGHT,$04
db $FF
RocketHideout2ArrowMovement3: ; 44f20 (11:4f20)
- db $40,$04
- db $10,$04
+ db D_UP,$04
+ db D_RIGHT,$04
db $FF
RocketHideout2ArrowMovement4: ; 44f25 (11:4f25)
- db $40,$04
- db $10,$04
- db $40,$01
+ db D_UP,$04
+ db D_RIGHT,$04
+ db D_UP,$01
db $FF
RocketHideout2ArrowMovement5: ; 44f2c (11:4f2c)
- db $20,$02
- db $40,$03
+ db D_LEFT,$02
+ db D_UP,$03
db $FF
RocketHideout2ArrowMovement6: ; 44f31 (11:4f31)
- db $80,$02
- db $10,$04
+ db D_DOWN,$02
+ db D_RIGHT,$04
db $FF
RocketHideout2ArrowMovement7: ; 44f36 (11:4f36)
- db $40,$02
+ db D_UP,$02
db $FF
RocketHideout2ArrowMovement8: ; 44f39 (11:4f39)
- db $40,$04
+ db D_UP,$04
db $FF
RocketHideout2ArrowMovement9: ; 44f3c (11:4f3c)
- db $20,$06
+ db D_LEFT,$06
db $FF
RocketHideout2ArrowMovement10: ; 44f3f (11:4f3f)
- db $40,$01
+ db D_UP,$01
db $FF
RocketHideout2ArrowMovement11: ; 44f42 (11:4f42)
- db $20,$06
- db $40,$04
+ db D_LEFT,$06
+ db D_UP,$04
db $FF
RocketHideout2ArrowMovement12: ; 44f47 (11:4f47)
- db $80,$02
+ db D_DOWN,$02
db $FF
RocketHideout2ArrowMovement13: ; 44f4a (11:4f4a)
- db $20,$08
+ db D_LEFT,$08
db $FF
RocketHideout2ArrowMovement14: ; 44f4d (11:4f4d)
- db $20,$08
- db $40,$01
+ db D_LEFT,$08
+ db D_UP,$01
db $FF
RocketHideout2ArrowMovement15: ; 44f52 (11:4f52)
- db $20,$08
- db $40,$06
+ db D_LEFT,$08
+ db D_UP,$06
db $FF
RocketHideout2ArrowMovement16: ; 44f57 (11:4f57)
- db $40,$02
- db $10,$04
+ db D_UP,$02
+ db D_RIGHT,$04
db $FF
RocketHideout2ArrowMovement17: ; 44f5c (11:4f5c)
- db $40,$02
- db $10,$04
- db $40,$02
+ db D_UP,$02
+ db D_RIGHT,$04
+ db D_UP,$02
db $FF
RocketHideout2ArrowMovement18: ; 44f63 (11:4f63)
- db $80,$02
- db $10,$04
- db $80,$02
+ db D_DOWN,$02
+ db D_RIGHT,$04
+ db D_DOWN,$02
db $FF
RocketHideout2ArrowMovement19: ; 44f6a (11:4f6a)
- db $80,$02
- db $10,$04
+ db D_DOWN,$02
+ db D_RIGHT,$04
db $FF
RocketHideout2ArrowMovement20: ; 44f6f (11:4f6f)
- db $20,$0A
+ db D_LEFT,$0A
db $FF
RocketHideout2ArrowMovement21: ; 44f72 (11:4f72)
- db $20,$0A
- db $40,$02
+ db D_LEFT,$0A
+ db D_UP,$02
db $FF
RocketHideout2ArrowMovement22: ; 44f77 (11:4f77)
- db $20,$0A
- db $40,$04
+ db D_LEFT,$0A
+ db D_UP,$04
db $FF
RocketHideout2ArrowMovement23: ; 44f7c (11:4f7c)
- db $40,$02
- db $10,$02
+ db D_UP,$02
+ db D_RIGHT,$02
db $FF
RocketHideout2ArrowMovement24: ; 44f81 (11:4f81)
- db $10,$01
- db $80,$02
+ db D_RIGHT,$01
+ db D_DOWN,$02
db $FF
RocketHideout2ArrowMovement25: ; 44f86 (11:4f86)
- db $10,$01
+ db D_RIGHT,$01
db $FF
RocketHideout2ArrowMovement26: ; 44f89 (11:4f89)
- db $80,$02
- db $10,$02
+ db D_DOWN,$02
+ db D_RIGHT,$02
db $FF
RocketHideout2ArrowMovement27: ; 44f8e (11:4f8e)
- db $80,$02
- db $20,$02
+ db D_DOWN,$02
+ db D_LEFT,$02
db $FF
RocketHideout2ArrowMovement28: ; 44f93 (11:4f93)
- db $40,$02
- db $10,$04
- db $40,$02
- db $20,$03
+ db D_UP,$02
+ db D_RIGHT,$04
+ db D_UP,$02
+ db D_LEFT,$03
db $FF
RocketHideout2ArrowMovement29: ; 44f9c (11:4f9c)
- db $80,$02
- db $20,$04
+ db D_DOWN,$02
+ db D_LEFT,$04
db $FF
RocketHideout2ArrowMovement30: ; 44fa1 (11:4fa1)
- db $20,$06
- db $40,$04
- db $20,$05
+ db D_LEFT,$06
+ db D_UP,$04
+ db D_LEFT,$05
db $FF
RocketHideout2ArrowMovement31: ; 44fa8 (11:4fa8)
- db $40,$02
+ db D_UP,$02
db $FF
RocketHideout2ArrowMovement32: ; 44fab (11:4fab)
- db $40,$01
+ db D_UP,$01
db $FF
RocketHideout2ArrowMovement33: ; 44fae (11:4fae)
- db $40,$03
+ db D_UP,$03
db $FF
RocketHideout2ArrowMovement34: ; 44fb1 (11:4fb1)
- db $40,$05
+ db D_UP,$05
db $FF
RocketHideout2ArrowMovement35: ; 44fb4 (11:4fb4)
- db $10,$01
- db $80,$02
- db $20,$04
+ db D_RIGHT,$01
+ db D_DOWN,$02
+ db D_LEFT,$04
db $FF
RocketHideout2ArrowMovement36: ; 44fbb (11:4fbb)
- db $20,$0A
- db $40,$02
- db $20,$05
+ db D_LEFT,$0A
+ db D_UP,$02
+ db D_LEFT,$05
db $FF
RocketHideout2Script3: ; 44fc2 (11:4fc2)
@@ -321,17 +317,17 @@ LoadSpinnerArrowTiles: ; 44fd7 (11:4fd7)
ld a, [wSpriteStateData1 + 2]
srl a
srl a
- ld hl, SpinnerPlayerFacingDirections ; $5083
+ ld hl, SpinnerPlayerFacingDirections
ld c, a
ld b, $0
add hl, bc
ld a, [hl]
ld [wSpriteStateData1 + 2], a
- ld a, [W_CURMAPTILESET] ; W_CURMAPTILESET
+ ld a, [W_CURMAPTILESET]
cp FACILITY
- ld hl, FacilitySpinnerArrows ; $5023
+ ld hl, FacilitySpinnerArrows
jr z, .asm_44ff6
- ld hl, GymSpinnerArrows ; $5053
+ ld hl, GymSpinnerArrows
.asm_44ff6
ld a, [wSimulatedJoypadStatesIndex]
bit 0, a
@@ -419,25 +415,25 @@ SpinnerArrowAnimTiles: ; 45087 (11:5087)
RocketHideout2TextPointers: ; 450c7 (11:50c7)
dw RocketHideout2Text1
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
RocketHideout2TrainerHeaders: ; 450d1 (11:50d1)
RocketHideout2TrainerHeader0: ; 450d1 (11:50d1)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_2_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd817 ; flag's byte
- dw RocketHideout2BattleText2 ; 0x50e8 TextBeforeBattle
- dw RocketHideout2AfterBattleTxt2 ; 0x50f2 TextAfterBattle
- dw RocketHideout2EndBattleText2 ; 0x50ed TextEndBattle
- dw RocketHideout2EndBattleText2 ; 0x50ed TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_2_TRAINER_0
+ dw RocketHideout2BattleText2 ; TextBeforeBattle
+ dw RocketHideout2AfterBattleTxt2 ; TextAfterBattle
+ dw RocketHideout2EndBattleText2 ; TextEndBattle
+ dw RocketHideout2EndBattleText2 ; TextEndBattle
db $ff
RocketHideout2Text1: ; 450de (11:50de)
- db $08 ; asm
+ TX_ASM
ld hl, RocketHideout2TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/rockethideout3.asm b/scripts/rockethideout3.asm
index 6dc467ab..1f6d5b41 100755
--- a/scripts/rockethideout3.asm
+++ b/scripts/rockethideout3.asm
@@ -25,7 +25,7 @@ RocketHideout3Script0: ; 45240 (11:5240)
ld hl, wd736
set 7, [hl]
call StartSimulatingJoypadStates
- ld a, (SFX_02_52 - SFX_Headers_02) / 3
+ ld a, SFX_ARROW_TILES
call PlaySound
ld a, $ff
ld [wJoyIgnore], a
@@ -72,70 +72,66 @@ RocketHideout3ArrowTilePlayerMovement: ; 4526b (11:526b)
db $FF
;format: direction, count
-;right: $10
-;left: $20
-;up: $40
-;down: $80
;each list is read starting from the $FF and working backwards
RocketHideout3ArrowMovement1: ; 452ac (11:52ac)
- db $10,$04
- db $40,$04
- db $10,$04
+ db D_RIGHT,$04
+ db D_UP,$04
+ db D_RIGHT,$04
db $FF
RocketHideout3ArrowMovement2: ; 452b3 (11:52b3)
- db $80,$04
- db $10,$04
+ db D_DOWN,$04
+ db D_RIGHT,$04
db $FF
RocketHideout3ArrowMovement3: ; 452b8 (11:52b8)
- db $20,$02
+ db D_LEFT,$02
db $FF
RocketHideout3ArrowMovement4: ; 452bb (11:52bb)
- db $10,$04
- db $40,$02
- db $10,$02
+ db D_RIGHT,$04
+ db D_UP,$02
+ db D_RIGHT,$02
db $FF
RocketHideout3ArrowMovement5: ; 452c2 (11:52c2)
- db $10,$04
- db $40,$02
- db $10,$02
- db $40,$03
+ db D_RIGHT,$04
+ db D_UP,$02
+ db D_RIGHT,$02
+ db D_UP,$03
db $FF
RocketHideout3ArrowMovement6: ; 452cb (11:52cb)
- db $10,$04
+ db D_RIGHT,$04
db $FF
RocketHideout3ArrowMovement7: ; 452ce (11:52ce)
- db $10,$02
+ db D_RIGHT,$02
db $FF
RocketHideout3ArrowMovement8: ; 452d1 (11:52d1)
- db $10,$04
- db $40,$02
+ db D_RIGHT,$04
+ db D_UP,$02
db $FF
RocketHideout3ArrowMovement9: ; 452d6 (11:52d6)
- db $10,$04
- db $40,$04
+ db D_RIGHT,$04
+ db D_UP,$04
db $FF
RocketHideout3ArrowMovement10: ; 452db (11:52db)
- db $80,$04
+ db D_DOWN,$04
db $FF
RocketHideout3ArrowMovement11: ; 452de (11:52de)
- db $40,$02
+ db D_UP,$02
db $FF
RocketHideout3ArrowMovement12: ; 452e1 (11:52e1)
- db $40,$01
+ db D_UP,$01
db $FF
-RocketHideout3Script3 ; 452e4 (11:452e4)
+RocketHideout3Script3: ; 452e4 (11:452e4)
ld a, [wSimulatedJoypadStatesIndex]
and a
jp nz, LoadSpinnerArrowTiles
@@ -150,32 +146,32 @@ RocketHideout3Script3 ; 452e4 (11:452e4)
RocketHideout3TextPointers: ; 452fa (11:52fa)
dw RocketHideout3Text1
dw RocketHideout3Text2
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
RocketHideout3TrainerHeaders: ; 45302 (11:5302)
RocketHideout3TrainerHeader0: ; 45302 (11:5302)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd819 ; flag's byte
- dw RocketHideout3BattleText2 ; 0x5325 TextBeforeBattle
- dw RocketHideout3AfterBattleTxt2 ; 0x532f TextAfterBattle
- dw RocketHideout3EndBattleText2 ; 0x532a TextEndBattle
- dw RocketHideout3EndBattleText2 ; 0x532a TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_0
+ dw RocketHideout3BattleText2 ; TextBeforeBattle
+ dw RocketHideout3AfterBattleTxt2 ; TextAfterBattle
+ dw RocketHideout3EndBattleText2 ; TextEndBattle
+ dw RocketHideout3EndBattleText2 ; TextEndBattle
RocketHideout3TrainerHeader2: ; 4530e (11:530e)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd819 ; flag's byte
- dw RocketHideout3BattleTxt ; 0x533e TextBeforeBattle
- dw RocketHideout3AfterBattleText3 ; 0x5348 TextAfterBattle
- dw RocketHideout3EndBattleText3 ; 0x5343 TextEndBattle
- dw RocketHideout3EndBattleText3 ; 0x5343 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_2
+ dw RocketHideout3BattleTxt ; TextBeforeBattle
+ dw RocketHideout3AfterBattleText3 ; TextAfterBattle
+ dw RocketHideout3EndBattleText3 ; TextEndBattle
+ dw RocketHideout3EndBattleText3 ; TextEndBattle
db $ff
RocketHideout3Text1: ; 4531b (11:531b)
- db $08 ; asm
+ TX_ASM
ld hl, RocketHideout3TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -193,7 +189,7 @@ RocketHideout3AfterBattleTxt2: ; 4532f (11:532f)
db "@"
RocketHideout3Text2: ; 45334 (11:5334)
- db $08 ; asm
+ TX_ASM
ld hl, RocketHideout3TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/rockethideout4.asm b/scripts/rockethideout4.asm
index 845b7730..a71e444c 100755
--- a/scripts/rockethideout4.asm
+++ b/scripts/rockethideout4.asm
@@ -13,24 +13,21 @@ RocketHideout4Script_45473: ; 45473 (11:5473)
bit 5, [hl]
res 5, [hl]
ret z
- ld a, [wd81b]
- bit 5, a
+ CheckEvent EVENT_ROCKET_HIDEOUT_4_DOOR_UNLOCKED
jr nz, .asm_45496
- and $c
- cp $c
+ CheckBothEventsSet EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0, EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2, 1
jr z, .asm_4548c
ld a, $2d
jr .asm_45498
.asm_4548c
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ ld a, SFX_GO_INSIDE
call PlaySound
- ld hl, wd81b
- set 5, [hl]
+ SetEvent EVENT_ROCKET_HIDEOUT_4_DOOR_UNLOCKED
.asm_45496
ld a, $e
.asm_45498
- ld [wd09f], a
- ld bc, $050c
+ ld [wNewTileBlockID], a
+ lb bc, 5, 12
predef_jump ReplaceTileBlock
RocketHideout4Script_454a3: ; 454a3 (11:54a3)
@@ -53,17 +50,16 @@ RocketHideout4Script3: ; 454b6 (11:54b6)
call UpdateSprites
ld a, $f0
ld [wJoyIgnore], a
- ld hl, wd81b
- set 7, [hl]
+ SetEvent EVENT_BEAT_ROCKET_HIDEOUT_GIOVANNI
ld a, $a
- ld [H_SPRITEHEIGHT], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call GBFadeOutToBlack
ld a, HS_ROCKET_HIDEOUT_4_GIOVANNI
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_ROCKET_HIDEOUT_4_ITEM_4
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
call UpdateSprites
call GBFadeInFromBlack
@@ -81,47 +77,46 @@ RocketHideout4TextPointers: ; 45501 (11:5501)
dw RocketHideout4Text2
dw RocketHideout4Text3
dw RocketHideout4Text4
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
dw RocketHideout4Text10
RocketHideout4TrainerHeaders: ; 45515 (11:5515)
RocketHideout4TrainerHeader0: ; 45515 (11:5515)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0
db ($0 << 4) ; trainer's view range
- dw wd81b ; flag's byte
- dw RocketHideout4BattleText2 ; 0x5593 TextBeforeBattle
- dw RocketHideout4AfterBattleText2 ; 0x559d TextAfterBattle
- dw RocketHideout4EndBattleText2 ; 0x5598 TextEndBattle
- dw RocketHideout4EndBattleText2 ; 0x5598 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0
+ dw RocketHideout4BattleText2 ; TextBeforeBattle
+ dw RocketHideout4AfterBattleText2 ; TextAfterBattle
+ dw RocketHideout4EndBattleText2 ; TextEndBattle
+ dw RocketHideout4EndBattleText2 ; TextEndBattle
RocketHideout4TrainerHeader2: ; 45521 (11:5521)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2
db ($0 << 4) ; trainer's view range
- dw wd81b ; flag's byte
- dw RocketHideout4BattleText3 ; 0x55ac TextBeforeBattle
- dw RocketHideout4AfterBattleText3 ; 0x55b6 TextAfterBattle
- dw RocketHideout4EndBattleText3 ; 0x55b1 TextEndBattle
- dw RocketHideout4EndBattleText3 ; 0x55b1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2
+ dw RocketHideout4BattleText3 ; TextBeforeBattle
+ dw RocketHideout4AfterBattleText3 ; TextAfterBattle
+ dw RocketHideout4EndBattleText3 ; TextEndBattle
+ dw RocketHideout4EndBattleText3 ; TextEndBattle
RocketHideout4TrainerHeader3: ; 4552d (11:552d)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_3
db ($1 << 4) ; trainer's view range
- dw wd81b ; flag's byte
- dw RocketHideout4BattleText4 ; 0x55c5 TextBeforeBattle
- dw RocketHideout4AfterBattleText4 ; 0x55cf TextAfterBattle
- dw RocketHideout4EndBattleText4 ; 0x55ca TextEndBattle
- dw RocketHideout4EndBattleText4 ; 0x55ca TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_3
+ dw RocketHideout4BattleText4 ; TextBeforeBattle
+ dw RocketHideout4AfterBattleText4 ; TextAfterBattle
+ dw RocketHideout4EndBattleText4 ; TextEndBattle
+ dw RocketHideout4EndBattleText4 ; TextEndBattle
db $ff
RocketHideout4Text1: ; 4553a (11:553a)
- db $08 ; asm
- ld a, [wd81b]
- bit 7, a
+ TX_ASM
+ CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_GIOVANNI
jp nz, .asm_545571
ld hl, RocketHideout4Text_4557a
call PrintText
@@ -140,11 +135,11 @@ RocketHideout4Text1: ; 4553a (11:553a)
ld a, $3
ld [W_ROCKETHIDEOUT4CURSCRIPT], a
ld [W_CURMAPSCRIPT], a
- jr .asm_209f0 ; 0x4556f
+ jr .asm_209f0
.asm_545571
ld hl, RocketHideout4Text10
call PrintText
-.asm_209f0 ; 0x45577
+.asm_209f0
jp TextScriptEnd
RocketHideout4Text_4557a: ; 4557a (11:557a)
@@ -160,7 +155,7 @@ RocketHideout4Text10: ; 45584 (11:5584)
db "@"
RocketHideout4Text2: ; 45589 (11:5589)
- db $08 ; asm
+ TX_ASM
ld hl, RocketHideout4TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -178,7 +173,7 @@ RocketHideout4AfterBattleText2: ; 4559d (11:559d)
db "@"
RocketHideout4Text3: ; 455a2 (11:55a2)
- db $08 ; asm
+ TX_ASM
ld hl, RocketHideout4TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -196,7 +191,7 @@ RocketHideout4AfterBattleText3: ; 455b6 (11:55b6)
db "@"
RocketHideout4Text4: ; 455bb (11:55bb)
- db $08 ; asm
+ TX_ASM
ld hl, RocketHideout4TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -210,15 +205,13 @@ RocketHideout4EndBattleText4: ; 455ca (11:55ca)
db "@"
RocketHideout4AfterBattleText4: ; 455cf (11:55cf)
- db $8
- ld hl, RocketHideout4Text_455ec ; $55ec
+ TX_ASM
+ ld hl, RocketHideout4Text_455ec
call PrintText
- ld hl, wd81b
- bit 6, [hl]
- set 6, [hl]
- jr nz, .asm_455e9 ; 0x455dd $a
+ CheckAndSetEvent EVENT_ROCKET_DROPPED_LIFT_KEY
+ jr nz, .asm_455e9
ld a, HS_ROCKET_HIDEOUT_4_ITEM_5
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
.asm_455e9
jp TextScriptEnd
diff --git a/scripts/rockethideoutelevator.asm b/scripts/rockethideoutelevator.asm
index e7bc24f3..8a0ca049 100755
--- a/scripts/rockethideoutelevator.asm
+++ b/scripts/rockethideoutelevator.asm
@@ -16,9 +16,9 @@ RocketHideoutElevatorScript: ; 45710 (11:5710)
RocketHideoutElevatorScript_4572c: ; 4572c (11:572c)
ld hl, wWarpEntries
- ld a, [wd73b]
+ ld a, [wWarpedFromWhichWarp]
ld b, a
- ld a, [wd73c]
+ ld a, [wWarpedFromWhichMap]
ld c, a
call RocketHideoutElevatorScript_4573a
@@ -32,17 +32,19 @@ RocketHideoutElevatorScript_4573a: ; 4573a (11:573a)
ret
RocketHideoutElevatorScript_45741: ; 45741 (11:5741)
- ld hl, RocketHideoutElavatorFloors ; $5754
+ ld hl, RocketHideoutElavatorFloors
call LoadItemList
- ld hl, RocketHideoutElevatorWarpMaps ; $5759
- ld de, wcc5b
- ld bc, $0006
+ ld hl, RocketHideoutElevatorWarpMaps
+ ld de, wElevatorWarpMaps
+ ld bc, RocketHideoutElevatorWarpMapsEnd - RocketHideoutElevatorWarpMaps
call CopyData
ret
RocketHideoutElavatorFloors: ; 45754 (11:5754)
db $03 ; num elements in list
- db $55, $54, $61 ; "B1F", "B2F", "B4F"
+ db FLOOR_B1F
+ db FLOOR_B2F
+ db FLOOR_B4F
db $FF ; terminator
RocketHideoutElevatorWarpMaps: ; 45759 (11:5759)
@@ -52,6 +54,7 @@ RocketHideoutElevatorWarpMaps: ; 45759 (11:5759)
db $04, ROCKET_HIDEOUT_1
db $04, ROCKET_HIDEOUT_2
db $02, ROCKET_HIDEOUT_4
+RocketHideoutElevatorWarpMapsEnd:
RocketHideoutElevatorScript_4575f: ; 4575f (11:575f)
call Delay3
@@ -62,20 +65,20 @@ RocketHideoutElevatorTextPointers: ; 4576b (11:576b)
dw RocketHideoutElevatorText1
RocketHideoutElevatorText1: ; 4576d (11:576d)
- db $08 ; asm
+ TX_ASM
ld b, LIFT_KEY
call IsItemInBag
- jr z, .asm_8d8f0 ; 0x45773
+ jr z, .asm_45782
call RocketHideoutElevatorScript_45741
- ld hl, RocketHideoutElevatorWarpMaps ; $5759
- predef Func_1c9c6
- jr .asm_46c43 ; 0x45780
-.asm_8d8f0 ; 0x45782
+ ld hl, RocketHideoutElevatorWarpMaps
+ predef DisplayElevatorFloorMenu
+ jr .asm_45788
+.asm_45782
ld hl, RocketHideoutElevatorText_4578b
call PrintText
-.asm_46c43 ; 0x45788
+.asm_45788
jp TextScriptEnd
RocketHideoutElevatorText_4578b: ; 4578b (11:578b)
- TX_FAR _RocketElevatorText_4578b ; 0x82438
+ TX_FAR _RocketElevatorText_4578b
db $d, "@"
diff --git a/scripts/rocktunnel1.asm b/scripts/rocktunnel1.asm
index 1d514a05..d03a5ba1 100755
--- a/scripts/rocktunnel1.asm
+++ b/scripts/rocktunnel1.asm
@@ -24,104 +24,104 @@ RockTunnel1TextPointers: ; 444f5 (11:44f5)
RockTunnel1TrainerHeaders: ; 44505 (11:4505)
RockTunnel1TrainerHeader1: ; 44505 (11:4505)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_1
db ($4 << 4) ; trainer's view range
- dw wd7d2 ; flag's byte
- dw RockTunnel1BattleText1 ; 0x4588 TextBeforeBattle
- dw RockTunnel1AfterBattleText1 ; 0x4592 TextAfterBattle
- dw RockTunnel1EndBattleText1 ; 0x458d TextEndBattle
- dw RockTunnel1EndBattleText1 ; 0x458d TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_1
+ dw RockTunnel1BattleText1 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText1 ; TextAfterBattle
+ dw RockTunnel1EndBattleText1 ; TextEndBattle
+ dw RockTunnel1EndBattleText1 ; TextEndBattle
RockTunnel1TrainerHeader2: ; 44511 (11:4511)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd7d2 ; flag's byte
- dw RockTunnel1BattleText2 ; 0x4597 TextBeforeBattle
- dw RockTunnel1AfterBattleText2 ; 0x45a1 TextAfterBattle
- dw RockTunnel1EndBattleText2 ; 0x459c TextEndBattle
- dw RockTunnel1EndBattleText2 ; 0x459c TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_2
+ dw RockTunnel1BattleText2 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText2 ; TextAfterBattle
+ dw RockTunnel1EndBattleText2 ; TextEndBattle
+ dw RockTunnel1EndBattleText2 ; TextEndBattle
RockTunnel1TrainerHeader3: ; 4451d (11:451d)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd7d2 ; flag's byte
- dw RockTunnel1BattleText3 ; 0x45a6 TextBeforeBattle
- dw RockTunnel1AfterBattleText3 ; 0x45b0 TextAfterBattle
- dw RockTunnel1EndBattleText3 ; 0x45ab TextEndBattle
- dw RockTunnel1EndBattleText3 ; 0x45ab TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_3
+ dw RockTunnel1BattleText3 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText3 ; TextAfterBattle
+ dw RockTunnel1EndBattleText3 ; TextEndBattle
+ dw RockTunnel1EndBattleText3 ; TextEndBattle
RockTunnel1TrainerHeader4: ; 44529 (11:4529)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_4
db ($3 << 4) ; trainer's view range
- dw wd7d2 ; flag's byte
- dw RockTunnel1BattleText4 ; 0x45b5 TextBeforeBattle
- dw RockTunnel1AfterBattleText4 ; 0x45bf TextAfterBattle
- dw RockTunnel1EndBattleText4 ; 0x45ba TextEndBattle
- dw RockTunnel1EndBattleText4 ; 0x45ba TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_4
+ dw RockTunnel1BattleText4 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText4 ; TextAfterBattle
+ dw RockTunnel1EndBattleText4 ; TextEndBattle
+ dw RockTunnel1EndBattleText4 ; TextEndBattle
RockTunnel1TrainerHeader5: ; 44535 (11:4535)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_5
db ($4 << 4) ; trainer's view range
- dw wd7d2 ; flag's byte
- dw RockTunnel1BattleText5 ; 0x45c4 TextBeforeBattle
- dw RockTunnel1AfterBattleText5 ; 0x45ce TextAfterBattle
- dw RockTunnel1EndBattleText5 ; 0x45c9 TextEndBattle
- dw RockTunnel1EndBattleText5 ; 0x45c9 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_5
+ dw RockTunnel1BattleText5 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText5 ; TextAfterBattle
+ dw RockTunnel1EndBattleText5 ; TextEndBattle
+ dw RockTunnel1EndBattleText5 ; TextEndBattle
RockTunnel1TrainerHeader6: ; 44541 (11:4541)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_6
db ($4 << 4) ; trainer's view range
- dw wd7d2 ; flag's byte
- dw RockTunnel1BattleText6 ; 0x45d3 TextBeforeBattle
- dw RockTunnel1AfterBattleText6 ; 0x45dd TextAfterBattle
- dw RockTunnel1EndBattleText6 ; 0x45d8 TextEndBattle
- dw RockTunnel1EndBattleText6 ; 0x45d8 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_6
+ dw RockTunnel1BattleText6 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText6 ; TextAfterBattle
+ dw RockTunnel1EndBattleText6 ; TextEndBattle
+ dw RockTunnel1EndBattleText6 ; TextEndBattle
RockTunnel1TrainerHeader7: ; 4454d (11:454d)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_7
db ($4 << 4) ; trainer's view range
- dw wd7d2 ; flag's byte
- dw RockTunnel1BattleText7 ; 0x45e2 TextBeforeBattle
- dw RockTunnel1AfterBattleText7 ; 0x45ec TextAfterBattle
- dw RockTunnel1EndBattleText7 ; 0x45e7 TextEndBattle
- dw RockTunnel1EndBattleText7 ; 0x45e7 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_7
+ dw RockTunnel1BattleText7 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText7 ; TextAfterBattle
+ dw RockTunnel1EndBattleText7 ; TextEndBattle
+ dw RockTunnel1EndBattleText7 ; TextEndBattle
db $ff
RockTunnel1Text1: ; 4455a (11:455a)
- db $8
- ld hl, RockTunnel1TrainerHeader1 ; $4505
- jr asm_0c916 ; 0x4455e $22
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader1
+ jr RockTunnel1TalkToTrainer
RockTunnel1Text2: ; 44560 (11:4560)
- db $8
- ld hl, RockTunnel1TrainerHeader2 ; $4511
- jr asm_0c916 ; 0x44564 $1c
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader2
+ jr RockTunnel1TalkToTrainer
RockTunnel1Text3: ; 44566 (11:4566)
- db $8
- ld hl, RockTunnel1TrainerHeader3 ; $451d
- jr asm_0c916 ; 0x4456a $16
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader3
+ jr RockTunnel1TalkToTrainer
RockTunnel1Text4: ; 4456c (11:456c)
- db $8
- ld hl, RockTunnel1TrainerHeader4 ; $4529
- jr asm_0c916 ; 0x44570 $10
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader4
+ jr RockTunnel1TalkToTrainer
RockTunnel1Text5: ; 44572 (11:4572)
- db $8
- ld hl, RockTunnel1TrainerHeader5 ; $4535
- jr asm_0c916 ; 0x44576 $a
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader5
+ jr RockTunnel1TalkToTrainer
RockTunnel1Text6: ; 44578 (11:4578)
- db $8
- ld hl, RockTunnel1TrainerHeader6 ; $4541
- jr asm_0c916 ; 0x4457c $4
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader6
+ jr RockTunnel1TalkToTrainer
RockTunnel1Text7: ; 4457e (11:457e)
- db $8
- ld hl, RockTunnel1TrainerHeader7 ; $454d
-asm_0c916: ; 44582 (11:4582)
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader7
+RockTunnel1TalkToTrainer: ; 44582 (11:4582)
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/rocktunnel2.asm b/scripts/rocktunnel2.asm
index 98b804a7..2082394a 100755
--- a/scripts/rocktunnel2.asm
+++ b/scripts/rocktunnel2.asm
@@ -24,123 +24,123 @@ RockTunnel2TextPointers: ; 46004 (11:6004)
RockTunnel2TrainerHeaders: ; 46014 (11:6014)
RockTunnel2TrainerHeader0: ; 46014 (11:6014)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd87d ; flag's byte
- dw RockTunnel2BattleText2 ; 0x60c5 TextBeforeBattle
- dw RockTunnel2AfterBattleText2 ; 0x60cf TextAfterBattle
- dw RockTunnel2EndBattleText2 ; 0x60ca TextEndBattle
- dw RockTunnel2EndBattleText2 ; 0x60ca TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_0
+ dw RockTunnel2BattleText2 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText2 ; TextAfterBattle
+ dw RockTunnel2EndBattleText2 ; TextEndBattle
+ dw RockTunnel2EndBattleText2 ; TextEndBattle
RockTunnel2TrainerHeader2: ; 46020 (11:6020)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd87d ; flag's byte
- dw RockTunnel2BattleText3 ; 0x60d4 TextBeforeBattle
- dw RockTunnel2AfterBattleText3 ; 0x60de TextAfterBattle
- dw RockTunnel2EndBattleText3 ; 0x60d9 TextEndBattle
- dw RockTunnel2EndBattleText3 ; 0x60d9 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_2
+ dw RockTunnel2BattleText3 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText3 ; TextAfterBattle
+ dw RockTunnel2EndBattleText3 ; TextEndBattle
+ dw RockTunnel2EndBattleText3 ; TextEndBattle
RockTunnel2TrainerHeader3: ; 4602c (11:602c)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd87d ; flag's byte
- dw RockTunnel2BattleText4 ; 0x60e3 TextBeforeBattle
- dw RockTunnel2AfterBattleText4 ; 0x60ed TextAfterBattle
- dw RockTunnel2EndBattleText4 ; 0x60e8 TextEndBattle
- dw RockTunnel2EndBattleText4 ; 0x60e8 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_3
+ dw RockTunnel2BattleText4 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText4 ; TextAfterBattle
+ dw RockTunnel2EndBattleText4 ; TextEndBattle
+ dw RockTunnel2EndBattleText4 ; TextEndBattle
RockTunnel2TrainerHeader4: ; 46038 (11:6038)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_4
db ($4 << 4) ; trainer's view range
- dw wd87d ; flag's byte
- dw RockTunnel2BattleText5 ; 0x60f2 TextBeforeBattle
- dw RockTunnel2AfterBattleText5 ; 0x60fc TextAfterBattle
- dw RockTunnel2EndBattleText5 ; 0x60f7 TextEndBattle
- dw RockTunnel2EndBattleText5 ; 0x60f7 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_4
+ dw RockTunnel2BattleText5 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText5 ; TextAfterBattle
+ dw RockTunnel2EndBattleText5 ; TextEndBattle
+ dw RockTunnel2EndBattleText5 ; TextEndBattle
RockTunnel2TrainerHeader5: ; 46044 (11:6044)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_5
db ($3 << 4) ; trainer's view range
- dw wd87d ; flag's byte
- dw RockTunnel2BattleText6 ; 0x6101 TextBeforeBattle
- dw RockTunnel2AfterBattleText6 ; 0x610b TextAfterBattle
- dw RockTunnel2EndBattleText6 ; 0x6106 TextEndBattle
- dw RockTunnel2EndBattleText6 ; 0x6106 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_5
+ dw RockTunnel2BattleText6 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText6 ; TextAfterBattle
+ dw RockTunnel2EndBattleText6 ; TextEndBattle
+ dw RockTunnel2EndBattleText6 ; TextEndBattle
RockTunnel2TrainerHeader6: ; 46050 (11:6050)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_6
db ($4 << 4) ; trainer's view range
- dw wd87d ; flag's byte
- dw RockTunnel2BattleText7 ; 0x6110 TextBeforeBattle
- dw RockTunnel2AfterBattleText7 ; 0x611a TextAfterBattle
- dw RockTunnel2EndBattleText7 ; 0x6115 TextEndBattle
- dw RockTunnel2EndBattleText7 ; 0x6115 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_6
+ dw RockTunnel2BattleText7 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText7 ; TextAfterBattle
+ dw RockTunnel2EndBattleText7 ; TextEndBattle
+ dw RockTunnel2EndBattleText7 ; TextEndBattle
RockTunnel2TrainerHeader7: ; 4605c (11:605c)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_7
db ($3 << 4) ; trainer's view range
- dw wd87d ; flag's byte
- dw RockTunnel2BattleText8 ; 0x611f TextBeforeBattle
- dw RockTunnel2AfterBattleText8 ; 0x6129 TextAfterBattle
- dw RockTunnel2EndBattleText8 ; 0x6124 TextEndBattle
- dw RockTunnel2EndBattleText8 ; 0x6124 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_7
+ dw RockTunnel2BattleText8 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText8 ; TextAfterBattle
+ dw RockTunnel2EndBattleText8 ; TextEndBattle
+ dw RockTunnel2EndBattleText8 ; TextEndBattle
RockTunnel2TrainerHeader8: ; 46068 (11:6068)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_8, 1
db ($3 << 4) ; trainer's view range
- dw wd87d ; flag's byte
- dw RockTunnel2BattleText9 ; 0x612e TextBeforeBattle
- dw RockTunnel2AfterBattleText9 ; 0x6138 TextAfterBattle
- dw RockTunnel2EndBattleText9 ; 0x6133 TextEndBattle
- dw RockTunnel2EndBattleText9 ; 0x6133 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_8, 1
+ dw RockTunnel2BattleText9 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText9 ; TextAfterBattle
+ dw RockTunnel2EndBattleText9 ; TextEndBattle
+ dw RockTunnel2EndBattleText9 ; TextEndBattle
db $ff
RockTunnel2Text1: ; 46075 (11:6075)
- db $08 ; asm
+ TX_ASM
ld hl, RockTunnel2TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
RockTunnel2Text2: ; 4607f (11:607f)
- db $08 ; asm
+ TX_ASM
ld hl, RockTunnel2TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
RockTunnel2Text3: ; 46089 (11:6089)
- db $08 ; asm
+ TX_ASM
ld hl, RockTunnel2TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
RockTunnel2Text4: ; 46093 (11:6093)
- db $08 ; asm
+ TX_ASM
ld hl, RockTunnel2TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
RockTunnel2Text5: ; 4609d (11:609d)
- db $08 ; asm
+ TX_ASM
ld hl, RockTunnel2TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
RockTunnel2Text6: ; 460a7 (11:60a7)
- db $08 ; asm
+ TX_ASM
ld hl, RockTunnel2TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
RockTunnel2Text7: ; 460b1 (11:60b1)
- db $08 ; asm
+ TX_ASM
ld hl, RockTunnel2TrainerHeader7
call TalkToTrainer
jp TextScriptEnd
RockTunnel2Text8: ; 460bb (11:60bb)
- db $08 ; asm
+ TX_ASM
ld hl, RockTunnel2TrainerHeader8
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route1.asm b/scripts/route1.asm
index 189b987b..926ffd20 100755
--- a/scripts/route1.asm
+++ b/scripts/route1.asm
@@ -7,24 +7,22 @@ Route1TextPointers: ; 1cab2 (7:4ab2)
dw Route1Text3
Route1Text1: ; 1cab8 (7:4ab8)
- db $08 ; asm
- ld hl, wd7bf
- bit 0, [hl]
- set 0, [hl]
- jr nz, .asm_02840 ; 0x1cac0
+ TX_ASM
+ CheckAndSetEvent EVENT_GOT_POTION_SAMPLE
+ jr nz, .asm_1cada
ld hl, Route1ViridianMartSampleText
call PrintText
- ld bc, (POTION << 8) | 1
+ lb bc, POTION, 1
call GiveItem
jr nc, .BagFull
- ld hl, Route1Text_1cae8 ; $4ae8
- jr .asm_46d43 ; 0x1cad3
+ ld hl, Route1Text_1cae8
+ jr .asm_1cadd
.BagFull
- ld hl, Route1Text_1caf3 ; $4af3
- jr .asm_46d43 ; 0x1cad8
-.asm_02840 ; 0x1cada
- ld hl, Route1Text_1caee ; $4aee
-.asm_46d43 ; 0x1cadd
+ ld hl, Route1Text_1caf3
+ jr .asm_1cadd
+.asm_1cada
+ ld hl, Route1Text_1caee
+.asm_1cadd
call PrintText
jp TextScriptEnd
diff --git a/scripts/route10.asm b/scripts/route10.asm
index c587b1df..2d5d2ae4 100755
--- a/scripts/route10.asm
+++ b/scripts/route10.asm
@@ -26,63 +26,63 @@ Route10TextPointers: ; 5934f (16:534f)
Route10TrainerHeaders: ; 59363 (16:5363)
Route10TrainerHeader0: ; 59363 (16:5363)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd7d1 ; flag's byte
- dw Route10BattleText1 ; 0x53b6 TextBeforeBattle
- dw Route10AfterBattleText1 ; 0x53c0 TextAfterBattle
- dw Route10EndBattleText1 ; 0x53bb TextEndBattle
- dw Route10EndBattleText1 ; 0x53bb TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_0
+ dw Route10BattleText1 ; TextBeforeBattle
+ dw Route10AfterBattleText1 ; TextAfterBattle
+ dw Route10EndBattleText1 ; TextEndBattle
+ dw Route10EndBattleText1 ; TextEndBattle
Route10TrainerHeader1: ; 5936f (16:536f)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd7d1 ; flag's byte
- dw Route10BattleText2 ; 0x53cf TextBeforeBattle
- dw Route10AfterBattleText2 ; 0x53d9 TextAfterBattle
- dw Route10EndBattleText2 ; 0x53d4 TextEndBattle
- dw Route10EndBattleText2 ; 0x53d4 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_1
+ dw Route10BattleText2 ; TextBeforeBattle
+ dw Route10AfterBattleText2 ; TextAfterBattle
+ dw Route10EndBattleText2 ; TextEndBattle
+ dw Route10EndBattleText2 ; TextEndBattle
Route10TrainerHeader2: ; 5937b (16:537b)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd7d1 ; flag's byte
- dw Route10BattleText3 ; 0x53e8 TextBeforeBattle
- dw Route10AfterBattleText3 ; 0x53f2 TextAfterBattle
- dw Route10EndBattleText3 ; 0x53ed TextEndBattle
- dw Route10EndBattleText3 ; 0x53ed TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_2
+ dw Route10BattleText3 ; TextBeforeBattle
+ dw Route10AfterBattleText3 ; TextAfterBattle
+ dw Route10EndBattleText3 ; TextEndBattle
+ dw Route10EndBattleText3 ; TextEndBattle
Route10TrainerHeader3: ; 59387 (16:5387)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd7d1 ; flag's byte
- dw Route10BattleText4 ; 0x5401 TextBeforeBattle
- dw Route10AfterBattleText4 ; 0x540b TextAfterBattle
- dw Route10EndBattleText4 ; 0x5406 TextEndBattle
- dw Route10EndBattleText4 ; 0x5406 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_3
+ dw Route10BattleText4 ; TextBeforeBattle
+ dw Route10AfterBattleText4 ; TextAfterBattle
+ dw Route10EndBattleText4 ; TextEndBattle
+ dw Route10EndBattleText4 ; TextEndBattle
Route10TrainerHeader4: ; 59393 (16:5393)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_4
db ($2 << 4) ; trainer's view range
- dw wd7d1 ; flag's byte
- dw Route10BattleText5 ; 0x541a TextBeforeBattle
- dw Route10AfterBattleText5 ; 0x5424 TextAfterBattle
- dw Route10EndBattleText5 ; 0x541f TextEndBattle
- dw Route10EndBattleText5 ; 0x541f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_4
+ dw Route10BattleText5 ; TextBeforeBattle
+ dw Route10AfterBattleText5 ; TextAfterBattle
+ dw Route10EndBattleText5 ; TextEndBattle
+ dw Route10EndBattleText5 ; TextEndBattle
Route10TrainerHeader5: ; 5939f (16:539f)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_5
db ($2 << 4) ; trainer's view range
- dw wd7d1 ; flag's byte
- dw Route10BattleText6 ; 0x5433 TextBeforeBattle
- dw Route10AfterBattleText6 ; 0x543d TextAfterBattle
- dw Route10EndBattleText6 ; 0x5438 TextEndBattle
- dw Route10EndBattleText6 ; 0x5438 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_5
+ dw Route10BattleText6 ; TextBeforeBattle
+ dw Route10AfterBattleText6 ; TextAfterBattle
+ dw Route10EndBattleText6 ; TextEndBattle
+ dw Route10EndBattleText6 ; TextEndBattle
db $ff
Route10Text1: ; 593ac (16:53ac)
- db $08 ; asm
+ TX_ASM
ld hl, Route10TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -100,7 +100,7 @@ Route10AfterBattleText1: ; 593c0 (16:53c0)
db "@"
Route10Text2: ; 593c5 (16:53c5)
- db $08 ; asm
+ TX_ASM
ld hl, Route10TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -118,7 +118,7 @@ Route10AfterBattleText2: ; 593d9 (16:53d9)
db "@"
Route10Text3: ; 593de (16:53de)
- db $08 ; asm
+ TX_ASM
ld hl, Route10TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -136,7 +136,7 @@ Route10AfterBattleText3: ; 593f2 (16:53f2)
db "@"
Route10Text4: ; 593f7 (16:53f7)
- db $08 ; asm
+ TX_ASM
ld hl, Route10TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -154,7 +154,7 @@ Route10AfterBattleText4: ; 5940b (16:540b)
db "@"
Route10Text5: ; 59410 (16:5410)
- db $08 ; asm
+ TX_ASM
ld hl, Route10TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -172,7 +172,7 @@ Route10AfterBattleText5: ; 59424 (16:5424)
db "@"
Route10Text6: ; 59429 (16:5429)
- db $08 ; asm
+ TX_ASM
ld hl, Route10TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route11.asm b/scripts/route11.asm
index 629a6efd..3a9f1e0d 100755
--- a/scripts/route11.asm
+++ b/scripts/route11.asm
@@ -27,99 +27,99 @@ Route11TextPointers: ; 59465 (16:5465)
Route11TrainerHeaders: ; 5947b (16:547b)
Route11TrainerHeader0: ; 5947b (16:547b)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd7d5 ; flag's byte
- dw Route11BattleText1 ; 0x54fe TextBeforeBattle
- dw Route11AfterBattleText1 ; 0x5508 TextAfterBattle
- dw Route11EndBattleText1 ; 0x5503 TextEndBattle
- dw Route11EndBattleText1 ; 0x5503 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_0
+ dw Route11BattleText1 ; TextBeforeBattle
+ dw Route11AfterBattleText1 ; TextAfterBattle
+ dw Route11EndBattleText1 ; TextEndBattle
+ dw Route11EndBattleText1 ; TextEndBattle
Route11TrainerHeader1: ; 59487 (16:5487)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_1
db ($2 << 4) ; trainer's view range
- dw wd7d5 ; flag's byte
- dw Route11BattleText2 ; 0x5517 TextBeforeBattle
- dw Route11AfterBattleText2 ; 0x5521 TextAfterBattle
- dw Route11EndBattleText2 ; 0x551c TextEndBattle
- dw Route11EndBattleText2 ; 0x551c TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_1
+ dw Route11BattleText2 ; TextBeforeBattle
+ dw Route11AfterBattleText2 ; TextAfterBattle
+ dw Route11EndBattleText2 ; TextEndBattle
+ dw Route11EndBattleText2 ; TextEndBattle
Route11TrainerHeader2: ; 59493 (16:5493)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd7d5 ; flag's byte
- dw Route11BattleText3 ; 0x5530 TextBeforeBattle
- dw Route11AfterBattleText3 ; 0x553a TextAfterBattle
- dw Route11EndBattleText3 ; 0x5535 TextEndBattle
- dw Route11EndBattleText3 ; 0x5535 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_2
+ dw Route11BattleText3 ; TextBeforeBattle
+ dw Route11AfterBattleText3 ; TextAfterBattle
+ dw Route11EndBattleText3 ; TextEndBattle
+ dw Route11EndBattleText3 ; TextEndBattle
Route11TrainerHeader3: ; 5949f (16:549f)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd7d5 ; flag's byte
- dw Route11BattleText4 ; 0x5549 TextBeforeBattle
- dw Route11AfterBattleText4 ; 0x5553 TextAfterBattle
- dw Route11EndBattleText4 ; 0x554e TextEndBattle
- dw Route11EndBattleText4 ; 0x554e TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_3
+ dw Route11BattleText4 ; TextBeforeBattle
+ dw Route11AfterBattleText4 ; TextAfterBattle
+ dw Route11EndBattleText4 ; TextEndBattle
+ dw Route11EndBattleText4 ; TextEndBattle
Route11TrainerHeader4: ; 594ab (16:54ab)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_4
db ($4 << 4) ; trainer's view range
- dw wd7d5 ; flag's byte
- dw Route11BattleText5 ; 0x5562 TextBeforeBattle
- dw Route11AfterBattleText5 ; 0x556c TextAfterBattle
- dw Route11EndBattleText5 ; 0x5567 TextEndBattle
- dw Route11EndBattleText5 ; 0x5567 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_4
+ dw Route11BattleText5 ; TextBeforeBattle
+ dw Route11AfterBattleText5 ; TextAfterBattle
+ dw Route11EndBattleText5 ; TextEndBattle
+ dw Route11EndBattleText5 ; TextEndBattle
Route11TrainerHeader5: ; 594b7 (16:54b7)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_5
db ($3 << 4) ; trainer's view range
- dw wd7d5 ; flag's byte
- dw Route11BattleText6 ; 0x557b TextBeforeBattle
- dw Route11AfterBattleText6 ; 0x5585 TextAfterBattle
- dw Route11EndBattleText6 ; 0x5580 TextEndBattle
- dw Route11EndBattleText6 ; 0x5580 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_5
+ dw Route11BattleText6 ; TextBeforeBattle
+ dw Route11AfterBattleText6 ; TextAfterBattle
+ dw Route11EndBattleText6 ; TextEndBattle
+ dw Route11EndBattleText6 ; TextEndBattle
Route11TrainerHeader6: ; 594c3 (16:54c3)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_6
db ($3 << 4) ; trainer's view range
- dw wd7d5 ; flag's byte
- dw Route11BattleText7 ; 0x5594 TextBeforeBattle
- dw Route11AfterBattleText7 ; 0x559e TextAfterBattle
- dw Route11EndBattleText7 ; 0x5599 TextEndBattle
- dw Route11EndBattleText7 ; 0x5599 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_6
+ dw Route11BattleText7 ; TextBeforeBattle
+ dw Route11AfterBattleText7 ; TextAfterBattle
+ dw Route11EndBattleText7 ; TextEndBattle
+ dw Route11EndBattleText7 ; TextEndBattle
Route11TrainerHeader7: ; 594cf (16:54cf)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_7, 1
db ($4 << 4) ; trainer's view range
- dw wd7d5 ; flag's byte
- dw Route11BattleText8 ; 0x55ad TextBeforeBattle
- dw Route11AfterBattleText8 ; 0x55b7 TextAfterBattle
- dw Route11EndBattleText8 ; 0x55b2 TextEndBattle
- dw Route11EndBattleText8 ; 0x55b2 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_7, 1
+ dw Route11BattleText8 ; TextBeforeBattle
+ dw Route11AfterBattleText8 ; TextAfterBattle
+ dw Route11EndBattleText8 ; TextEndBattle
+ dw Route11EndBattleText8 ; TextEndBattle
Route11TrainerHeader8: ; 594db (16:54db)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_8, 1
db ($3 << 4) ; trainer's view range
- dw wd7d5 ; flag's byte
- dw Route11BattleText9 ; 0x55c6 TextBeforeBattle
- dw Route11AfterBattleText9 ; 0x55d0 TextAfterBattle
- dw Route11EndBattleText9 ; 0x55cb TextEndBattle
- dw Route11EndBattleText9 ; 0x55cb TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_8, 1
+ dw Route11BattleText9 ; TextBeforeBattle
+ dw Route11AfterBattleText9 ; TextAfterBattle
+ dw Route11EndBattleText9 ; TextEndBattle
+ dw Route11EndBattleText9 ; TextEndBattle
Route11TrainerHeader9: ; 594e7 (16:54e7)
- db $a ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_9, 1
db ($4 << 4) ; trainer's view range
- dw wd7d5 ; flag's byte
- dw Route11BattleText10 ; 0x55df TextBeforeBattle
- dw Route11AfterBattleText10 ; 0x55e9 TextAfterBattle
- dw Route11EndBattleText10 ; 0x55e4 TextEndBattle
- dw Route11EndBattleText10 ; 0x55e4 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_9, 1
+ dw Route11BattleText10 ; TextBeforeBattle
+ dw Route11AfterBattleText10 ; TextAfterBattle
+ dw Route11EndBattleText10 ; TextEndBattle
+ dw Route11EndBattleText10 ; TextEndBattle
db $ff
Route11Text1: ; 594f4 (16:54f4)
- db $8
+ TX_ASM
ld hl, Route11TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -137,7 +137,7 @@ Route11AfterBattleText1: ; 59508 (16:5508)
db "@"
Route11Text2: ; 5950d (16:550d)
- db $08 ; asm
+ TX_ASM
ld hl, Route11TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -155,7 +155,7 @@ Route11AfterBattleText2: ; 59521 (16:5521)
db "@"
Route11Text3: ; 59526 (16:5526)
- db $08 ; asm
+ TX_ASM
ld hl, Route11TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -173,7 +173,7 @@ Route11AfterBattleText3: ; 5953a (16:553a)
db "@"
Route11Text4: ; 5953f (16:553f)
- db $08 ; asm
+ TX_ASM
ld hl, Route11TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -191,7 +191,7 @@ Route11AfterBattleText4: ; 59553 (16:5553)
db "@"
Route11Text5: ; 59558 (16:5558)
- db $08 ; asm
+ TX_ASM
ld hl, Route11TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -209,7 +209,7 @@ Route11AfterBattleText5: ; 5956c (16:556c)
db "@"
Route11Text6: ; 59571 (16:5571)
- db $08 ; asm
+ TX_ASM
ld hl, Route11TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
@@ -227,7 +227,7 @@ Route11AfterBattleText6: ; 59585 (16:5585)
db "@"
Route11Text7: ; 5958a (16:558a)
- db $08 ; asm
+ TX_ASM
ld hl, Route11TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
@@ -245,7 +245,7 @@ Route11AfterBattleText7: ; 5959e (16:559e)
db "@"
Route11Text8: ; 595a3 (16:55a3)
- db $08 ; asm
+ TX_ASM
ld hl, Route11TrainerHeader7
call TalkToTrainer
jp TextScriptEnd
@@ -263,7 +263,7 @@ Route11AfterBattleText8: ; 595b7 (16:55b7)
db "@"
Route11Text9: ; 595bc (16:55bc)
- db $08 ; asm
+ TX_ASM
ld hl, Route11TrainerHeader8
call TalkToTrainer
jp TextScriptEnd
@@ -281,7 +281,7 @@ Route11AfterBattleText9: ; 595d0 (16:55d0)
db "@"
Route11Text10: ; 595d5 (16:55d5)
- db $08 ; asm
+ TX_ASM
ld hl, Route11TrainerHeader9
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route11gateupstairs.asm b/scripts/route11gateupstairs.asm
index d8740986..ec543a6a 100755
--- a/scripts/route11gateupstairs.asm
+++ b/scripts/route11gateupstairs.asm
@@ -8,52 +8,49 @@ Route11GateUpstairsTextPointers: ; 49457 (12:5457)
dw Route11GateUpstairsText4
Route11GateUpstairsText1: ; 4945f (12:545f)
- db $08 ; asm
+ TX_ASM
xor a
ld [wWhichTrade], a
predef DoInGameTradeDialogue
-asm_49469: ; 49469 (12:5469)
+Route11GateUpstairsScriptEnd: ; 49469 (12:5469)
jp TextScriptEnd
Route11GateUpstairsText2: ; 4946c (12:546c)
- db $8
- ld a, [wd7d6]
- add a
- jr c, .asm_4949b ; 0x49471 $28
+ TX_ASM
+ CheckEvent EVENT_GOT_ITEMFINDER, 1
+ jr c, .asm_4949b
ld a, 30 ; pokemon needed
- ld [$ffdb], a
+ ld [hOaksAideRequirement], a
ld a, ITEMFINDER ; oak's aide reward
- ld [$ffdc], a
+ ld [hOaksAideRewardItem], a
ld [wd11e], a
call GetItemName
ld h, d
ld l, e
- ld de, wcc5b
- ld bc, $000d
+ ld de, wOaksAideRewardItemName
+ ld bc, ITEM_NAME_LENGTH
call CopyData
- predef OaksAideScript ; call oak's aide script
- ld a, [$ffdb]
+ predef OaksAideScript
+ ld a, [hOaksAideResult]
dec a
- jr nz, .asm_494a1 ; 0x49494 $b
- ld hl, wd7d6
- set 7, [hl]
+ jr nz, .asm_494a1
+ SetEvent EVENT_GOT_ITEMFINDER
.asm_4949b
ld hl, Route11GateUpstairsText_494a3
call PrintText
.asm_494a1
- jr asm_49469 ; 0x494a1 $c6
+ jr Route11GateUpstairsScriptEnd
Route11GateUpstairsText_494a3: ; 494a3 (12:54a3)
TX_FAR _Route11GateUpstairsText_494a3
db "@"
Route11GateUpstairsText3: ; 494a8 (12:54a8)
- db $08 ; asm
+ TX_ASM
ld a, [wSpriteStateData1 + 9]
- cp $4
- jp nz, Route12GateUpstairsScript_495c9
- ld a, [wd7d8]
- bit 7, a ; fought snorlax?
+ cp SPRITE_FACING_UP
+ jp nz, GateUpstairsScript_PrintIfFacingUp
+ CheckEvent EVENT_BEAT_ROUTE12_SNORLAX
ld hl, BinocularsSnorlaxText
jr z, .print
ld hl, BinocularsNoSnorlaxText
@@ -70,9 +67,9 @@ BinocularsNoSnorlaxText:
db "@"
Route11GateUpstairsText4: ; 494ce (12:54ce)
- db $8
- ld hl, Route11GateUpstairsText_494d5 ; $54d5
- jp Route12GateUpstairsScript_495c9
+ TX_ASM
+ ld hl, Route11GateUpstairsText_494d5
+ jp GateUpstairsScript_PrintIfFacingUp
Route11GateUpstairsText_494d5: ; 494d5 (12:54d5)
TX_FAR _Route11GateUpstairsText_494d5
diff --git a/scripts/route12.asm b/scripts/route12.asm
index fdaf2a85..4057ce03 100755
--- a/scripts/route12.asm
+++ b/scripts/route12.asm
@@ -21,21 +21,20 @@ Route12ScriptPointers: ; 59611 (16:5611)
dw Route12Script3
Route12Script0: ; 59619 (16:5619)
- ld hl, wd7d8
- bit 7, [hl]
+ CheckEventHL EVENT_BEAT_ROUTE12_SNORLAX
jp nz, CheckFightingMapTrainers
- bit 6, [hl]
- res 6, [hl]
+ CheckEventReuseHL EVENT_FIGHT_ROUTE12_SNORLAX
+ ResetEventReuseHL EVENT_FIGHT_ROUTE12_SNORLAX
jp z, CheckFightingMapTrainers
ld a, $d
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, SNORLAX
- ld [W_CUROPPONENT], a ; wd059
+ ld [W_CUROPPONENT], a
ld a, 30
- ld [W_CURENEMYLVL], a ; W_CURENEMYLVL
+ ld [W_CURENEMYLVL], a
ld a, HS_ROUTE_12_SNORLAX
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, $3
ld [W_ROUTE12CURSCRIPT], a
@@ -43,7 +42,7 @@ Route12Script0: ; 59619 (16:5619)
ret
Route12Script3: ; 5964c (16:564c)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jr z, Route12Script_59606
call UpdateSprites
@@ -51,11 +50,10 @@ Route12Script3: ; 5964c (16:564c)
cp $2
jr z, .asm_59664
ld a, $e
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
.asm_59664
- ld hl, wd7d8
- set 7, [hl]
+ SetEvent EVENT_BEAT_ROUTE12_SNORLAX
call Delay3
ld a, $0
ld [W_ROUTE12CURSCRIPT], a
@@ -71,8 +69,8 @@ Route12TextPointers: ; 59675 (16:5675)
dw Route12Text6
dw Route12Text7
dw Route12Text8
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
dw Route12Text11
dw Route12Text12
dw Route12Text13
@@ -80,67 +78,67 @@ Route12TextPointers: ; 59675 (16:5675)
Route12TrainerHeaders: ; 59691 (16:5691)
Route12TrainerHeader0: ; 59691 (16:5691)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd7d7 ; flag's byte
- dw Route12BattleText1 ; 0x56ff TextBeforeBattle
- dw Route12AfterBattleText1 ; 0x5709 TextAfterBattle
- dw Route12EndBattleText1 ; 0x5704 TextEndBattle
- dw Route12EndBattleText1 ; 0x5704 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_0
+ dw Route12BattleText1 ; TextBeforeBattle
+ dw Route12AfterBattleText1 ; TextAfterBattle
+ dw Route12EndBattleText1 ; TextEndBattle
+ dw Route12EndBattleText1 ; TextEndBattle
Route12TrainerHeader1: ; 5969d (16:569d)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_1
db ($4 << 4) ; trainer's view range
- dw wd7d7 ; flag's byte
- dw Route12BattleText2 ; 0x5718 TextBeforeBattle
- dw Route12AfterBattleText2 ; 0x5722 TextAfterBattle
- dw Route12EndBattleText2 ; 0x571d TextEndBattle
- dw Route12EndBattleText2 ; 0x571d TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_1
+ dw Route12BattleText2 ; TextBeforeBattle
+ dw Route12AfterBattleText2 ; TextAfterBattle
+ dw Route12EndBattleText2 ; TextEndBattle
+ dw Route12EndBattleText2 ; TextEndBattle
Route12TrainerHeader2: ; 596a9 (16:56a9)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd7d7 ; flag's byte
- dw Route12BattleText3 ; 0x5731 TextBeforeBattle
- dw Route12AfterBattleText3 ; 0x573b TextAfterBattle
- dw Route12EndBattleText3 ; 0x5736 TextEndBattle
- dw Route12EndBattleText3 ; 0x5736 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_2
+ dw Route12BattleText3 ; TextBeforeBattle
+ dw Route12AfterBattleText3 ; TextAfterBattle
+ dw Route12EndBattleText3 ; TextEndBattle
+ dw Route12EndBattleText3 ; TextEndBattle
Route12TrainerHeader3: ; 596b5 (16:56b5)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_3
db ($4 << 4) ; trainer's view range
- dw wd7d7 ; flag's byte
- dw Route12BattleText4 ; 0x574a TextBeforeBattle
- dw Route12AfterBattleText4 ; 0x5754 TextAfterBattle
- dw Route12EndBattleText4 ; 0x574f TextEndBattle
- dw Route12EndBattleText4 ; 0x574f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_3
+ dw Route12BattleText4 ; TextBeforeBattle
+ dw Route12AfterBattleText4 ; TextAfterBattle
+ dw Route12EndBattleText4 ; TextEndBattle
+ dw Route12EndBattleText4 ; TextEndBattle
Route12TrainerHeader4: ; 596c1 (16:56c1)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_4
db ($4 << 4) ; trainer's view range
- dw wd7d7 ; flag's byte
- dw Route12BattleText5 ; 0x5763 TextBeforeBattle
- dw Route12AfterBattleText5 ; 0x576d TextAfterBattle
- dw Route12EndBattleText5 ; 0x5768 TextEndBattle
- dw Route12EndBattleText5 ; 0x5768 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_4
+ dw Route12BattleText5 ; TextBeforeBattle
+ dw Route12AfterBattleText5 ; TextAfterBattle
+ dw Route12EndBattleText5 ; TextEndBattle
+ dw Route12EndBattleText5 ; TextEndBattle
Route12TrainerHeader5: ; 596cd (16:56cd)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_5
db ($4 << 4) ; trainer's view range
- dw wd7d7 ; flag's byte
- dw Route12BattleText6 ; 0x577c TextBeforeBattle
- dw Route12AfterBattleText6 ; 0x5786 TextAfterBattle
- dw Route12EndBattleText6 ; 0x5781 TextEndBattle
- dw Route12EndBattleText6 ; 0x5781 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_5
+ dw Route12BattleText6 ; TextBeforeBattle
+ dw Route12AfterBattleText6 ; TextAfterBattle
+ dw Route12EndBattleText6 ; TextEndBattle
+ dw Route12EndBattleText6 ; TextEndBattle
Route12TrainerHeader6: ; 596d9 (16:56d9)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_6, 1
db ($1 << 4) ; trainer's view range
- dw wd7d7 ; flag's byte
- dw Route12BattleText7 ; 0x5795 TextBeforeBattle
- dw Route12AfterBattleText7 ; 0x579f TextAfterBattle
- dw Route12EndBattleText7 ; 0x579a TextEndBattle
- dw Route12EndBattleText7 ; 0x579a TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_6, 1
+ dw Route12BattleText7 ; TextBeforeBattle
+ dw Route12AfterBattleText7 ; TextAfterBattle
+ dw Route12EndBattleText7 ; TextEndBattle
+ dw Route12EndBattleText7 ; TextEndBattle
db $ff
@@ -157,7 +155,7 @@ Route12Text14: ; 596f0 (16:56f0)
db "@"
Route12Text2: ; 596f5 (16:56f5)
- db $08 ; asm
+ TX_ASM
ld hl, Route12TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -175,7 +173,7 @@ Route12AfterBattleText1: ; 59709 (16:5709)
db "@"
Route12Text3: ; 5970e (16:570e)
- db $08 ; asm
+ TX_ASM
ld hl, Route12TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -193,7 +191,7 @@ Route12AfterBattleText2: ; 59722 (16:5722)
db "@"
Route12Text4: ; 59727 (16:5727)
- db $08 ; asm
+ TX_ASM
ld hl, Route12TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -211,7 +209,7 @@ Route12AfterBattleText3: ; 5973b (16:573b)
db "@"
Route12Text5: ; 59740 (16:5740)
- db $08 ; asm
+ TX_ASM
ld hl, Route12TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -229,7 +227,7 @@ Route12AfterBattleText4: ; 59754 (16:5754)
db "@"
Route12Text6: ; 59759 (16:5759)
- db $08 ; asm
+ TX_ASM
ld hl, Route12TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -247,7 +245,7 @@ Route12AfterBattleText5: ; 5976d (16:576d)
db "@"
Route12Text7: ; 59772 (16:5772)
- db $08 ; asm
+ TX_ASM
ld hl, Route12TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
@@ -265,7 +263,7 @@ Route12AfterBattleText6: ; 59786 (16:5786)
db "@"
Route12Text8: ; 5978b (16:578b)
- db $08 ; asm
+ TX_ASM
ld hl, Route12TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route12gateupstairs.asm b/scripts/route12gateupstairs.asm
index c4c05cd6..e7ad5cbf 100755
--- a/scripts/route12gateupstairs.asm
+++ b/scripts/route12gateupstairs.asm
@@ -7,28 +7,26 @@ Route12GateUpstairsTextPointers: ; 49563 (12:5563)
dw Route12GateUpstairsText3
Route12GateUpstairsText1: ; 49569 (12:5569)
- db $08 ; asm
- ld a, [wd7d7]
- rrca
- jr c, .asm_0ad3c ; 0x4956e
+ TX_ASM
+ CheckEvent EVENT_GOT_TM39, 1
+ jr c, .asm_0ad3c
ld hl, TM39PreReceiveText
call PrintText
- ld bc, (TM_39 << 8) | 1
+ lb bc, TM_39, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedTM39Text
call PrintText
- ld hl, wd7d7
- set 0, [hl]
- jr .asm_4ba56 ; 0x49589
+ SetEvent EVENT_GOT_TM39
+ jr .asm_4ba56
.BagFull
ld hl, TM39NoRoomText
call PrintText
- jr .asm_4ba56 ; 0x49591
-.asm_0ad3c ; 0x49593
+ jr .asm_4ba56
+.asm_0ad3c
ld hl, TM39ExplanationText
call PrintText
-.asm_4ba56 ; 0x49599
+.asm_4ba56
jp TextScriptEnd
TM39PreReceiveText: ; 4959c (12:559c)
@@ -48,32 +46,32 @@ TM39NoRoomText: ; 495ac (12:55ac)
db "@"
Route12GateUpstairsText2: ; 495b1 (12:55b1)
- db $08 ; asm
+ TX_ASM
ld hl, Route12GateUpstairsText_495b8
- jp Route12GateUpstairsScript_495c9
+ jp GateUpstairsScript_PrintIfFacingUp
Route12GateUpstairsText_495b8: ; 495b8 (12:55b8)
TX_FAR _Route12GateUpstairsText_495b8
db "@"
Route12GateUpstairsText3: ; 495bd (12:55bd)
- db $8
+ TX_ASM
ld hl, Route12GateUpstairsText_495c4
- jp Route12GateUpstairsScript_495c9
+ jp GateUpstairsScript_PrintIfFacingUp
Route12GateUpstairsText_495c4: ; 495c4 (12:55c4)
TX_FAR _Route12GateUpstairsText_495c4
db "@"
-Route12GateUpstairsScript_495c9: ; 495c9 (12:55c9)
+GateUpstairsScript_PrintIfFacingUp: ; 495c9 (12:55c9)
ld a, [wSpriteStateData1 + 9]
- cp $4
- jr z, .asm_495d4 ; 0x495ce $4
+ cp SPRITE_FACING_UP
+ jr z, .up
ld a, $1
- jr .asm_495d8 ; 0x495d2 $4
-.asm_495d4
+ jr .done
+.up
call PrintText
xor a
-.asm_495d8
+.done
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
jp TextScriptEnd
diff --git a/scripts/route12house.asm b/scripts/route12house.asm
index 44667b24..bb065f1c 100755
--- a/scripts/route12house.asm
+++ b/scripts/route12house.asm
@@ -5,7 +5,7 @@ Route12HouseTextPointers: ; 56482 (15:6482)
dw Route12HouseText1
Route12HouseText1: ; 56484 (15:6484)
- db $08 ; asm
+ TX_ASM
ld a, [wd728]
bit 5, a
jr nz, .asm_b4cad
@@ -15,7 +15,7 @@ Route12HouseText1: ; 56484 (15:6484)
ld a, [wCurrentMenuItem]
and a
jr nz, .asm_a2d76
- ld bc, (SUPER_ROD << 8) | 1
+ lb bc, SUPER_ROD, 1
call GiveItem
jr nc, .BagFull
ld hl, wd728
@@ -27,7 +27,7 @@ Route12HouseText1: ; 56484 (15:6484)
jr .asm_df984
.asm_a2d76
ld hl, Route12HouseText_564cf
- jr .asm_df984 ; 0x564b5
+ jr .asm_df984
.asm_b4cad
ld hl, Route12HouseText_564d4
.asm_df984
@@ -39,9 +39,9 @@ Route12HouseText_564c0: ; 564c0 (15:64c0)
db "@"
Route12HouseText_564c5: ; 564c5 (15:64c5)
- TX_FAR _Route12HouseText_564c5 ; 0x8ca00
+ TX_FAR _Route12HouseText_564c5
db $0B
- TX_FAR _Route12HouseText_564ca ; 0x8ca4f
+ TX_FAR _Route12HouseText_564ca
db "@"
Route12HouseText_564cf: ; 564cf (15:64cf)
diff --git a/scripts/route13.asm b/scripts/route13.asm
index 21862dfc..ab061071 100755
--- a/scripts/route13.asm
+++ b/scripts/route13.asm
@@ -29,99 +29,99 @@ Route13TextPointers: ; 55837 (15:5837)
Route13TrainerHeaders: ; 55851 (15:5851)
Route13TrainerHeader0: ; 55851 (15:5851)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd7d9 ; flag's byte
- dw Route13BattleText2 ; 0x58d4 TextBeforeBattle
- dw Route13AfterBattleText2 ; 0x58de TextAfterBattle
- dw Route13EndBattleText2 ; 0x58d9 TextEndBattle
- dw Route13EndBattleText2 ; 0x58d9 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_0
+ dw Route13BattleText2 ; TextBeforeBattle
+ dw Route13AfterBattleText2 ; TextAfterBattle
+ dw Route13EndBattleText2 ; TextEndBattle
+ dw Route13EndBattleText2 ; TextEndBattle
Route13TrainerHeader2: ; 5585d (15:585d)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd7d9 ; flag's byte
- dw Route13BattleText3 ; 0x58ed TextBeforeBattle
- dw Route13AfterBattleText3 ; 0x58f7 TextAfterBattle
- dw Route13EndBattleText3 ; 0x58f2 TextEndBattle
- dw Route13EndBattleText3 ; 0x58f2 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_2
+ dw Route13BattleText3 ; TextBeforeBattle
+ dw Route13AfterBattleText3 ; TextAfterBattle
+ dw Route13EndBattleText3 ; TextEndBattle
+ dw Route13EndBattleText3 ; TextEndBattle
Route13TrainerHeader3: ; 55869 (15:5869)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_3
db ($2 << 4) ; trainer's view range
- dw wd7d9 ; flag's byte
- dw Route13BattleText4 ; 0x5906 TextBeforeBattle
- dw Route13AfterBattleText4 ; 0x5910 TextAfterBattle
- dw Route13EndBattleText4 ; 0x590b TextEndBattle
- dw Route13EndBattleText4 ; 0x590b TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_3
+ dw Route13BattleText4 ; TextBeforeBattle
+ dw Route13AfterBattleText4 ; TextAfterBattle
+ dw Route13EndBattleText4 ; TextEndBattle
+ dw Route13EndBattleText4 ; TextEndBattle
Route13TrainerHeader4: ; 55875 (15:5875)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_4
db ($2 << 4) ; trainer's view range
- dw wd7d9 ; flag's byte
- dw Route13BattleText5 ; 0x591f TextBeforeBattle
- dw Route13AfterBattleText5 ; 0x5929 TextAfterBattle
- dw Route13EndBattleText5 ; 0x5924 TextEndBattle
- dw Route13EndBattleText5 ; 0x5924 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_4
+ dw Route13BattleText5 ; TextBeforeBattle
+ dw Route13AfterBattleText5 ; TextAfterBattle
+ dw Route13EndBattleText5 ; TextEndBattle
+ dw Route13EndBattleText5 ; TextEndBattle
Route13TrainerHeader5: ; 55881 (15:5881)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_5
db ($4 << 4) ; trainer's view range
- dw wd7d9 ; flag's byte
- dw Route13BattleText6 ; 0x5938 TextBeforeBattle
- dw Route13AfterBattleText6 ; 0x5942 TextAfterBattle
- dw Route13EndBattleText6 ; 0x593d TextEndBattle
- dw Route13EndBattleText6 ; 0x593d TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_5
+ dw Route13BattleText6 ; TextBeforeBattle
+ dw Route13AfterBattleText6 ; TextAfterBattle
+ dw Route13EndBattleText6 ; TextEndBattle
+ dw Route13EndBattleText6 ; TextEndBattle
Route13TrainerHeader6: ; 5588d (15:588d)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_6
db ($2 << 4) ; trainer's view range
- dw wd7d9 ; flag's byte
- dw Route13BattleText7 ; 0x5951 TextBeforeBattle
- dw Route13AfterBattleText7 ; 0x595b TextAfterBattle
- dw Route13EndBattleText7 ; 0x5956 TextEndBattle
- dw Route13EndBattleText7 ; 0x5956 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_6
+ dw Route13BattleText7 ; TextBeforeBattle
+ dw Route13AfterBattleText7 ; TextAfterBattle
+ dw Route13EndBattleText7 ; TextEndBattle
+ dw Route13EndBattleText7 ; TextEndBattle
Route13TrainerHeader7: ; 55899 (15:5899)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_7
db ($4 << 4) ; trainer's view range
- dw wd7d9 ; flag's byte
- dw Route13BattleText8 ; 0x596a TextBeforeBattle
- dw Route13AfterBattleText8 ; 0x5974 TextAfterBattle
- dw Route13EndBattleText8 ; 0x596f TextEndBattle
- dw Route13EndBattleText8 ; 0x596f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_7
+ dw Route13BattleText8 ; TextBeforeBattle
+ dw Route13AfterBattleText8 ; TextAfterBattle
+ dw Route13EndBattleText8 ; TextEndBattle
+ dw Route13EndBattleText8 ; TextEndBattle
Route13TrainerHeader8: ; 558a5 (15:58a5)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_8, 1
db ($2 << 4) ; trainer's view range
- dw wd7d9 ; flag's byte
- dw Route13BattleText9 ; 0x5983 TextBeforeBattle
- dw Route13AfterBattleText9 ; 0x598d TextAfterBattle
- dw Route13EndBattleText9 ; 0x5988 TextEndBattle
- dw Route13EndBattleText9 ; 0x5988 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_8, 1
+ dw Route13BattleText9 ; TextBeforeBattle
+ dw Route13AfterBattleText9 ; TextAfterBattle
+ dw Route13EndBattleText9 ; TextEndBattle
+ dw Route13EndBattleText9 ; TextEndBattle
Route13TrainerHeader9: ; 558b1 (15:58b1)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_9, 1
db ($2 << 4) ; trainer's view range
- dw wd7d9 ; flag's byte
- dw Route13BattleText10 ; 0x599c TextBeforeBattle
- dw Route13AfterBattleText10 ; 0x59a6 TextAfterBattle
- dw Route13EndBattleText10 ; 0x59a1 TextEndBattle
- dw Route13EndBattleText10 ; 0x59a1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_9, 1
+ dw Route13BattleText10 ; TextBeforeBattle
+ dw Route13AfterBattleText10 ; TextAfterBattle
+ dw Route13EndBattleText10 ; TextEndBattle
+ dw Route13EndBattleText10 ; TextEndBattle
Route13TrainerHeader10: ; 558bd (15:58bd)
- db $a ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_10, 1
db ($4 << 4) ; trainer's view range
- dw wd7d9 ; flag's byte
- dw Route13BattleText11 ; 0x59b5 TextBeforeBattle
- dw Route13AfterBattleText11 ; 0x59bf TextAfterBattle
- dw Route13EndBattleText11 ; 0x59ba TextEndBattle
- dw Route13EndBattleText11 ; 0x59ba TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_10, 1
+ dw Route13BattleText11 ; TextBeforeBattle
+ dw Route13AfterBattleText11 ; TextAfterBattle
+ dw Route13EndBattleText11 ; TextEndBattle
+ dw Route13EndBattleText11 ; TextEndBattle
db $ff
Route13Text1: ; 558ca (15:58ca)
- db $08 ; asm
+ TX_ASM
ld hl, Route13TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -139,7 +139,7 @@ Route13AfterBattleText2: ; 558de (15:58de)
db "@"
Route13Text2: ; 558e3 (15:58e3)
- db $08 ; asm
+ TX_ASM
ld hl, Route13TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -157,7 +157,7 @@ Route13AfterBattleText3: ; 558f7 (15:58f7)
db "@"
Route13Text3: ; 558fc (15:58fc)
- db $08 ; asm
+ TX_ASM
ld hl, Route13TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -175,7 +175,7 @@ Route13AfterBattleText4: ; 55910 (15:5910)
db "@"
Route13Text4: ; 55915 (15:5915)
- db $08 ; asm
+ TX_ASM
ld hl, Route13TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -193,7 +193,7 @@ Route13AfterBattleText5: ; 55929 (15:5929)
db "@"
Route13Text5: ; 5592e (15:592e)
- db $08 ; asm
+ TX_ASM
ld hl, Route13TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
@@ -211,7 +211,7 @@ Route13AfterBattleText6: ; 55942 (15:5942)
db "@"
Route13Text6: ; 55947 (15:5947)
- db $08 ; asm
+ TX_ASM
ld hl, Route13TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
@@ -229,7 +229,7 @@ Route13AfterBattleText7: ; 5595b (15:595b)
db "@"
Route13Text7: ; 55960 (15:5960)
- db $08 ; asm
+ TX_ASM
ld hl, Route13TrainerHeader7
call TalkToTrainer
jp TextScriptEnd
@@ -247,7 +247,7 @@ Route13AfterBattleText8: ; 55974 (15:5974)
db "@"
Route13Text8: ; 55979 (15:5979)
- db $08 ; asm
+ TX_ASM
ld hl, Route13TrainerHeader8
call TalkToTrainer
jp TextScriptEnd
@@ -265,7 +265,7 @@ Route13AfterBattleText9: ; 5598d (15:598d)
db "@"
Route13Text9: ; 55992 (15:5992)
- db $08 ; asm
+ TX_ASM
ld hl, Route13TrainerHeader9
call TalkToTrainer
jp TextScriptEnd
@@ -283,7 +283,7 @@ Route13AfterBattleText10: ; 559a6 (15:59a6)
db "@"
Route13Text10: ; 559ab (15:59ab)
- db $08 ; asm
+ TX_ASM
ld hl, Route13TrainerHeader10
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route14.asm b/scripts/route14.asm
index d430f858..d65e257f 100755
--- a/scripts/route14.asm
+++ b/scripts/route14.asm
@@ -27,99 +27,99 @@ Route14TextPointers: ; 559ec (15:59ec)
Route14TrainerHeaders: ; 55a02 (15:5a02)
Route14TrainerHeader0: ; 55a02 (15:5a02)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd7db ; flag's byte
- dw Route14BattleText1 ; 0x5a85 TextBeforeBattle
- dw Route14AfterBattleText1 ; 0x5a8f TextAfterBattle
- dw Route14EndBattleText1 ; 0x5a8a TextEndBattle
- dw Route14EndBattleText1 ; 0x5a8a TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_0
+ dw Route14BattleText1 ; TextBeforeBattle
+ dw Route14AfterBattleText1 ; TextAfterBattle
+ dw Route14EndBattleText1 ; TextEndBattle
+ dw Route14EndBattleText1 ; TextEndBattle
Route14TrainerHeader1: ; 55a0e (15:5a0e)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_1
db ($2 << 4) ; trainer's view range
- dw wd7db ; flag's byte
- dw Route14BattleText2 ; 0x5a9e TextBeforeBattle
- dw Route14AfterBattleText2 ; 0x5aa8 TextAfterBattle
- dw Route14EndBattleText2 ; 0x5aa3 TextEndBattle
- dw Route14EndBattleText2 ; 0x5aa3 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_1
+ dw Route14BattleText2 ; TextBeforeBattle
+ dw Route14AfterBattleText2 ; TextAfterBattle
+ dw Route14EndBattleText2 ; TextEndBattle
+ dw Route14EndBattleText2 ; TextEndBattle
Route14TrainerHeader2: ; 55a1a (15:5a1a)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd7db ; flag's byte
- dw Route14BattleText3 ; 0x5ab7 TextBeforeBattle
- dw Route14AfterBattleText3 ; 0x5ac1 TextAfterBattle
- dw Route14EndBattleText3 ; 0x5abc TextEndBattle
- dw Route14EndBattleText3 ; 0x5abc TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_2
+ dw Route14BattleText3 ; TextBeforeBattle
+ dw Route14AfterBattleText3 ; TextAfterBattle
+ dw Route14EndBattleText3 ; TextEndBattle
+ dw Route14EndBattleText3 ; TextEndBattle
Route14TrainerHeader3: ; 55a26 (15:5a26)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd7db ; flag's byte
- dw Route14BattleText4 ; 0x5ad0 TextBeforeBattle
- dw Route14AfterBattleText4 ; 0x5ada TextAfterBattle
- dw Route14EndBattleText4 ; 0x5ad5 TextEndBattle
- dw Route14EndBattleText4 ; 0x5ad5 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_3
+ dw Route14BattleText4 ; TextBeforeBattle
+ dw Route14AfterBattleText4 ; TextAfterBattle
+ dw Route14EndBattleText4 ; TextEndBattle
+ dw Route14EndBattleText4 ; TextEndBattle
Route14TrainerHeader4: ; 55a32 (15:5a32)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_4
db ($3 << 4) ; trainer's view range
- dw wd7db ; flag's byte
- dw Route14BattleText5 ; 0x5ae9 TextBeforeBattle
- dw Route14AfterBattleText5 ; 0x5af3 TextAfterBattle
- dw Route14EndBattleText5 ; 0x5aee TextEndBattle
- dw Route14EndBattleText5 ; 0x5aee TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_4
+ dw Route14BattleText5 ; TextBeforeBattle
+ dw Route14AfterBattleText5 ; TextAfterBattle
+ dw Route14EndBattleText5 ; TextEndBattle
+ dw Route14EndBattleText5 ; TextEndBattle
Route14TrainerHeader5: ; 55a3e (15:5a3e)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_5
db ($4 << 4) ; trainer's view range
- dw wd7db ; flag's byte
- dw Route14BattleText6 ; 0x5b02 TextBeforeBattle
- dw Route14AfterBattleText6 ; 0x5b0c TextAfterBattle
- dw Route14EndBattleText6 ; 0x5b07 TextEndBattle
- dw Route14EndBattleText6 ; 0x5b07 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_5
+ dw Route14BattleText6 ; TextBeforeBattle
+ dw Route14AfterBattleText6 ; TextAfterBattle
+ dw Route14EndBattleText6 ; TextEndBattle
+ dw Route14EndBattleText6 ; TextEndBattle
Route14TrainerHeader6: ; 55a4a (15:5a4a)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_6
db ($4 << 4) ; trainer's view range
- dw wd7db ; flag's byte
- dw Route14BattleText7 ; 0x5b1b TextBeforeBattle
- dw Route14AfterBattleText7 ; 0x5b25 TextAfterBattle
- dw Route14EndBattleText7 ; 0x5b20 TextEndBattle
- dw Route14EndBattleText7 ; 0x5b20 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_6
+ dw Route14BattleText7 ; TextBeforeBattle
+ dw Route14AfterBattleText7 ; TextAfterBattle
+ dw Route14EndBattleText7 ; TextEndBattle
+ dw Route14EndBattleText7 ; TextEndBattle
Route14TrainerHeader7: ; 55a56 (15:5a56)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_7, 1
db ($4 << 4) ; trainer's view range
- dw wd7db ; flag's byte
- dw Route14BattleText8 ; 0x5b34 TextBeforeBattle
- dw Route14AfterBattleText8 ; 0x5b3e TextAfterBattle
- dw Route14EndBattleText8 ; 0x5b39 TextEndBattle
- dw Route14EndBattleText8 ; 0x5b39 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_7, 1
+ dw Route14BattleText8 ; TextBeforeBattle
+ dw Route14AfterBattleText8 ; TextAfterBattle
+ dw Route14EndBattleText8 ; TextEndBattle
+ dw Route14EndBattleText8 ; TextEndBattle
Route14TrainerHeader8: ; 55a62 (15:5a62)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_8, 1
db ($3 << 4) ; trainer's view range
- dw wd7db ; flag's byte
- dw Route14BattleText9 ; 0x5b4d TextBeforeBattle
- dw Route14AfterBattleText9 ; 0x5b57 TextAfterBattle
- dw Route14EndBattleText9 ; 0x5b52 TextEndBattle
- dw Route14EndBattleText9 ; 0x5b52 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_8, 1
+ dw Route14BattleText9 ; TextBeforeBattle
+ dw Route14AfterBattleText9 ; TextAfterBattle
+ dw Route14EndBattleText9 ; TextEndBattle
+ dw Route14EndBattleText9 ; TextEndBattle
Route14TrainerHeader9: ; 55a6e (15:5a6e)
- db $a ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_9, 1
db ($4 << 4) ; trainer's view range
- dw wd7db ; flag's byte
- dw Route14BattleText10 ; 0x5b66 TextBeforeBattle
- dw Route14AfterBattleText10 ; 0x5b70 TextAfterBattle
- dw Route14EndBattleText10 ; 0x5b6b TextEndBattle
- dw Route14EndBattleText10 ; 0x5b6b TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_9, 1
+ dw Route14BattleText10 ; TextBeforeBattle
+ dw Route14AfterBattleText10 ; TextAfterBattle
+ dw Route14EndBattleText10 ; TextEndBattle
+ dw Route14EndBattleText10 ; TextEndBattle
db $ff
Route14Text1: ; 55a7b (15:5a7b)
- db $08 ; asm
+ TX_ASM
ld hl, Route14TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -137,7 +137,7 @@ Route14AfterBattleText1: ; 55a8f (15:5a8f)
db "@"
Route14Text2: ; 55a94 (15:5a94)
- db $08 ; asm
+ TX_ASM
ld hl, Route14TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -155,7 +155,7 @@ Route14AfterBattleText2: ; 55aa8 (15:5aa8)
db "@"
Route14Text3: ; 55aad (15:5aad)
- db $08 ; asm
+ TX_ASM
ld hl, Route14TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -173,7 +173,7 @@ Route14AfterBattleText3: ; 55ac1 (15:5ac1)
db "@"
Route14Text4: ; 55ac6 (15:5ac6)
- db $08 ; asm
+ TX_ASM
ld hl, Route14TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -191,7 +191,7 @@ Route14AfterBattleText4: ; 55ada (15:5ada)
db "@"
Route14Text5: ; 55adf (15:5adf)
- db $08 ; asm
+ TX_ASM
ld hl, Route14TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -209,7 +209,7 @@ Route14AfterBattleText5: ; 55af3 (15:5af3)
db "@"
Route14Text6: ; 55af8 (15:5af8)
- db $08 ; asm
+ TX_ASM
ld hl, Route14TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
@@ -227,7 +227,7 @@ Route14AfterBattleText6: ; 55b0c (15:5b0c)
db "@"
Route14Text7: ; 55b11 (15:5b11)
- db $08 ; asm
+ TX_ASM
ld hl, Route14TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
@@ -245,7 +245,7 @@ Route14AfterBattleText7: ; 55b25 (15:5b25)
db "@"
Route14Text8: ; 55b2a (15:5b2a)
- db $08 ; asm
+ TX_ASM
ld hl, Route14TrainerHeader7
call TalkToTrainer
jp TextScriptEnd
@@ -263,7 +263,7 @@ Route14AfterBattleText8: ; 55b3e (15:5b3e)
db "@"
Route14Text9: ; 55b43 (15:5b43)
- db $08 ; asm
+ TX_ASM
ld hl, Route14TrainerHeader8
call TalkToTrainer
jp TextScriptEnd
@@ -281,7 +281,7 @@ Route14AfterBattleText9: ; 55b57 (15:5b57)
db "@"
Route14Text10: ; 55b5c (15:5b5c)
- db $08 ; asm
+ TX_ASM
ld hl, Route14TrainerHeader9
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route15.asm b/scripts/route15.asm
index 733d4a1c..023f859c 100755
--- a/scripts/route15.asm
+++ b/scripts/route15.asm
@@ -23,151 +23,151 @@ Route15TextPointers: ; 597c7 (16:57c7)
dw Route15Text8
dw Route15Text9
dw Route15Text10
- dw Predef5CText
+ dw PickUpItemText
dw Route15Text12
Route15TrainerHeaders: ; 597df (16:57df)
Route15TrainerHeader0: ; 597df (16:57df)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd7dd ; flag's byte
- dw Route15BattleText1 ; 0x5898 TextBeforeBattle
- dw Route15AfterBattleText1 ; 0x58a2 TextAfterBattle
- dw Route15EndBattleText1 ; 0x589d TextEndBattle
- dw Route15EndBattleText1 ; 0x589d TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_0
+ dw Route15BattleText1 ; TextBeforeBattle
+ dw Route15AfterBattleText1 ; TextAfterBattle
+ dw Route15EndBattleText1 ; TextEndBattle
+ dw Route15EndBattleText1 ; TextEndBattle
Route15TrainerHeader1: ; 597eb (16:57eb)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd7dd ; flag's byte
- dw Route15BattleText2 ; 0x58a7 TextBeforeBattle
- dw Route15AfterBattleText2 ; 0x58b1 TextAfterBattle
- dw Route15EndBattleText2 ; 0x58ac TextEndBattle
- dw Route15EndBattleText2 ; 0x58ac TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_1
+ dw Route15BattleText2 ; TextBeforeBattle
+ dw Route15AfterBattleText2 ; TextAfterBattle
+ dw Route15EndBattleText2 ; TextEndBattle
+ dw Route15EndBattleText2 ; TextEndBattle
Route15TrainerHeader2: ; 597f7 (16:57f7)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd7dd ; flag's byte
- dw Route15BattleText3 ; 0x58b6 TextBeforeBattle
- dw Route15AfterBattleText3 ; 0x58c0 TextAfterBattle
- dw Route15EndBattleText3 ; 0x58bb TextEndBattle
- dw Route15EndBattleText3 ; 0x58bb TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_2
+ dw Route15BattleText3 ; TextBeforeBattle
+ dw Route15AfterBattleText3 ; TextAfterBattle
+ dw Route15EndBattleText3 ; TextEndBattle
+ dw Route15EndBattleText3 ; TextEndBattle
Route15TrainerHeader3: ; 59803 (16:5803)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd7dd ; flag's byte
- dw Route15BattleText4 ; 0x58c5 TextBeforeBattle
- dw Route15AfterBattleText4 ; 0x58cf TextAfterBattle
- dw Route15EndBattleText4 ; 0x58ca TextEndBattle
- dw Route15EndBattleText4 ; 0x58ca TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_3
+ dw Route15BattleText4 ; TextBeforeBattle
+ dw Route15AfterBattleText4 ; TextAfterBattle
+ dw Route15EndBattleText4 ; TextEndBattle
+ dw Route15EndBattleText4 ; TextEndBattle
Route15TrainerHeader4: ; 5980f (16:580f)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_4
db ($2 << 4) ; trainer's view range
- dw wd7dd ; flag's byte
- dw Route15BattleText5 ; 0x58d4 TextBeforeBattle
- dw Route15AfterBattleText5 ; 0x58de TextAfterBattle
- dw Route15EndBattleText5 ; 0x58d9 TextEndBattle
- dw Route15EndBattleText5 ; 0x58d9 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_4
+ dw Route15BattleText5 ; TextBeforeBattle
+ dw Route15AfterBattleText5 ; TextAfterBattle
+ dw Route15EndBattleText5 ; TextEndBattle
+ dw Route15EndBattleText5 ; TextEndBattle
Route15TrainerHeader5: ; 5981b (16:581b)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_5
db ($3 << 4) ; trainer's view range
- dw wd7dd ; flag's byte
- dw Route15BattleText6 ; 0x58e3 TextBeforeBattle
- dw Route15AfterBattleText6 ; 0x58ed TextAfterBattle
- dw Route15EndBattleText6 ; 0x58e8 TextEndBattle
- dw Route15EndBattleText6 ; 0x58e8 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_5
+ dw Route15BattleText6 ; TextBeforeBattle
+ dw Route15AfterBattleText6 ; TextAfterBattle
+ dw Route15EndBattleText6 ; TextEndBattle
+ dw Route15EndBattleText6 ; TextEndBattle
Route15TrainerHeader6: ; 59827 (16:5827)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_6
db ($3 << 4) ; trainer's view range
- dw wd7dd ; flag's byte
- dw Route15BattleText7 ; 0x58f2 TextBeforeBattle
- dw Route15AfterBattleText7 ; 0x58fc TextAfterBattle
- dw Route15EndBattleText7 ; 0x58f7 TextEndBattle
- dw Route15EndBattleText7 ; 0x58f7 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_6
+ dw Route15BattleText7 ; TextBeforeBattle
+ dw Route15AfterBattleText7 ; TextAfterBattle
+ dw Route15EndBattleText7 ; TextEndBattle
+ dw Route15EndBattleText7 ; TextEndBattle
Route15TrainerHeader7: ; 59833 (16:5833)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_7, 1
db ($3 << 4) ; trainer's view range
- dw wd7dd ; flag's byte
- dw Route15BattleText8 ; 0x5901 TextBeforeBattle
- dw Route15AfterBattleText8 ; 0x590b TextAfterBattle
- dw Route15EndBattleText8 ; 0x5906 TextEndBattle
- dw Route15EndBattleText8 ; 0x5906 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_7, 1
+ dw Route15BattleText8 ; TextBeforeBattle
+ dw Route15AfterBattleText8 ; TextAfterBattle
+ dw Route15EndBattleText8 ; TextEndBattle
+ dw Route15EndBattleText8 ; TextEndBattle
Route15TrainerHeader8: ; 5983f (16:583f)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_8, 1
db ($3 << 4) ; trainer's view range
- dw wd7dd ; flag's byte
- dw Route15BattleText9 ; 0x5910 TextBeforeBattle
- dw Route15AfterBattleText9 ; 0x591a TextAfterBattle
- dw Route15EndBattleText9 ; 0x5915 TextEndBattle
- dw Route15EndBattleText9 ; 0x5915 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_8, 1
+ dw Route15BattleText9 ; TextBeforeBattle
+ dw Route15AfterBattleText9 ; TextAfterBattle
+ dw Route15EndBattleText9 ; TextEndBattle
+ dw Route15EndBattleText9 ; TextEndBattle
Route15TrainerHeader9: ; 5984b (16:584b)
- db $a ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_9, 1
db ($3 << 4) ; trainer's view range
- dw wd7dd ; flag's byte
- dw Route15BattleText10 ; 0x591f TextBeforeBattle
- dw Route15AfterBattleText10 ; 0x5929 TextAfterBattle
- dw Route15EndBattleText10 ; 0x5924 TextEndBattle
- dw Route15EndBattleText10 ; 0x5924 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_9, 1
+ dw Route15BattleText10 ; TextBeforeBattle
+ dw Route15AfterBattleText10 ; TextAfterBattle
+ dw Route15EndBattleText10 ; TextEndBattle
+ dw Route15EndBattleText10 ; TextEndBattle
db $ff
Route15Text1: ; 59858 (16:5858)
- db $8 ; asm
+ TX_ASM
ld hl, Route15TrainerHeader0
- jr asm_33cb7 ; 0x5985c $34
+ jr Route15TalkToTrainer
Route15Text2: ; 5985e (16:585e)
- db $8 ; asm
+ TX_ASM
ld hl, Route15TrainerHeader1
- jr asm_33cb7 ; 0x59862 $2e
+ jr Route15TalkToTrainer
Route15Text3: ; 59864 (16:5864)
- db $8 ; asm
+ TX_ASM
ld hl, Route15TrainerHeader2
- jr asm_33cb7 ; 0x59868 $28
+ jr Route15TalkToTrainer
Route15Text4: ; 5986a (16:586a)
- db $8 ; asm
+ TX_ASM
ld hl, Route15TrainerHeader3
- jr asm_33cb7 ; 0x5986e $22
+ jr Route15TalkToTrainer
Route15Text5: ; 59870 (16:5870)
- db $8 ; asm
+ TX_ASM
ld hl, Route15TrainerHeader4
- jr asm_33cb7 ; 0x59874 $1c
+ jr Route15TalkToTrainer
Route15Text6: ; 59876 (16:5876)
- db $8 ; asm
+ TX_ASM
ld hl, Route15TrainerHeader5
- jr asm_33cb7 ; 0x5987a $16
+ jr Route15TalkToTrainer
Route15Text7: ; 5987c (16:587c)
- db $8 ; asm
+ TX_ASM
ld hl, Route15TrainerHeader6
- jr asm_33cb7 ; 0x59880 $10
+ jr Route15TalkToTrainer
Route15Text8: ; 59882 (16:5882)
- db $8 ; asm
+ TX_ASM
ld hl, Route15TrainerHeader7
- jr asm_33cb7 ; 0x59886 $a
+ jr Route15TalkToTrainer
Route15Text9: ; 59888 (16:5888)
- db $8 ; asm
+ TX_ASM
ld hl, Route15TrainerHeader8
- jr asm_33cb7 ; 0x5988c $4
+ jr Route15TalkToTrainer
Route15Text10: ; 5988e (16:588e)
- db $8 ; asm
+ TX_ASM
ld hl, Route15TrainerHeader9
-asm_33cb7: ; 59892 (16:5892)
+Route15TalkToTrainer: ; 59892 (16:5892)
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route15gateupstairs.asm b/scripts/route15gateupstairs.asm
index 2d328122..332df6b6 100755
--- a/scripts/route15gateupstairs.asm
+++ b/scripts/route15gateupstairs.asm
@@ -6,26 +6,24 @@ Route15GateUpstairsTextPointers: ; 4964d (12:564d)
dw Route15GateUpstairsText2
Route15GateUpstairsText1: ; 49651 (12:5651)
- db $8
- ld a, [wd7dd]
- bit 0, a
- jr nz, .asm_49683 ; 0x49657 $2a
+ TX_ASM
+ CheckEvent EVENT_GOT_EXP_ALL
+ jr nz, .asm_49683
ld a, 50 ; pokemon needed
- ld [$ffdb], a
+ ld [hOaksAideRequirement], a
ld a, EXP__ALL ; oak's aide reward
- ld [$ffdc], a
+ ld [hOaksAideRewardItem], a
ld [wd11e], a
call GetItemName
ld hl, wcd6d
- ld de, wcc5b
- ld bc, $000d
+ ld de, wOaksAideRewardItemName
+ ld bc, ITEM_NAME_LENGTH
call CopyData
- predef OaksAideScript ; call oak's aide script
- ld a, [$ffdb]
+ predef OaksAideScript
+ ld a, [hOaksAideResult]
cp $1
- jr nz, .asm_49689 ; 0x4967c $b
- ld hl, wd7dd
- set 0, [hl]
+ jr nz, .asm_49689
+ SetEvent EVENT_GOT_EXP_ALL
.asm_49683
ld hl, Route15GateUpstairsText_4968c
call PrintText
@@ -37,9 +35,9 @@ Route15GateUpstairsText_4968c: ; 4968c (12:568c)
db "@"
Route15GateUpstairsText2: ; 49691 (12:5691)
- db $8
+ TX_ASM
ld hl, Route15GateUpstairsText_49698
- jp Route12GateUpstairsScript_495c9
+ jp GateUpstairsScript_PrintIfFacingUp
Route15GateUpstairsText_49698: ; 49698 (12:5698)
TX_FAR _Route15GateUpstairsText_49698
diff --git a/scripts/route16.asm b/scripts/route16.asm
index ef5b5859..c762c999 100755
--- a/scripts/route16.asm
+++ b/scripts/route16.asm
@@ -21,21 +21,20 @@ Route16ScriptPointers: ; 59951 (16:5951)
dw Route16Script3
Route16Script0: ; 59959 (16:5959)
- ld hl, wd7e0
- bit 1, [hl]
+ CheckEventHL EVENT_BEAT_ROUTE16_SNORLAX
jp nz, CheckFightingMapTrainers
- bit 0, [hl]
- res 0, [hl]
+ CheckEventReuseHL EVENT_FIGHT_ROUTE16_SNORLAX
+ ResetEventReuseHL EVENT_FIGHT_ROUTE16_SNORLAX
jp z, CheckFightingMapTrainers
ld a, $a
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, SNORLAX
- ld [W_CUROPPONENT], a ; wd059
+ ld [W_CUROPPONENT], a
ld a, 30
- ld [W_CURENEMYLVL], a ; W_CURENEMYLVL
+ ld [W_CURENEMYLVL], a
ld a, HS_ROUTE_16_SNORLAX
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
call UpdateSprites
ld a, $3
@@ -44,7 +43,7 @@ Route16Script0: ; 59959 (16:5959)
ret
Route16Script3: ; 5998f (16:598f)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, Route16Script_59946
call UpdateSprites
@@ -52,11 +51,10 @@ Route16Script3: ; 5998f (16:598f)
cp $2
jr z, .asm_599a8
ld a, $b
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
.asm_599a8
- ld hl, wd7e0
- set 1, [hl]
+ SetEvent EVENT_BEAT_ROUTE16_SNORLAX
call Delay3
ld a, $0
ld [W_ROUTE16CURSCRIPT], a
@@ -78,63 +76,63 @@ Route16TextPointers: ; 599b9 (16:59b9)
Route16TrainerHeaders: ; 599cf (16:59cf)
Route16TrainerHeader0: ; 599cf (16:59cf)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd7df ; flag's byte
- dw Route16BattleText1 ; 0x5a22 TextBeforeBattle
- dw Route16AfterBattleText1 ; 0x5a2c TextAfterBattle
- dw Route16EndBattleText1 ; 0x5a27 TextEndBattle
- dw Route16EndBattleText1 ; 0x5a27 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_0
+ dw Route16BattleText1 ; TextBeforeBattle
+ dw Route16AfterBattleText1 ; TextAfterBattle
+ dw Route16EndBattleText1 ; TextEndBattle
+ dw Route16EndBattleText1 ; TextEndBattle
Route16TrainerHeader1: ; 599db (16:59db)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_1
db ($2 << 4) ; trainer's view range
- dw wd7df ; flag's byte
- dw Route16BattleText2 ; 0x5a3b TextBeforeBattle
- dw Route16AfterBattleText2 ; 0x5a45 TextAfterBattle
- dw Route16EndBattleText2 ; 0x5a40 TextEndBattle
- dw Route16EndBattleText2 ; 0x5a40 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_1
+ dw Route16BattleText2 ; TextBeforeBattle
+ dw Route16AfterBattleText2 ; TextAfterBattle
+ dw Route16EndBattleText2 ; TextEndBattle
+ dw Route16EndBattleText2 ; TextEndBattle
Route16TrainerHeader2: ; 599e7 (16:59e7)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd7df ; flag's byte
- dw Route16BattleText3 ; 0x5a54 TextBeforeBattle
- dw Route16AfterBattleText3 ; 0x5a5e TextAfterBattle
- dw Route16EndBattleText3 ; 0x5a59 TextEndBattle
- dw Route16EndBattleText3 ; 0x5a59 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_2
+ dw Route16BattleText3 ; TextBeforeBattle
+ dw Route16AfterBattleText3 ; TextAfterBattle
+ dw Route16EndBattleText3 ; TextEndBattle
+ dw Route16EndBattleText3 ; TextEndBattle
Route16TrainerHeader3: ; 599f3 (16:59f3)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_3
db ($2 << 4) ; trainer's view range
- dw wd7df ; flag's byte
- dw Route16BattleText4 ; 0x5a6d TextBeforeBattle
- dw Route16AfterBattleText4 ; 0x5a77 TextAfterBattle
- dw Route16EndBattleText4 ; 0x5a72 TextEndBattle
- dw Route16EndBattleText4 ; 0x5a72 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_3
+ dw Route16BattleText4 ; TextBeforeBattle
+ dw Route16AfterBattleText4 ; TextAfterBattle
+ dw Route16EndBattleText4 ; TextEndBattle
+ dw Route16EndBattleText4 ; TextEndBattle
Route16TrainerHeader4: ; 599ff (16:59ff)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_4
db ($2 << 4) ; trainer's view range
- dw wd7df ; flag's byte
- dw Route16BattleText5 ; 0x5a86 TextBeforeBattle
- dw Route16AfterBattleText5 ; 0x5a90 TextAfterBattle
- dw Route16EndBattleText5 ; 0x5a8b TextEndBattle
- dw Route16EndBattleText5 ; 0x5a8b TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_4
+ dw Route16BattleText5 ; TextBeforeBattle
+ dw Route16AfterBattleText5 ; TextAfterBattle
+ dw Route16EndBattleText5 ; TextEndBattle
+ dw Route16EndBattleText5 ; TextEndBattle
Route16TrainerHeader5: ; 59a0b (16:5a0b)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_5
db ($4 << 4) ; trainer's view range
- dw wd7df ; flag's byte
- dw Route16BattleText6 ; 0x5a9f TextBeforeBattle
- dw Route16AfterBattleText6 ; 0x5aa9 TextAfterBattle
- dw Route16EndBattleText6 ; 0x5aa4 TextEndBattle
- dw Route16EndBattleText6 ; 0x5aa4 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_5
+ dw Route16BattleText6 ; TextBeforeBattle
+ dw Route16AfterBattleText6 ; TextAfterBattle
+ dw Route16EndBattleText6 ; TextEndBattle
+ dw Route16EndBattleText6 ; TextEndBattle
db $ff
Route16Text1: ; 59a18 (16:5a18)
- db $08 ; asm
+ TX_ASM
ld hl, Route16TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -152,7 +150,7 @@ Route16AfterBattleText1: ; 59a2c (16:5a2c)
db "@"
Route16Text2: ; 59a31 (16:5a31)
- db $08 ; asm
+ TX_ASM
ld hl, Route16TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -170,7 +168,7 @@ Route16AfterBattleText2: ; 59a45 (16:5a45)
db "@"
Route16Text3: ; 59a4a (16:5a4a)
- db $08 ; asm
+ TX_ASM
ld hl, Route16TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -188,7 +186,7 @@ Route16AfterBattleText3: ; 59a5e (16:5a5e)
db "@"
Route16Text4: ; 59a63 (16:5a63)
- db $08 ; asm
+ TX_ASM
ld hl, Route16TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -206,7 +204,7 @@ Route16AfterBattleText4: ; 59a77 (16:5a77)
db "@"
Route16Text5: ; 59a7c (16:5a7c)
- db $08 ; asm
+ TX_ASM
ld hl, Route16TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -224,7 +222,7 @@ Route16AfterBattleText5: ; 59a90 (16:5a90)
db "@"
Route16Text6: ; 59a95 (16:5a95)
- db $08 ; asm
+ TX_ASM
ld hl, Route16TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route16gate.asm b/scripts/route16gate.asm
index 54bca413..801e577e 100755
--- a/scripts/route16gate.asm
+++ b/scripts/route16gate.asm
@@ -19,19 +19,19 @@ Route16GateScript0: ; 496d7 (12:56d7)
call ArePlayerCoordsInArray
ret nc
ld a, $3
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [hJoyHeld], a
- ld a, [wWhichTrade]
+ ld a, [wCoordIndex]
cp $1
- jr z, .asm_4970e ; 0x496f1 $1b
- ld a, [wWhichTrade]
+ jr z, .asm_4970e
+ ld a, [wCoordIndex]
dec a
ld [wSimulatedJoypadStatesIndex], a
ld b, $0
ld c, a
- ld a, $40
+ ld a, D_UP
ld hl, wSimulatedJoypadStatesEnd
call FillMemory
call StartSimulatingJoypadStates
@@ -59,11 +59,11 @@ Route16GateScript1: ; 4971d (12:571d)
Route16GateScript2: ; 49727 (12:5727)
ld a, $1
- ld [H_SPRITEHEIGHT], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
- ld a, $10
+ ld a, D_RIGHT
ld [wSimulatedJoypadStatesEnd], a
call StartSimulatingJoypadStates
ld a, $3
@@ -92,16 +92,16 @@ Route16GateTextPointers: ; 4975a (12:575a)
dw Route16GateText3
Route16GateText1: ; 49760 (12:5760)
- db $08 ; asm
+ TX_ASM
call Route16GateScript_49755
- jr z, .asm_0bdf3 ; 0x49764
+ jr z, .asm_0bdf3
ld hl, Route16GateText_4977c
call PrintText
- jr .asm_56c9d ; 0x4976c
-.asm_0bdf3 ; 0x4976e
+ jr .asm_56c9d
+.asm_0bdf3
ld hl, Route16GateText_49777
call PrintText
-.asm_56c9d ; 0x49774
+.asm_56c9d
jp TextScriptEnd
Route16GateText_49777: ; 49777 (12:5777)
diff --git a/scripts/route16gateupstairs.asm b/scripts/route16gateupstairs.asm
index c9996dcd..64b43e10 100755
--- a/scripts/route16gateupstairs.asm
+++ b/scripts/route16gateupstairs.asm
@@ -8,7 +8,7 @@ Route16GateUpstairsTextPointers: ; 4980e (12:580e)
dw Route16GateUpstairsText4
Route16GateUpstairsText1: ; 49816 (12:5816)
- db $08 ; asm
+ TX_ASM
ld hl, Route16GateUpstairsText_49820
call PrintText
jp TextScriptEnd
@@ -18,7 +18,7 @@ Route16GateUpstairsText_49820: ; 49820 (12:5820)
db "@"
Route16GateUpstairsText2: ; 49825 (12:5825)
- db $08 ; asm
+ TX_ASM
ld hl, Route16GateUpstairsText_4982f
call PrintText
jp TextScriptEnd
@@ -28,18 +28,18 @@ Route16GateUpstairsText_4982f: ; 4982f (12:582f)
db "@"
Route16GateUpstairsText3: ; 49834 (12:5834)
- db $8
+ TX_ASM
ld hl, Route16GateUpstairsText_4983b
- jp Route12GateUpstairsScript_495c9
+ jp GateUpstairsScript_PrintIfFacingUp
Route16GateUpstairsText_4983b: ; 4983b (12:583b)
TX_FAR _Route16GateUpstairsText_4983b
db "@"
Route16GateUpstairsText4: ; 49840 (12:5840)
- db $8
- ld hl, Route16GateUpstairsText_49847 ; $5847
- jp Route12GateUpstairsScript_495c9
+ TX_ASM
+ ld hl, Route16GateUpstairsText_49847
+ jp GateUpstairsScript_PrintIfFacingUp
Route16GateUpstairsText_49847: ; 49847 (12:5847)
TX_FAR _Route16GateUpstairsText_49847
diff --git a/scripts/route16house.asm b/scripts/route16house.asm
index 9a189757..ee23fd89 100755
--- a/scripts/route16house.asm
+++ b/scripts/route16house.asm
@@ -6,23 +6,21 @@ Route16HouseTextPointers: ; 1e5fb (7:65fb)
dw Route16HouseText2
Route16HouseText1: ; 1e5ff (7:65ff)
- db $08 ; asm
- ld a, [wd7e0]
- bit 6, a
+ TX_ASM
+ CheckEvent EVENT_GOT_HM02
ld hl, HM02ExplanationText
- jr nz, .asm_13616 ; 0x1e608
+ jr nz, .asm_13616
ld hl, Route16HouseText3
call PrintText
- ld bc, (HM_02 << 8) | 1
+ lb bc, HM_02, 1
call GiveItem
jr nc, .BagFull
- ld hl, wd7e0
- set 6, [hl]
+ SetEvent EVENT_GOT_HM02
ld hl, ReceivedHM02Text
- jr .asm_13616 ; 0x1e620
+ jr .asm_13616
.BagFull
ld hl, HM02NoRoomText
-.asm_13616 ; 0x1e625
+.asm_13616
call PrintText
jp TextScriptEnd
@@ -43,7 +41,7 @@ HM02NoRoomText: ; 1e63b (7:663b)
db "@"
Route16HouseText2: ; 1e640 (7:6640)
- db $08 ; asm
+ TX_ASM
ld hl, Route16HouseText_1e652
call PrintText
ld a, FEAROW
diff --git a/scripts/route17.asm b/scripts/route17.asm
index ffd00634..28c43627 100755
--- a/scripts/route17.asm
+++ b/scripts/route17.asm
@@ -32,99 +32,99 @@ Route17TextPointers: ; 55b93 (15:5b93)
Route17TrainerHeaders: ; 55bb3 (15:5bb3)
Route17TrainerHeader0: ; 55bb3 (15:5bb3)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd7e1 ; flag's byte
- dw Route17BattleText1 ; 0x5c36 TextBeforeBattle
- dw Route17AfterBattleText1 ; 0x5c40 TextAfterBattle
- dw Route17EndBattleText1 ; 0x5c3b TextEndBattle
- dw Route17EndBattleText1 ; 0x5c3b TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_0
+ dw Route17BattleText1 ; TextBeforeBattle
+ dw Route17AfterBattleText1 ; TextAfterBattle
+ dw Route17EndBattleText1 ; TextEndBattle
+ dw Route17EndBattleText1 ; TextEndBattle
Route17TrainerHeader1: ; 55bbf (15:5bbf)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_1
db ($4 << 4) ; trainer's view range
- dw wd7e1 ; flag's byte
- dw Route17BattleText2 ; 0x5c4f TextBeforeBattle
- dw Route17AfterBattleText2 ; 0x5c59 TextAfterBattle
- dw Route17EndBattleText2 ; 0x5c54 TextEndBattle
- dw Route17EndBattleText2 ; 0x5c54 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_1
+ dw Route17BattleText2 ; TextBeforeBattle
+ dw Route17AfterBattleText2 ; TextAfterBattle
+ dw Route17EndBattleText2 ; TextEndBattle
+ dw Route17EndBattleText2 ; TextEndBattle
Route17TrainerHeader2: ; 55bcb (15:5bcb)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd7e1 ; flag's byte
- dw Route17BattleText3 ; 0x5c68 TextBeforeBattle
- dw Route17AfterBattleText3 ; 0x5c72 TextAfterBattle
- dw Route17EndBattleText3 ; 0x5c6d TextEndBattle
- dw Route17EndBattleText3 ; 0x5c6d TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_2
+ dw Route17BattleText3 ; TextBeforeBattle
+ dw Route17AfterBattleText3 ; TextAfterBattle
+ dw Route17EndBattleText3 ; TextEndBattle
+ dw Route17EndBattleText3 ; TextEndBattle
Route17TrainerHeader3: ; 55bd7 (15:5bd7)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_3
db ($4 << 4) ; trainer's view range
- dw wd7e1 ; flag's byte
- dw Route17BattleText4 ; 0x5c81 TextBeforeBattle
- dw Route17AfterBattleText4 ; 0x5c8b TextAfterBattle
- dw Route17EndBattleText4 ; 0x5c86 TextEndBattle
- dw Route17EndBattleText4 ; 0x5c86 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_3
+ dw Route17BattleText4 ; TextBeforeBattle
+ dw Route17AfterBattleText4 ; TextAfterBattle
+ dw Route17EndBattleText4 ; TextEndBattle
+ dw Route17EndBattleText4 ; TextEndBattle
Route17TrainerHeader4: ; 55be3 (15:5be3)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_4
db ($3 << 4) ; trainer's view range
- dw wd7e1 ; flag's byte
- dw Route17BattleText5 ; 0x5c9a TextBeforeBattle
- dw Route17AfterBattleText5 ; 0x5ca4 TextAfterBattle
- dw Route17EndBattleText5 ; 0x5c9f TextEndBattle
- dw Route17EndBattleText5 ; 0x5c9f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_4
+ dw Route17BattleText5 ; TextBeforeBattle
+ dw Route17AfterBattleText5 ; TextAfterBattle
+ dw Route17EndBattleText5 ; TextEndBattle
+ dw Route17EndBattleText5 ; TextEndBattle
Route17TrainerHeader5: ; 55bef (15:5bef)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_5
db ($2 << 4) ; trainer's view range
- dw wd7e1 ; flag's byte
- dw Route17BattleText6 ; 0x5cb3 TextBeforeBattle
- dw Route17AfterBattleText6 ; 0x5cbd TextAfterBattle
- dw Route17EndBattleText6 ; 0x5cb8 TextEndBattle
- dw Route17EndBattleText6 ; 0x5cb8 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_5
+ dw Route17BattleText6 ; TextBeforeBattle
+ dw Route17AfterBattleText6 ; TextAfterBattle
+ dw Route17EndBattleText6 ; TextEndBattle
+ dw Route17EndBattleText6 ; TextEndBattle
Route17TrainerHeader6: ; 55bfb (15:5bfb)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_6
db ($4 << 4) ; trainer's view range
- dw wd7e1 ; flag's byte
- dw Route17BattleText7 ; 0x5ccc TextBeforeBattle
- dw Route17AfterBattleText7 ; 0x5cd6 TextAfterBattle
- dw Route17EndBattleText7 ; 0x5cd1 TextEndBattle
- dw Route17EndBattleText7 ; 0x5cd1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_6
+ dw Route17BattleText7 ; TextBeforeBattle
+ dw Route17AfterBattleText7 ; TextAfterBattle
+ dw Route17EndBattleText7 ; TextEndBattle
+ dw Route17EndBattleText7 ; TextEndBattle
Route17TrainerHeader7: ; 55c07 (15:5c07)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_7, 1
db ($2 << 4) ; trainer's view range
- dw wd7e1 ; flag's byte
- dw Route17BattleText8 ; 0x5ce5 TextBeforeBattle
- dw Route17AfterBattleText8 ; 0x5cef TextAfterBattle
- dw Route17EndBattleText8 ; 0x5cea TextEndBattle
- dw Route17EndBattleText8 ; 0x5cea TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_7, 1
+ dw Route17BattleText8 ; TextBeforeBattle
+ dw Route17AfterBattleText8 ; TextAfterBattle
+ dw Route17EndBattleText8 ; TextEndBattle
+ dw Route17EndBattleText8 ; TextEndBattle
Route17TrainerHeader8: ; 55c13 (15:5c13)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_8, 1
db ($3 << 4) ; trainer's view range
- dw wd7e1 ; flag's byte
- dw Route17BattleText9 ; 0x5cfe TextBeforeBattle
- dw Route17AfterBattleText9 ; 0x5d08 TextAfterBattle
- dw Route17EndBattleText9 ; 0x5d03 TextEndBattle
- dw Route17EndBattleText9 ; 0x5d03 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_8, 1
+ dw Route17BattleText9 ; TextBeforeBattle
+ dw Route17AfterBattleText9 ; TextAfterBattle
+ dw Route17EndBattleText9 ; TextEndBattle
+ dw Route17EndBattleText9 ; TextEndBattle
Route17TrainerHeader9: ; 55c1f (15:5c1f)
- db $a ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_9, 1
db ($4 << 4) ; trainer's view range
- dw wd7e1 ; flag's byte
- dw Route17BattleText10 ; 0x5d17 TextBeforeBattle
- dw Route17AfterBattleText10 ; 0x5d21 TextAfterBattle
- dw Route17EndBattleText10 ; 0x5d1c TextEndBattle
- dw Route17EndBattleText10 ; 0x5d1c TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_9, 1
+ dw Route17BattleText10 ; TextBeforeBattle
+ dw Route17AfterBattleText10 ; TextAfterBattle
+ dw Route17EndBattleText10 ; TextEndBattle
+ dw Route17EndBattleText10 ; TextEndBattle
db $ff
Route17Text1: ; 55c2c (15:5c2c)
- db $08 ; asm
+ TX_ASM
ld hl, Route17TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -142,7 +142,7 @@ Route17AfterBattleText1: ; 55c40 (15:5c40)
db "@"
Route17Text2: ; 55c45 (15:5c45)
- db $08 ; asm
+ TX_ASM
ld hl, Route17TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -160,7 +160,7 @@ Route17AfterBattleText2: ; 55c59 (15:5c59)
db "@"
Route17Text3: ; 55c5e (15:5c5e)
- db $08 ; asm
+ TX_ASM
ld hl, Route17TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -178,7 +178,7 @@ Route17AfterBattleText3: ; 55c72 (15:5c72)
db "@"
Route17Text4: ; 55c77 (15:5c77)
- db $08 ; asm
+ TX_ASM
ld hl, Route17TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -196,7 +196,7 @@ Route17AfterBattleText4: ; 55c8b (15:5c8b)
db "@"
Route17Text5: ; 55c90 (15:5c90)
- db $08 ; asm
+ TX_ASM
ld hl, Route17TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -214,7 +214,7 @@ Route17AfterBattleText5: ; 55ca4 (15:5ca4)
db "@"
Route17Text6: ; 55ca9 (15:5ca9)
- db $08 ; asm
+ TX_ASM
ld hl, Route17TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
@@ -232,7 +232,7 @@ Route17AfterBattleText6: ; 55cbd (15:5cbd)
db "@"
Route17Text7: ; 55cc2 (15:5cc2)
- db $08 ; asm
+ TX_ASM
ld hl, Route17TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
@@ -250,7 +250,7 @@ Route17AfterBattleText7: ; 55cd6 (15:5cd6)
db "@"
Route17Text8: ; 55cdb (15:5cdb)
- db $08 ; asm
+ TX_ASM
ld hl, Route17TrainerHeader7
call TalkToTrainer
jp TextScriptEnd
@@ -268,7 +268,7 @@ Route17AfterBattleText8: ; 55cef (15:5cef)
db "@"
Route17Text9: ; 55cf4 (15:5cf4)
- db $08 ; asm
+ TX_ASM
ld hl, Route17TrainerHeader8
call TalkToTrainer
jp TextScriptEnd
@@ -286,7 +286,7 @@ Route17AfterBattleText9: ; 55d08 (15:5d08)
db "@"
Route17Text10: ; 55d0d (15:5d0d)
- db $08 ; asm
+ TX_ASM
ld hl, Route17TrainerHeader9
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route18.asm b/scripts/route18.asm
index de2fe19a..9a077faf 100755
--- a/scripts/route18.asm
+++ b/scripts/route18.asm
@@ -21,36 +21,36 @@ Route18TextPointers: ; 59ae0 (16:5ae0)
Route18TrainerHeaders: ; 59aea (16:5aea)
Route18TrainerHeader0: ; 59aea (16:5aea)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_18_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd7e3 ; flag's byte
- dw Route18BattleText1 ; 0x5b19 TextBeforeBattle
- dw Route18AfterBattleText1 ; 0x5b23 TextAfterBattle
- dw Route18EndBattleText1 ; 0x5b1e TextEndBattle
- dw Route18EndBattleText1 ; 0x5b1e TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_18_TRAINER_0
+ dw Route18BattleText1 ; TextBeforeBattle
+ dw Route18AfterBattleText1 ; TextAfterBattle
+ dw Route18EndBattleText1 ; TextEndBattle
+ dw Route18EndBattleText1 ; TextEndBattle
Route18TrainerHeader1: ; 59af6 (16:5af6)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_18_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd7e3 ; flag's byte
- dw Route18BattleText2 ; 0x5b32 TextBeforeBattle
- dw Route18AfterBattleText2 ; 0x5b3c TextAfterBattle
- dw Route18EndBattleText2 ; 0x5b37 TextEndBattle
- dw Route18EndBattleText2 ; 0x5b37 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_18_TRAINER_1
+ dw Route18BattleText2 ; TextBeforeBattle
+ dw Route18AfterBattleText2 ; TextAfterBattle
+ dw Route18EndBattleText2 ; TextEndBattle
+ dw Route18EndBattleText2 ; TextEndBattle
Route18TrainerHeader2: ; 59b02 (16:5b02)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_18_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd7e3 ; flag's byte
- dw Route18BattleText3 ; 0x5b4b TextBeforeBattle
- dw Route18AfterBattleText3 ; 0x5b55 TextAfterBattle
- dw Route18EndBattleText3 ; 0x5b50 TextEndBattle
- dw Route18EndBattleText3 ; 0x5b50 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_18_TRAINER_2
+ dw Route18BattleText3 ; TextBeforeBattle
+ dw Route18AfterBattleText3 ; TextAfterBattle
+ dw Route18EndBattleText3 ; TextEndBattle
+ dw Route18EndBattleText3 ; TextEndBattle
db $ff
Route18Text1: ; 59b0f (16:5b0f)
- db $08 ; asm
+ TX_ASM
ld hl, Route18TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -68,7 +68,7 @@ Route18AfterBattleText1: ; 59b23 (16:5b23)
db "@"
Route18Text2: ; 59b28 (16:5b28)
- db $08 ; asm
+ TX_ASM
ld hl, Route18TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -86,7 +86,7 @@ Route18AfterBattleText2: ; 59b3c (16:5b3c)
db "@"
Route18Text3: ; 59b41 (16:5b41)
- db $08 ; asm
+ TX_ASM
ld hl, Route18TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route18gate.asm b/scripts/route18gate.asm
index 1500f578..060a6bbf 100755
--- a/scripts/route18gate.asm
+++ b/scripts/route18gate.asm
@@ -19,19 +19,19 @@ Route18GateScript0: ; 4988f (12:588f)
call ArePlayerCoordsInArray
ret nc
ld a, $2
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [hJoyHeld], a
- ld a, [wWhichTrade]
+ ld a, [wCoordIndex]
cp $1
- jr z, .asm_498c6 ; 0x498a9 $1b
- ld a, [wWhichTrade]
+ jr z, .asm_498c6
+ ld a, [wCoordIndex]
dec a
ld [wSimulatedJoypadStatesIndex], a
- ld b, $0
+ ld b, 0
ld c, a
- ld a, $40
+ ld a, D_UP
ld hl, wSimulatedJoypadStatesEnd
call FillMemory
call StartSimulatingJoypadStates
@@ -59,11 +59,11 @@ Route18GateScript1: ; 498d5 (12:58d5)
Route18GateScript2: ; 498df (12:58df)
ld a, $1
- ld [H_SPRITEHEIGHT], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
- ld a, $10
+ ld a, D_RIGHT
ld [wSimulatedJoypadStatesEnd], a
call StartSimulatingJoypadStates
ld a, $3
@@ -87,16 +87,16 @@ Route18GateTextPointers: ; 4990d (12:590d)
dw Route18GateText2
Route18GateText1: ; 49911 (12:5911)
- db $08 ; asm
+ TX_ASM
call Route16GateScript_49755
- jr z, .asm_3c84d ; 0x49915
+ jr z, .asm_3c84d
ld hl, Route18GateText_4992d
call PrintText
- jr .asm_a8410 ; 0x4991d
-.asm_3c84d ; 0x4991f
+ jr .asm_a8410
+.asm_3c84d
ld hl, Route18GateText_49928
call PrintText
-.asm_a8410 ; 0x49925
+.asm_a8410
jp TextScriptEnd
Route18GateText_49928: ; 49928 (12:5928)
diff --git a/scripts/route18gateupstairs.asm b/scripts/route18gateupstairs.asm
index aaa1b34e..4e1014e0 100755
--- a/scripts/route18gateupstairs.asm
+++ b/scripts/route18gateupstairs.asm
@@ -7,25 +7,25 @@ Route18GateUpstairsTextPointers: ; 49978 (12:5978)
dw Route18GateUpstairsText3
Route18GateUpstairsText1: ; 4997e (12:597e)
- db $08 ; asm
+ TX_ASM
ld a, $5
ld [wWhichTrade], a
predef DoInGameTradeDialogue
jp TextScriptEnd
Route18GateUpstairsText2: ; 4998c (12:598c)
- db $8
- ld hl, Route18GateUpstairsText_49993 ; $5993
- jp Route12GateUpstairsScript_495c9
+ TX_ASM
+ ld hl, Route18GateUpstairsText_49993
+ jp GateUpstairsScript_PrintIfFacingUp
Route18GateUpstairsText_49993: ; 49993 (12:5993)
TX_FAR _Route18GateUpstairsText_49993
db "@"
Route18GateUpstairsText3: ; 49998 (12:5998)
- db $8
- ld hl, Route18GateUpstairsText_4999f ; $599f
- jp Route12GateUpstairsScript_495c9
+ TX_ASM
+ ld hl, Route18GateUpstairsText_4999f
+ jp GateUpstairsScript_PrintIfFacingUp
Route18GateUpstairsText_4999f: ; 4999f (12:599f)
TX_FAR _Route18GateUpstairsText_4999f
diff --git a/scripts/route19.asm b/scripts/route19.asm
index 40c7aeb3..4a60e40f 100755
--- a/scripts/route19.asm
+++ b/scripts/route19.asm
@@ -27,153 +27,153 @@ Route19TextPointers: ; 55d5d (15:5d5d)
Route19TrainerHeaders: ; 55d73 (15:5d73)
Route19TrainerHeader0: ; 55d73 (15:5d73)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd7e5 ; flag's byte
- dw Route19BattleText1 ; 0x5e50 TextBeforeBattle
- dw Route19AfterBattleText1 ; 0x5e5a TextAfterBattle
- dw Route19EndBattleText1 ; 0x5e55 TextEndBattle
- dw Route19EndBattleText1 ; 0x5e55 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_0
+ dw Route19BattleText1 ; TextBeforeBattle
+ dw Route19AfterBattleText1 ; TextAfterBattle
+ dw Route19EndBattleText1 ; TextEndBattle
+ dw Route19EndBattleText1 ; TextEndBattle
Route19TrainerHeader1: ; 55d7f (15:5d7f)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd7e5 ; flag's byte
- dw Route19BattleText2 ; 0x5e5f TextBeforeBattle
- dw Route19AfterBattleText2 ; 0x5e69 TextAfterBattle
- dw Route19EndBattleText2 ; 0x5e64 TextEndBattle
- dw Route19EndBattleText2 ; 0x5e64 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_1
+ dw Route19BattleText2 ; TextBeforeBattle
+ dw Route19AfterBattleText2 ; TextAfterBattle
+ dw Route19EndBattleText2 ; TextEndBattle
+ dw Route19EndBattleText2 ; TextEndBattle
Route19TrainerHeader2: ; 55d8b (15:5d8b)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd7e5 ; flag's byte
- dw Route19BattleText3 ; 0x5e6e TextBeforeBattle
- dw Route19AfterBattleText3 ; 0x5e78 TextAfterBattle
- dw Route19EndBattleText3 ; 0x5e73 TextEndBattle
- dw Route19EndBattleText3 ; 0x5e73 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_2
+ dw Route19BattleText3 ; TextBeforeBattle
+ dw Route19AfterBattleText3 ; TextAfterBattle
+ dw Route19EndBattleText3 ; TextEndBattle
+ dw Route19EndBattleText3 ; TextEndBattle
Route19TrainerHeader3: ; 55d97 (15:5d97)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_3
db ($4 << 4) ; trainer's view range
- dw wd7e5 ; flag's byte
- dw Route19BattleText4 ; 0x5e7d TextBeforeBattle
- dw Route19AfterBattleText4 ; 0x5e87 TextAfterBattle
- dw Route19EndBattleText4 ; 0x5e82 TextEndBattle
- dw Route19EndBattleText4 ; 0x5e82 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_3
+ dw Route19BattleText4 ; TextBeforeBattle
+ dw Route19AfterBattleText4 ; TextAfterBattle
+ dw Route19EndBattleText4 ; TextEndBattle
+ dw Route19EndBattleText4 ; TextEndBattle
Route19TrainerHeader4: ; 55da3 (15:5da3)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_4
db ($4 << 4) ; trainer's view range
- dw wd7e5 ; flag's byte
- dw Route19BattleText5 ; 0x5e8c TextBeforeBattle
- dw Route19AfterBattleText5 ; 0x5e96 TextAfterBattle
- dw Route19EndBattleText5 ; 0x5e91 TextEndBattle
- dw Route19EndBattleText5 ; 0x5e91 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_4
+ dw Route19BattleText5 ; TextBeforeBattle
+ dw Route19AfterBattleText5 ; TextAfterBattle
+ dw Route19EndBattleText5 ; TextEndBattle
+ dw Route19EndBattleText5 ; TextEndBattle
Route19TrainerHeader5: ; 55daf (15:5daf)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_5
db ($4 << 4) ; trainer's view range
- dw wd7e5 ; flag's byte
- dw Route19BattleText6 ; 0x5e9b TextBeforeBattle
- dw Route19AfterBattleText6 ; 0x5ea5 TextAfterBattle
- dw Route19EndBattleText6 ; 0x5ea0 TextEndBattle
- dw Route19EndBattleText6 ; 0x5ea0 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_5
+ dw Route19BattleText6 ; TextBeforeBattle
+ dw Route19AfterBattleText6 ; TextAfterBattle
+ dw Route19EndBattleText6 ; TextEndBattle
+ dw Route19EndBattleText6 ; TextEndBattle
Route19TrainerHeader6: ; 55dbb (15:5dbb)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_6
db ($3 << 4) ; trainer's view range
- dw wd7e5 ; flag's byte
- dw Route19BattleText7 ; 0x5eaa TextBeforeBattle
- dw Route19AfterBattleText7 ; 0x5eb4 TextAfterBattle
- dw Route19EndBattleText7 ; 0x5eaf TextEndBattle
- dw Route19EndBattleText7 ; 0x5eaf TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_6
+ dw Route19BattleText7 ; TextBeforeBattle
+ dw Route19AfterBattleText7 ; TextAfterBattle
+ dw Route19EndBattleText7 ; TextEndBattle
+ dw Route19EndBattleText7 ; TextEndBattle
Route19TrainerHeader7: ; 55dc7 (15:5dc7)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_7, 1
db ($4 << 4) ; trainer's view range
- dw wd7e5 ; flag's byte
- dw Route19BattleText8 ; 0x5eb9 TextBeforeBattle
- dw Route19AfterBattleText8 ; 0x5ec3 TextAfterBattle
- dw Route19EndBattleText8 ; 0x5ebe TextEndBattle
- dw Route19EndBattleText8 ; 0x5ebe TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_7, 1
+ dw Route19BattleText8 ; TextBeforeBattle
+ dw Route19AfterBattleText8 ; TextAfterBattle
+ dw Route19EndBattleText8 ; TextEndBattle
+ dw Route19EndBattleText8 ; TextEndBattle
Route19TrainerHeader8: ; 55dd3 (15:5dd3)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_8, 1
db ($4 << 4) ; trainer's view range
- dw wd7e5 ; flag's byte
- dw Route19BattleText9 ; 0x5ec8 TextBeforeBattle
- dw Route19AfterBattleText9 ; 0x5ed2 TextAfterBattle
- dw Route19EndBattleText9 ; 0x5ecd TextEndBattle
- dw Route19EndBattleText9 ; 0x5ecd TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_8, 1
+ dw Route19BattleText9 ; TextBeforeBattle
+ dw Route19AfterBattleText9 ; TextAfterBattle
+ dw Route19EndBattleText9 ; TextEndBattle
+ dw Route19EndBattleText9 ; TextEndBattle
Route19TrainerHeader9: ; 55ddf (15:5ddf)
- db $a ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_9, 1
db ($4 << 4) ; trainer's view range
- dw wd7e5 ; flag's byte
- dw Route19BattleText10 ; 0x5ed7 TextBeforeBattle
- dw Route19AfterBattleText10 ; 0x5ee1 TextAfterBattle
- dw Route19EndBattleText10 ; 0x5edc TextEndBattle
- dw Route19EndBattleText10 ; 0x5edc TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_9, 1
+ dw Route19BattleText10 ; TextBeforeBattle
+ dw Route19AfterBattleText10 ; TextAfterBattle
+ dw Route19EndBattleText10 ; TextEndBattle
+ dw Route19EndBattleText10 ; TextEndBattle
db $ff
Route19Text1: ; 55dec (15:5dec)
- db $08 ; asm
+ TX_ASM
ld hl, Route19TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
Route19Text2: ; 55df6 (15:5df6)
- db $08 ; asm
+ TX_ASM
ld hl, Route19TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
Route19Text3: ; 55e00 (15:5e00)
- db $08 ; asm
+ TX_ASM
ld hl, Route19TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
Route19Text4: ; 55e0a (15:5e0a)
- db $08 ; asm
+ TX_ASM
ld hl, Route19TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
Route19Text5: ; 55e14 (15:5e14)
- db $08 ; asm
+ TX_ASM
ld hl, Route19TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
Route19Text6: ; 55e1e (15:5e1e)
- db $08 ; asm
+ TX_ASM
ld hl, Route19TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
Route19Text7: ; 55e28 (15:5e28)
- db $08 ; asm
+ TX_ASM
ld hl, Route19TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
Route19Text8: ; 55e32 (15:5e32)
- db $08 ; asm
+ TX_ASM
ld hl, Route19TrainerHeader7
call TalkToTrainer
jp TextScriptEnd
Route19Text9: ; 55e3c (15:5e3c)
- db $08 ; asm
+ TX_ASM
ld hl, Route19TrainerHeader8
call TalkToTrainer
jp TextScriptEnd
Route19Text10: ; 55e46 (15:5e46)
- db $08 ; asm
+ TX_ASM
ld hl, Route19TrainerHeader9
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route2.asm b/scripts/route2.asm
index fdc5eb6c..62ef3050 100755
--- a/scripts/route2.asm
+++ b/scripts/route2.asm
@@ -2,8 +2,8 @@ Route2Script: ; 554e3 (15:54e3)
jp EnableAutoTextBoxDrawing
Route2TextPointers: ; 554e6 (15:54e6)
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
dw Route2Text3
dw Route2Text4
diff --git a/scripts/route20.asm b/scripts/route20.asm
index 4ef57e23..ce9e6f23 100755
--- a/scripts/route20.asm
+++ b/scripts/route20.asm
@@ -1,10 +1,8 @@
Route20Script: ; 50ca9 (14:4ca9)
- ld hl, wd7e7
- bit 0, [hl]
- res 0, [hl]
+ CheckAndResetEvent EVENT_IN_SEAFOAM_ISLANDS
call nz, Route20Script_50cc6
call EnableAutoTextBoxDrawing
- ld hl, Route20TrainerHeader0 ; $4d3a
+ ld hl, Route20TrainerHeader0
ld de, Route20ScriptPointers
ld a, [W_ROUTE20CURSCRIPT]
call ExecuteCurMapScriptInTable
@@ -12,15 +10,13 @@ Route20Script: ; 50ca9 (14:4ca9)
ret
Route20Script_50cc6: ; 50cc6 (14:4cc6)
- ld a, [wd880]
- and $3
- cp $3
+ CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
jr z, .asm_50cef
- ld a, $d7
+ ld a, HS_SEAFOAM_ISLANDS_1_BOULDER_1
call Route20Script_50d0c
- ld a, $d8
+ ld a, HS_SEAFOAM_ISLANDS_1_BOULDER_2
call Route20Script_50d0c
- ld hl, .MissableObjectIDs ; $4ce8
+ ld hl, .MissableObjectIDs
.asm_50cdc
ld a, [hli]
cp $ff
@@ -40,9 +36,7 @@ Route20Script_50cc6: ; 50cc6 (14:4cc6)
db $FF
.asm_50cef
- ld a, [wd881]
- and $3
- cp $3
+ CheckBothEventsSet EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE
ret z
ld a, HS_SEAFOAM_ISLANDS_4_BOULDER_1
call Route20Script_50d0c
@@ -55,11 +49,11 @@ Route20Script_50cc6: ; 50cc6 (14:4cc6)
ret
Route20Script_50d0c: ; 50d0c (14:4d0c)
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef_jump ShowObject
Route20Script_50d14: ; 50d14 (14:4d14)
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef_jump HideObject
Route20ScriptPointers: ; 50d1c (14:4d1c)
@@ -83,153 +77,153 @@ Route20TextPointers: ; 50d22 (14:4d22)
Route20TrainerHeaders: ; 50d3a (14:4d3a)
Route20TrainerHeader0: ; 50d3a (14:4d3a)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd7e7 ; flag's byte
- dw Route20BattleText1 ; 0x4e17 TextBeforeBattle
- dw Route20AfterBattleText1 ; 0x4e21 TextAfterBattle
- dw Route20EndBattleText1 ; 0x4e1c TextEndBattle
- dw Route20EndBattleText1 ; 0x4e1c TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_0
+ dw Route20BattleText1 ; TextBeforeBattle
+ dw Route20AfterBattleText1 ; TextAfterBattle
+ dw Route20EndBattleText1 ; TextEndBattle
+ dw Route20EndBattleText1 ; TextEndBattle
Route20TrainerHeader2: ; 50d46 (14:4d46)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd7e7 ; flag's byte
- dw Route20BattleText2 ; 0x4e26 TextBeforeBattle
- dw Route20AfterBattleText2 ; 0x4e30 TextAfterBattle
- dw Route20EndBattleText2 ; 0x4e2b TextEndBattle
- dw Route20EndBattleText2 ; 0x4e2b TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_2
+ dw Route20BattleText2 ; TextBeforeBattle
+ dw Route20AfterBattleText2 ; TextAfterBattle
+ dw Route20EndBattleText2 ; TextEndBattle
+ dw Route20EndBattleText2 ; TextEndBattle
Route20TrainerHeader3: ; 50d52 (14:4d52)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_3
db ($2 << 4) ; trainer's view range
- dw wd7e7 ; flag's byte
- dw Route20BattleText3 ; 0x4e35 TextBeforeBattle
- dw Route20AfterBattleText3 ; 0x4e3f TextAfterBattle
- dw Route20EndBattleText3 ; 0x4e3a TextEndBattle
- dw Route20EndBattleText3 ; 0x4e3a TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_3
+ dw Route20BattleText3 ; TextBeforeBattle
+ dw Route20AfterBattleText3 ; TextAfterBattle
+ dw Route20EndBattleText3 ; TextEndBattle
+ dw Route20EndBattleText3 ; TextEndBattle
Route20TrainerHeader4: ; 50d5e (14:4d5e)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_4
db ($4 << 4) ; trainer's view range
- dw wd7e7 ; flag's byte
- dw Route20BattleText4 ; 0x4e44 TextBeforeBattle
- dw Route20AfterBattleText4 ; 0x4e4e TextAfterBattle
- dw Route20EndBattleText4 ; 0x4e49 TextEndBattle
- dw Route20EndBattleText4 ; 0x4e49 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_4
+ dw Route20BattleText4 ; TextBeforeBattle
+ dw Route20AfterBattleText4 ; TextAfterBattle
+ dw Route20EndBattleText4 ; TextEndBattle
+ dw Route20EndBattleText4 ; TextEndBattle
Route20TrainerHeader5: ; 50d6a (14:4d6a)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_5
db ($3 << 4) ; trainer's view range
- dw wd7e7 ; flag's byte
- dw Route20BattleText5 ; 0x4e53 TextBeforeBattle
- dw Route20AfterBattleText5 ; 0x4e5d TextAfterBattle
- dw Route20EndBattleText5 ; 0x4e58 TextEndBattle
- dw Route20EndBattleText5 ; 0x4e58 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_5
+ dw Route20BattleText5 ; TextBeforeBattle
+ dw Route20AfterBattleText5 ; TextAfterBattle
+ dw Route20EndBattleText5 ; TextEndBattle
+ dw Route20EndBattleText5 ; TextEndBattle
Route20TrainerHeader6: ; 50d76 (14:4d76)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_6
db ($4 << 4) ; trainer's view range
- dw wd7e7 ; flag's byte
- dw Route20BattleText6 ; 0x4e62 TextBeforeBattle
- dw Route20AfterBattleText6 ; 0x4e6c TextAfterBattle
- dw Route20EndBattleText6 ; 0x4e67 TextEndBattle
- dw Route20EndBattleText6 ; 0x4e67 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_6
+ dw Route20BattleText6 ; TextBeforeBattle
+ dw Route20AfterBattleText6 ; TextAfterBattle
+ dw Route20EndBattleText6 ; TextEndBattle
+ dw Route20EndBattleText6 ; TextEndBattle
Route20TrainerHeader7: ; 50d82 (14:4d82)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_7
db ($2 << 4) ; trainer's view range
- dw wd7e7 ; flag's byte
- dw Route20BattleText7 ; 0x4e71 TextBeforeBattle
- dw Route20AfterBattleText7 ; 0x4e7b TextAfterBattle
- dw Route20EndBattleText7 ; 0x4e76 TextEndBattle
- dw Route20EndBattleText7 ; 0x4e76 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_7
+ dw Route20BattleText7 ; TextBeforeBattle
+ dw Route20AfterBattleText7 ; TextAfterBattle
+ dw Route20EndBattleText7 ; TextEndBattle
+ dw Route20EndBattleText7 ; TextEndBattle
Route20TrainerHeader8: ; 50d8e (14:4d8e)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_8, 1
db ($4 << 4) ; trainer's view range
- dw wd7e7 ; flag's byte
- dw Route20BattleText8 ; 0x4e80 TextBeforeBattle
- dw Route20AfterBattleText8 ; 0x4e8a TextAfterBattle
- dw Route20EndBattleText8 ; 0x4e85 TextEndBattle
- dw Route20EndBattleText8 ; 0x4e85 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_8, 1
+ dw Route20BattleText8 ; TextBeforeBattle
+ dw Route20AfterBattleText8 ; TextAfterBattle
+ dw Route20EndBattleText8 ; TextEndBattle
+ dw Route20EndBattleText8 ; TextEndBattle
Route20TrainerHeader9: ; 50d9a (14:4d9a)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_9, 1
db ($3 << 4) ; trainer's view range
- dw wd7e7 ; flag's byte
- dw Route20BattleText9 ; 0x4e8f TextBeforeBattle
- dw Route20AfterBattleText9 ; 0x4e99 TextAfterBattle
- dw Route20EndBattleText9 ; 0x4e94 TextEndBattle
- dw Route20EndBattleText9 ; 0x4e94 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_9, 1
+ dw Route20BattleText9 ; TextBeforeBattle
+ dw Route20AfterBattleText9 ; TextAfterBattle
+ dw Route20EndBattleText9 ; TextEndBattle
+ dw Route20EndBattleText9 ; TextEndBattle
Route20TrainerHeader10: ; 50da6 (14:4da6)
- db $a ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_10, 1
db ($4 << 4) ; trainer's view range
- dw wd7e7 ; flag's byte
- dw Route20BattleText10 ; 0x4e9e TextBeforeBattle
- dw Route20AfterBattleText10 ; 0x4ea8 TextAfterBattle
- dw Route20EndBattleText10 ; 0x4ea3 TextEndBattle
- dw Route20EndBattleText10 ; 0x4ea3 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_10, 1
+ dw Route20BattleText10 ; TextBeforeBattle
+ dw Route20AfterBattleText10 ; TextAfterBattle
+ dw Route20EndBattleText10 ; TextEndBattle
+ dw Route20EndBattleText10 ; TextEndBattle
db $ff
Route20Text1: ; 50db3 (14:4db3)
- db $08 ; asm
+ TX_ASM
ld hl, Route20TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
Route20Text2: ; 50dbd (14:4dbd)
- db $08 ; asm
+ TX_ASM
ld hl, Route20TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
Route20Text3: ; 50dc7 (14:4dc7)
- db $08 ; asm
+ TX_ASM
ld hl, Route20TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
Route20Text4: ; 50dd1 (14:4dd1)
- db $08 ; asm
+ TX_ASM
ld hl, Route20TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
Route20Text5: ; 50ddb (14:4ddb)
- db $08 ; asm
+ TX_ASM
ld hl, Route20TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
Route20Text6: ; 50de5 (14:4de5)
- db $08 ; asm
+ TX_ASM
ld hl, Route20TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
Route20Text7: ; 50def (14:4def)
- db $08 ; asm
+ TX_ASM
ld hl, Route20TrainerHeader7
call TalkToTrainer
jp TextScriptEnd
Route20Text8: ; 50df9 (14:4df9)
- db $08 ; asm
+ TX_ASM
ld hl, Route20TrainerHeader8
call TalkToTrainer
jp TextScriptEnd
Route20Text9: ; 50e03 (14:4e03)
- db $08 ; asm
+ TX_ASM
ld hl, Route20TrainerHeader9
call TalkToTrainer
jp TextScriptEnd
Route20Text10: ; 50e0d (14:4e0d)
- db $08 ; asm
+ TX_ASM
ld hl, Route20TrainerHeader10
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route21.asm b/scripts/route21.asm
index de2046dc..4c8087fd 100755
--- a/scripts/route21.asm
+++ b/scripts/route21.asm
@@ -25,138 +25,138 @@ Route21TextPointers: ; 55f04 (15:5f04)
Route21TrainerHeaders: ; 55f16 (15:5f16)
Route21TrainerHeader0: ; 55f16 (15:5f16)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_0
db ($0 << 4) ; trainer's view range
- dw wd7e9 ; flag's byte
- dw Route21BattleText1 ; 0x5fdd TextBeforeBattle
- dw Route21AfterBattleText1 ; 0x5fe7 TextAfterBattle
- dw Route21EndBattleText1 ; 0x5fe2 TextEndBattle
- dw Route21EndBattleText1 ; 0x5fe2 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_0
+ dw Route21BattleText1 ; TextBeforeBattle
+ dw Route21AfterBattleText1 ; TextAfterBattle
+ dw Route21EndBattleText1 ; TextEndBattle
+ dw Route21EndBattleText1 ; TextEndBattle
Route21TrainerHeader1: ; 55f22 (15:5f22)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_1
db ($0 << 4) ; trainer's view range
- dw wd7e9 ; flag's byte
- dw Route21BattleText2 ; 0x5fec TextBeforeBattle
- dw Route21AfterBattleText2 ; 0x5ff6 TextAfterBattle
- dw Route21EndBattleText2 ; 0x5ff1 TextEndBattle
- dw Route21EndBattleText2 ; 0x5ff1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_1
+ dw Route21BattleText2 ; TextBeforeBattle
+ dw Route21AfterBattleText2 ; TextAfterBattle
+ dw Route21EndBattleText2 ; TextEndBattle
+ dw Route21EndBattleText2 ; TextEndBattle
Route21TrainerHeader2: ; 55f2e (15:5f2e)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd7e9 ; flag's byte
- dw Route21BattleText3 ; 0x5ffb TextBeforeBattle
- dw Route21AfterBattleText3 ; 0x6005 TextAfterBattle
- dw Route21EndBattleText3 ; 0x6000 TextEndBattle
- dw Route21EndBattleText3 ; 0x6000 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_2
+ dw Route21BattleText3 ; TextBeforeBattle
+ dw Route21AfterBattleText3 ; TextAfterBattle
+ dw Route21EndBattleText3 ; TextEndBattle
+ dw Route21EndBattleText3 ; TextEndBattle
Route21TrainerHeader3: ; 55f3a (15:5f3a)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_3
db ($4 << 4) ; trainer's view range
- dw wd7e9 ; flag's byte
- dw Route21BattleText4 ; 0x600a TextBeforeBattle
- dw Route21AfterBattleText4 ; 0x6014 TextAfterBattle
- dw Route21EndBattleText4 ; 0x600f TextEndBattle
- dw Route21EndBattleText4 ; 0x600f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_3
+ dw Route21BattleText4 ; TextBeforeBattle
+ dw Route21AfterBattleText4 ; TextAfterBattle
+ dw Route21EndBattleText4 ; TextEndBattle
+ dw Route21EndBattleText4 ; TextEndBattle
Route21TrainerHeader4: ; 55f46 (15:5f46)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_4
db ($4 << 4) ; trainer's view range
- dw wd7e9 ; flag's byte
- dw Route21BattleText5 ; 0x6019 TextBeforeBattle
- dw Route21AfterBattleText5 ; 0x6023 TextAfterBattle
- dw Route21EndBattleText5 ; 0x601e TextEndBattle
- dw Route21EndBattleText5 ; 0x601e TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_4
+ dw Route21BattleText5 ; TextBeforeBattle
+ dw Route21AfterBattleText5 ; TextAfterBattle
+ dw Route21EndBattleText5 ; TextEndBattle
+ dw Route21EndBattleText5 ; TextEndBattle
Route21TrainerHeader5: ; 55f52 (15:5f52)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_5
db ($4 << 4) ; trainer's view range
- dw wd7e9 ; flag's byte
- dw Route21BattleText6 ; 0x6028 TextBeforeBattle
- dw Route21AfterBattleText6 ; 0x6032 TextAfterBattle
- dw Route21EndBattleText6 ; 0x602d TextEndBattle
- dw Route21EndBattleText6 ; 0x602d TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_5
+ dw Route21BattleText6 ; TextBeforeBattle
+ dw Route21AfterBattleText6 ; TextAfterBattle
+ dw Route21EndBattleText6 ; TextEndBattle
+ dw Route21EndBattleText6 ; TextEndBattle
Route21TrainerHeader6: ; 55f5e (15:5f5e)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_6
db ($3 << 4) ; trainer's view range
- dw wd7e9 ; flag's byte
- dw Route21BattleText7 ; 0x6037 TextBeforeBattle
- dw Route21AfterBattleText7 ; 0x6041 TextAfterBattle
- dw Route21EndBattleText7 ; 0x603c TextEndBattle
- dw Route21EndBattleText7 ; 0x603c TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_6
+ dw Route21BattleText7 ; TextBeforeBattle
+ dw Route21AfterBattleText7 ; TextAfterBattle
+ dw Route21EndBattleText7 ; TextEndBattle
+ dw Route21EndBattleText7 ; TextEndBattle
Route21TrainerHeader7: ; 55f6a (15:5f6a)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_7, 1
db ($0 << 4) ; trainer's view range
- dw wd7e9 ; flag's byte
- dw Route21BattleText8 ; 0x6046 TextBeforeBattle
- dw Route21AfterBattleText8 ; 0x6050 TextAfterBattle
- dw Route21EndBattleText8 ; 0x604b TextEndBattle
- dw Route21EndBattleText8 ; 0x604b TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_7, 1
+ dw Route21BattleText8 ; TextBeforeBattle
+ dw Route21AfterBattleText8 ; TextAfterBattle
+ dw Route21EndBattleText8 ; TextEndBattle
+ dw Route21EndBattleText8 ; TextEndBattle
Route21TrainerHeader8: ; 55f76 (15:5f76)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_8, 1
db ($0 << 4) ; trainer's view range
- dw wd7e9 ; flag's byte
- dw Route21BattleText9 ; 0x6055 TextBeforeBattle
- dw Route21AfterBattleText9 ; 0x605f TextAfterBattle
- dw Route21EndBattleText9 ; 0x605a TextEndBattle
- dw Route21EndBattleText9 ; 0x605a TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_8, 1
+ dw Route21BattleText9 ; TextBeforeBattle
+ dw Route21AfterBattleText9 ; TextAfterBattle
+ dw Route21EndBattleText9 ; TextEndBattle
+ dw Route21EndBattleText9 ; TextEndBattle
db $ff
Route21Text1: ; 55f83 (15:5f83)
- db $08 ; asm
+ TX_ASM
ld hl, Route21TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
Route21Text2: ; 55f8d (15:5f8d)
- db $08 ; asm
+ TX_ASM
ld hl, Route21TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
Route21Text3: ; 55f97 (15:5f97)
- db $08 ; asm
+ TX_ASM
ld hl, Route21TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
Route21Text4: ; 55fa1 (15:5fa1)
- db $08 ; asm
+ TX_ASM
ld hl, Route21TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
Route21Text5: ; 55fab (15:5fab)
- db $08 ; asm
+ TX_ASM
ld hl, Route21TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
Route21Text6: ; 55fb5 (15:5fb5)
- db $08 ; asm
+ TX_ASM
ld hl, Route21TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
Route21Text7: ; 55fbf (15:5fbf)
- db $08 ; asm
+ TX_ASM
ld hl, Route21TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
Route21Text8: ; 55fc9 (15:5fc9)
- db $08 ; asm
+ TX_ASM
ld hl, Route21TrainerHeader7
call TalkToTrainer
jp TextScriptEnd
Route21Text9: ; 55fd3 (15:5fd3)
- db $08 ; asm
+ TX_ASM
ld hl, Route21TrainerHeader8
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route22.asm b/scripts/route22.asm
index 9181380a..1244f0ff 100755
--- a/scripts/route22.asm
+++ b/scripts/route22.asm
@@ -22,7 +22,7 @@ Route22Script7: ; 50ed5 (14:4ed5)
ret
Route22Script_50ed6: ; 50ed6 (14:4ed6)
- ld a, [W_RIVALSTARTER] ; wd715
+ ld a, [W_RIVALSTARTER]
ld b, a
.asm_50eda
ld a, [hli]
@@ -32,43 +32,45 @@ Route22Script_50ed6: ; 50ed6 (14:4ed6)
jr .asm_50eda
.asm_50ee1
ld a, [hl]
- ld [W_TRAINERNO], a ; wd05d
+ ld [W_TRAINERNO], a
ret
Route22MoveRivalSprite: ; 50ee6 (14:4ee6)
- ld de, Route22RivalMovementData ; $4efb
+ ld de, Route22RivalMovementData
ld a, [wcf0d]
cp $1
jr z, .asm_50ef1
inc de
.asm_50ef1
call MoveSprite
- ld a, $c
- ld [$ff8d], a
+ ld a, SPRITE_FACING_RIGHT
+ ld [hSpriteFacingDirection], a
jp SetSpriteFacingDirectionAndDelay
Route22RivalMovementData: ; 50efb (14:4efb)
- db $C0,$C0,$C0,$C0,$FF ; move right 4 times
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
Route22Script0: ; 50f00 (14:4f00)
- ld a, [wd7eb]
- bit 7, a
+ CheckEvent EVENT_ROUTE22_RIVAL_WANTS_BATTLE
ret z
- ld hl, .Route22RivalBattleCoords ; $4f2d
+ ld hl, .Route22RivalBattleCoords
call ArePlayerCoordsInArray
ret nc
- ld a, [wWhichTrade]
+ ld a, [wCoordIndex]
ld [wcf0d], a
xor a
ld [hJoyHeld], a
ld a, $f0
ld [wJoyIgnore], a
- ld a, $2
- ld [wd528], a
- ld a, [wd7eb]
- bit 0, a ; is this the rival battle at the beginning of the game?
- jr nz, .firstRivalBattle ; 0x50f25 $b
- bit 1, a ; is this the rival at the end of the game?
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
+ CheckEvent EVENT_1ST_ROUTE22_RIVAL_BATTLE
+ jr nz, .firstRivalBattle
+ CheckEventReuseA EVENT_2ND_ROUTE22_RIVAL_BATTLE ; is this the rival at the end of the game?
jp nz, Route22Script_5104e
ret
@@ -79,22 +81,22 @@ Route22Script0: ; 50f00 (14:4f00)
.firstRivalBattle
ld a, $1
- ld [wcd4f], a
- xor a
- ld [wcd50], a
+ ld [wEmotionBubbleSpriteIndex], a
+ xor a ; EXCLAMATION_BUBBLE
+ ld [wWhichEmotionBubble], a
predef EmotionBubble
ld a, [wWalkBikeSurfState]
and a
- jr z, .asm_50f4e ; 0x50f44 $8
+ jr z, .asm_50f4e
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
.asm_50f4e
ld c, BANK(Music_MeetRival)
ld a, MUSIC_MEET_RIVAL
call PlayMusic
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call Route22MoveRivalSprite
ld a, $1
ld [W_ROUTE22CURSCRIPT], a
@@ -106,22 +108,22 @@ Route22Script1: ; 50f62 (14:4f62)
ret nz
ld a, [wcf0d]
cp $1
- jr nz, .asm_50f78 ; 0x50f6d $9
- ld a, $4
- ld [wd528], a
- ld a, $4
- jr .asm_50f7a ; 0x50f76 $2
+ jr nz, .asm_50f78
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_UP
+ jr .asm_50f7a
.asm_50f78
- ld a, $c
+ ld a, SPRITE_FACING_RIGHT
.asm_50f7a
- ld [$ff8d], a
+ ld [hSpriteFacingDirection], a
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call SetSpriteFacingDirectionAndDelay
xor a
ld [wJoyIgnore], a
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld hl, wd72d
set 6, [hl]
@@ -129,9 +131,9 @@ Route22Script1: ; 50f62 (14:4f62)
ld hl, Route22RivalDefeatedText1
ld de, Route22Text_511bc
call SaveEndBattleTextPointers
- ld a, SONY1 + $c8
+ ld a, OPP_SONY1
ld [W_CUROPPONENT], a
- ld hl, StarterMons_50faf ; $4faf
+ ld hl, StarterMons_50faf
call Route22Script_50ed6
ld a, $2
ld [W_ROUTE22CURSCRIPT], a
@@ -148,33 +150,32 @@ Route22Script2: ; 50fb5 (14:4fb5)
cp $ff
jp z, Route22Script_50ece
ld a, [wSpriteStateData1 + 9]
- and a
- jr nz, .asm_50fc7 ; 0x50fc1 $4
- ld a, $4
- jr .asm_50fc9 ; 0x50fc5 $2
-.asm_50fc7
- ld a, $c
-.asm_50fc9
- ld [$ff8d], a
+ and a ; cp SPRITE_FACING_DOWN
+ jr nz, .notDown
+ ld a, SPRITE_FACING_UP
+ jr .done
+.notDown
+ ld a, SPRITE_FACING_RIGHT
+.done
+ ld [hSpriteFacingDirection], a
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call SetSpriteFacingDirectionAndDelay
ld a, $f0
ld [wJoyIgnore], a
- ld hl, wd7eb
- set 5, [hl]
+ SetEvent EVENT_BEAT_ROUTE22_RIVAL_1ST_BATTLE
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
callba Music_RivalAlternateStart
ld a, [wcf0d]
cp $1
- jr nz, .asm_50fff ; 0x50ff8 $5
+ jr nz, .asm_50fff
call Route22Script_51008
- jr .asm_51002 ; 0x50ffd $3
+ jr .asm_51002
.asm_50fff
call Route22Script_5100d
.asm_51002
@@ -183,21 +184,38 @@ Route22Script2: ; 50fb5 (14:4fb5)
ret
Route22Script_51008: ; 51008 (14:5008)
- ld de, Route22RivalExitMovementData1 ; $5017
- jr asm_51010
+ ld de, Route22RivalExitMovementData1
+ jr Route22MoveRival1
Route22Script_5100d: ; 5100d (14:500d)
- ld de, Route22RivalExitMovementData2 ; $501f
-asm_51010
+ ld de, Route22RivalExitMovementData2
+Route22MoveRival1: ; 51010 (14:5010)
ld a, $1
- ld [H_SPRITEHEIGHT], a
+ ld [H_SPRITEINDEX], a
jp MoveSprite
Route22RivalExitMovementData1: ; 51017 (14:5017)
- db $C0,$C0,$00,$00,$00,$00,$00,$FF
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
Route22RivalExitMovementData2: ; 5101f (14:501f)
- db $40,$C0,$C0,$C0,$00,$00,$00,$00,$00,$00,$FF
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
Route22Script3: ; 5102a (14:502a)
ld a, [wd730]
@@ -206,35 +224,33 @@ Route22Script3: ; 5102a (14:502a)
xor a
ld [wJoyIgnore], a
ld a, HS_ROUTE_22_RIVAL_1
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
call PlayDefaultMusic
- ld hl, wd7eb
- res 0, [hl]
- res 7, [hl]
+ ResetEvents EVENT_1ST_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
ld a, $0
ld [W_ROUTE22CURSCRIPT], a
ret
Route22Script_5104e: ; 5104e (14:504e)
ld a, $2
- ld [wcd4f], a
- xor a
- ld [wcd50], a
+ ld [wEmotionBubbleSpriteIndex], a
+ xor a ; EXCLAMATION_BUBBLE
+ ld [wWhichEmotionBubble], a
predef EmotionBubble
ld a, [wWalkBikeSurfState]
and a
jr z, .skipYVisibilityTesta
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
.skipYVisibilityTesta
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
callba Music_RivalAlternateTempo
ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
call Route22MoveRivalSprite
ld a, $4
ld [W_ROUTE22CURSCRIPT], a
@@ -245,35 +261,35 @@ Route22Script4: ; 51087 (14:5087)
bit 0, a
ret nz
ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
ld a, [wcf0d]
cp $1
jr nz, .asm_510a1
- ld a, $4
- ld [wd528], a
- ld a, $4
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_UP
jr .asm_510a8
.asm_510a1
- ld a, $2
- ld [wd528], a
- ld a, $c
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_RIGHT
.asm_510a8
- ld [$ff8d], a
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
xor a
ld [wJoyIgnore], a
ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld hl, wd72d
set 6, [hl]
set 7, [hl]
- ld hl, Route22RivalDefeatedText2 ; $51cb
- ld de, Route22Text_511d0 ; $51d0
+ ld hl, Route22RivalDefeatedText2
+ ld de, Route22Text_511d0
call SaveEndBattleTextPointers
- ld a, SONY2 + $c8
- ld [W_CUROPPONENT], a ; wd059
- ld hl, StarterMons_510d9 ; $50d9
+ ld a, OPP_SONY2
+ ld [W_CUROPPONENT], a
+ ld hl, StarterMons_510d9
call Route22Script_50ed6
ld a, $5
ld [W_ROUTE22CURSCRIPT], a
@@ -285,34 +301,33 @@ StarterMons_510d9: ; 510d9 (14:50d9)
db STARTER1,$0c
Route22Script5: ; 510df (14:50df)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, Route22Script_50ece
ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
ld a, [wcf0d]
cp $1
jr nz, .asm_510fb
- ld a, $4
- ld [wd528], a
- ld a, $4
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_UP
jr .asm_51102
.asm_510fb
- ld a, $2
- ld [wd528], a
- ld a, $c
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_RIGHT
.asm_51102
- ld [$ff8d], a
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, $f0
ld [wJoyIgnore], a
- ld hl, wd7eb
- set 6, [hl]
+ SetEvent EVENT_BEAT_ROUTE22_RIVAL_2ND_BATTLE
ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
callba Music_RivalAlternateStartAndTempo
ld a, [wcf0d]
@@ -328,21 +343,24 @@ Route22Script5: ; 510df (14:50df)
ret
Route22Script_5113d: ; 5113d (14:513d)
- ld de, MovementData_5114c ; $514c
- jr asm_51145
+ ld de, MovementData_5114c
+ jr Route22MoveRival2
Route22Script_51142: ; 51142 (14:5142)
- ld de, MovementData_5114d ; $514d
-asm_51145: ; 51145 (14:5145)
+ ld de, MovementData_5114d
+Route22MoveRival2: ; 51145 (14:5145)
ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
jp MoveSprite
MovementData_5114c: ; 5114c (14:514c)
- db $80 ; left
+ db NPC_MOVEMENT_LEFT
MovementData_5114d: ; 5114d (14:514d)
- db $80,$80,$80,$FF ; left x3
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_LEFT
+ db $FF
Route22Script6: ; 51151 (14:5151)
ld a, [wd730]
@@ -351,12 +369,10 @@ Route22Script6: ; 51151 (14:5151)
xor a
ld [wJoyIgnore], a
ld a, HS_ROUTE_22_RIVAL_2
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
call PlayDefaultMusic
- ld hl, wd7eb
- res 1, [hl]
- res 7, [hl]
+ ResetEvents EVENT_2ND_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
ld a, $7
ld [W_ROUTE22CURSCRIPT], a
ret
@@ -367,31 +383,29 @@ Route22TextPointers: ; 51175 (14:5175)
dw Route22FrontGateText
Route22Text1: ; 5117b (14:517b)
- db $08 ; asm
- ld a, [wd7eb]
- bit 5, a
- jr z, .asm_a88cf ; 0x51181
+ TX_ASM
+ CheckEvent EVENT_BEAT_ROUTE22_RIVAL_1ST_BATTLE
+ jr z, .asm_5118b
ld hl, Route22RivalAfterBattleText1
call PrintText
- jr .asm_48088 ; 0x51189
-.asm_a88cf ; 0x5118b
+ jr .asm_51191
+.asm_5118b
ld hl, Route22RivalBeforeBattleText1
call PrintText
-.asm_48088 ; 0x51191
+.asm_51191
jp TextScriptEnd
Route22Text2: ; 51194 (14:5194)
- db $08 ; asm
- ld a, [wd7eb]
- bit 6, a
- jr z, .asm_58c0a ; 0x5119a
+ TX_ASM
+ CheckEvent EVENT_BEAT_ROUTE22_RIVAL_2ND_BATTLE
+ jr z, .asm_511a4
ld hl, Route22RivalAfterBattleText2
call PrintText
- jr .asm_673ee ; 0x511a2
-.asm_58c0a ; 0x511a4
+ jr .asm_511aa
+.asm_511a4
ld hl, Route22RivalBeforeBattleText2
call PrintText
-.asm_673ee ; 0x511aa
+.asm_511aa
jp TextScriptEnd
Route22RivalBeforeBattleText1: ; 511ad (14:51ad)
diff --git a/scripts/route22gate.asm b/scripts/route22gate.asm
index 6618d6a2..95546a99 100755
--- a/scripts/route22gate.asm
+++ b/scripts/route22gate.asm
@@ -6,7 +6,7 @@ Route22GateScript: ; 1e683 (7:6683)
ld a, [W_YCOORD]
cp $4
ld a, ROUTE_23
- jr c, .asm_1e69a ; 0x1e696 $2
+ jr c, .asm_1e69a
ld a, ROUTE_22
.asm_1e69a
ld [wLastMap], a
@@ -24,7 +24,7 @@ Route22GateScript0: ; 1e6a4 (7:66a4)
xor a
ld [hJoyHeld], a
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
Route22GateScriptCoords: ; 1e6b5 (7:66b5)
@@ -35,7 +35,7 @@ Route22GateScriptCoords: ; 1e6b5 (7:66b5)
Route22GateScript_1e6ba: ; 1e6ba (7:66ba)
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
- ld a, $80
+ ld a, D_DOWN
ld [wSimulatedJoypadStatesEnd], a
ld [wSpriteStateData1 + 9], a
ld [wJoyIgnore], a
@@ -57,30 +57,30 @@ Route22GateTextPointers: ; 1e6df (7:66df)
dw Route22GateText1
Route22GateText1: ; 1e6e1 (7:66e1)
- db $8
+ TX_ASM
ld a, [W_OBTAINEDBADGES]
bit 0, a
- jr nz, .asm_8a809 ; 0x1e6e7 $d
+ jr nz, .asm_1e6f6
ld hl, Route22GateText_1e704
call PrintText
call Route22GateScript_1e6ba
ld a, $1
- jr .asm_20f7e ; 0x1e6f4 $8
-.asm_8a809 ; 0x1e6f6
+ jr .asm_1e6fe
+.asm_1e6f6
ld hl, Route22GateText_1e71a
call PrintText
ld a, $2
-.asm_20f7e ; 0x1e6fe
+.asm_1e6fe
ld [W_ROUTE22GATECURSCRIPT], a
jp TextScriptEnd
Route22GateText_1e704: ; 1e704 (7:6704)
- TX_FAR _Route22GateText_1e704 ; 0x8cfbb
- db $8
- ld a, (SFX_02_51 - SFX_Headers_02) / 3
+ TX_FAR _Route22GateText_1e704
+ TX_ASM
+ ld a, SFX_DENIED
call PlaySoundWaitForCurrent
call WaitForSoundToFinish
- ld hl, Route22GateText_1e715 ; $6715
+ ld hl, Route22GateText_1e715
ret
Route22GateText_1e715: ; 1e715 (7:6715)
@@ -88,5 +88,5 @@ Route22GateText_1e715: ; 1e715 (7:6715)
db "@"
Route22GateText_1e71a: ; 1e71a (7:671a)
- TX_FAR _Route22GateText_1e71a ; 0x8d03e
+ TX_FAR _Route22GateText_1e71a
db $0B, "@"
diff --git a/scripts/route23.asm b/scripts/route23.asm
index 6d3849f4..35f1b9cb 100755
--- a/scripts/route23.asm
+++ b/scripts/route23.asm
@@ -10,17 +10,13 @@ Route23Script_511e9: ; 511e9 (14:51e9)
bit 6, [hl]
res 6, [hl]
ret z
- ld hl, wd7ee
- res 0, [hl]
- res 7, [hl]
- ld hl, wd813
- res 0, [hl]
- res 6, [hl]
+ ResetEvents EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1, EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH2
+ ResetEvents EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH1, EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH2
ld a, HS_VICTORY_ROAD_3_BOULDER
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
ld a, HS_VICTORY_ROAD_2_BOULDER
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef_jump HideObject
Route23ScriptPointers: ; 51213 (14:5213)
@@ -29,11 +25,11 @@ Route23ScriptPointers: ; 51213 (14:5213)
dw Route23Script2
Route23Script0: ; 51219 (14:5219)
- ld hl, YCoordsData_51255 ; $5255
+ ld hl, YCoordsData_51255
ld a, [W_YCOORD]
ld b, a
ld e, $0
- ld c, $7
+ EventFlagBit c, EVENT_PASSED_EARTHBADGE_CHECK + 1, EVENT_PASSED_CASCADEBADGE_CHECK
.asm_51224
ld a, [hli]
cp $ff
@@ -41,19 +37,19 @@ Route23Script0: ; 51219 (14:5219)
inc e
dec c
cp b
- jr nz, .asm_51224 ; 0x5122b $f7
+ jr nz, .asm_51224
cp $23
- jr nz, .asm_51237 ; 0x5122f $6
+ jr nz, .asm_51237
ld a, [W_XCOORD]
cp $e
ret nc
.asm_51237
ld a, e
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
ld a, c
- ld [wWhichTrade], a
- ld b, $2
- ld hl, wd7ed
+ ld [wWhichBadge], a
+ ld b, FLAG_TEST
+ EventFlagAddress hl, EVENT_PASSED_CASCADEBADGE_CHECK
predef FlagActionPredef
ld a, c
and a
@@ -68,22 +64,22 @@ YCoordsData_51255: ; 51255 (14:5255)
db $23,$38,$55,$60,$69,$77,$88,$FF
Route23Script_5125d: ; 5125d (14:525d)
- ld hl, BadgeTextPointers ; $5276
- ld a, [wWhichTrade] ; wWhichTrade
+ ld hl, BadgeTextPointers
+ ld a, [wWhichBadge]
ld c, a
- ld b, $0
+ ld b, 0
add hl, bc
add hl, bc
ld a, [hli]
ld h, [hl]
ld l, a
ld de, wcd6d
-.asm_5126e
+.copyTextLoop
ld a, [hli]
ld [de], a
inc de
- cp $50
- jr nz, .asm_5126e
+ cp "@"
+ jr nz, .copyTextLoop
ret
BadgeTextPointers: ; 51276 (14:5276)
@@ -119,7 +115,7 @@ CascadeBadgeText: ; 512cb (14:52cb)
Route23Script_512d8: ; 512d8 (14:52d8)
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
- ld a, $80
+ ld a, D_DOWN
ld [wSimulatedJoypadStatesEnd], a
xor a
ld [wSpriteStateData1 + 9], a
@@ -146,54 +142,54 @@ Route23TextPointers: ; 512f7 (14:52f7)
dw Route23Text8
Route23Text1: ; 51307 (14:5307)
- db $08 ; asm
- ld a, $6
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_EARTHBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
call Route23Script_51346
jp TextScriptEnd
Route23Text2: ; 51310 (14:5310)
- db $08 ; asm
- ld a, $5
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_VOLCANOBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
call Route23Script_51346
jp TextScriptEnd
Route23Text3: ; 51319 (14:5319)
- db $08 ; asm
- ld a, $4
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_MARSHBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
call Route23Script_51346
jp TextScriptEnd
Route23Text4: ; 51322 (14:5322)
- db $08 ; asm
- ld a, $3
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_SOULBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
call Route23Script_51346
jp TextScriptEnd
Route23Text5: ; 5132b (14:532b)
- db $08 ; asm
- ld a, $2
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_RAINBOWBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
call Route23Script_51346
jp TextScriptEnd
Route23Text6: ; 51334 (14:5334)
- db $08 ; asm
- ld a, $1
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_THUNDERBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
call Route23Script_51346
jp TextScriptEnd
Route23Text7: ; 5133d (14:533d)
- db $8
- ld a, $0
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_CASCADEBADGE_CHECK
call Route23Script_51346
jp TextScriptEnd
Route23Script_51346: ; 51346 (14:5346)
- ld [wWhichTrade], a ; wWhichTrade
+ ld [wWhichBadge], a
call Route23Script_5125d
- ld a, [wWhichTrade] ; wWhichTrade
+ ld a, [wWhichBadge]
inc a
ld c, a
- ld b, $2
+ ld b, FLAG_TEST
ld hl, W_OBTAINEDBADGES
predef FlagActionPredef
ld a, c
@@ -208,10 +204,10 @@ Route23Script_51346: ; 51346 (14:5346)
.asm_5136e
ld hl, VictoryRoadGuardText2
call PrintText
- ld a, [wWhichTrade] ; wWhichTrade
+ ld a, [wWhichBadge]
ld c, a
- ld b, $1
- ld hl, wd7ed
+ ld b, FLAG_SET
+ EventFlagAddress hl, EVENT_PASSED_CASCADEBADGE_CHECK
predef FlagActionPredef
ld a, $2
ld [W_ROUTE23CURSCRIPT], a
@@ -223,8 +219,8 @@ Route23Script_51388: ; 51388 (14:5388)
VictoryRoadGuardText1: ; 5138e (14:538e)
TX_FAR _VictoryRoadGuardText1
- db $08 ; asm
- ld a, (SFX_02_51 - SFX_Headers_02) / 3
+ TX_ASM
+ ld a, SFX_DENIED
call PlaySoundWaitForCurrent
call WaitForSoundToFinish
jp TextScriptEnd
diff --git a/scripts/route24.asm b/scripts/route24.asm
index 6916cbe7..6eba1d35 100755
--- a/scripts/route24.asm
+++ b/scripts/route24.asm
@@ -22,22 +22,19 @@ Route24ScriptPointers: ; 513cb (14:53cb)
dw Route24Script4
Route24Script0: ; 513d5 (14:53d5)
- ld a, [wd7ef]
- bit 0, a
+ CheckEvent EVENT_GOT_NUGGET
jp nz, CheckFightingMapTrainers
- ld hl, CoordsData_5140e ; $540e
+ ld hl, CoordsData_5140e
call ArePlayerCoordsInArray
jp nc, CheckFightingMapTrainers
xor a
ld [hJoyHeld], a
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd7f0
- bit 1, [hl]
- res 1, [hl]
+ CheckAndResetEvent EVENT_NUGGET_REWARD_AVAILABLE
ret z
- ld a, $80
+ ld a, D_DOWN
ld [wSimulatedJoypadStatesEnd], a
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
@@ -61,16 +58,15 @@ Route24Script4: ; 51411 (14:5411)
ret
Route24Script3: ; 51422 (14:5422)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, Route24Script_513c0
call UpdateSprites
ld a, $f0
ld [wJoyIgnore], a
- ld hl, wd7ef
- set 1, [hl]
+ SetEvent EVENT_BEAT_ROUTE24_ROCKET
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [wJoyIgnore], a
@@ -87,79 +83,76 @@ Route24TextPointers: ; 5144b (14:544b)
dw Route24Text5
dw Route24Text6
dw Route24Text7
- dw Predef5CText
+ dw PickUpItemText
Route24TrainerHeaders: ; 5145b (14:545b)
Route24TrainerHeader0: ; 5145b (14:545b)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd7ef ; flag's byte
- dw Route24BattleText1 ; 0x5571 TextBeforeBattle
- dw Route24AfterBattleText1 ; 0x557b TextAfterBattle
- dw Route24EndBattleText1 ; 0x5576 TextEndBattle
- dw Route24EndBattleText1 ; 0x5576 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_0
+ dw Route24BattleText1 ; TextBeforeBattle
+ dw Route24AfterBattleText1 ; TextAfterBattle
+ dw Route24EndBattleText1 ; TextEndBattle
+ dw Route24EndBattleText1 ; TextEndBattle
Route24TrainerHeader2: ; 51467 (14:5467)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_2
db ($1 << 4) ; trainer's view range
- dw wd7ef ; flag's byte
- dw Route24BattleText2 ; 0x5580 TextBeforeBattle
- dw Route24AfterBattleText2 ; 0x558a TextAfterBattle
- dw Route24EndBattleText2 ; 0x5585 TextEndBattle
- dw Route24EndBattleText2 ; 0x5585 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_2
+ dw Route24BattleText2 ; TextBeforeBattle
+ dw Route24AfterBattleText2 ; TextAfterBattle
+ dw Route24EndBattleText2 ; TextEndBattle
+ dw Route24EndBattleText2 ; TextEndBattle
Route24TrainerHeader3: ; 51473 (14:5473)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_3
db ($1 << 4) ; trainer's view range
- dw wd7ef ; flag's byte
- dw Route24BattleText3 ; 0x558f TextBeforeBattle
- dw Route24AfterBattleText3 ; 0x5599 TextAfterBattle
- dw Route24EndBattleText3 ; 0x5594 TextEndBattle
- dw Route24EndBattleText3 ; 0x5594 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_3
+ dw Route24BattleText3 ; TextBeforeBattle
+ dw Route24AfterBattleText3 ; TextAfterBattle
+ dw Route24EndBattleText3 ; TextEndBattle
+ dw Route24EndBattleText3 ; TextEndBattle
Route24TrainerHeader4: ; 5147f (14:547f)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_4
db ($1 << 4) ; trainer's view range
- dw wd7ef ; flag's byte
- dw Route24BattleText4 ; 0x559e TextBeforeBattle
- dw Route24AfterBattleText4 ; 0x55a8 TextAfterBattle
- dw Route24EndBattleText4 ; 0x55a3 TextEndBattle
- dw Route24EndBattleText4 ; 0x55a3 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_4
+ dw Route24BattleText4 ; TextBeforeBattle
+ dw Route24AfterBattleText4 ; TextAfterBattle
+ dw Route24EndBattleText4 ; TextEndBattle
+ dw Route24EndBattleText4 ; TextEndBattle
Route24TrainerHeader5: ; 5148b (14:548b)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_5
db ($1 << 4) ; trainer's view range
- dw wd7ef ; flag's byte
- dw Route24BattleText5 ; 0x55ad TextBeforeBattle
- dw Route24AfterBattleText5 ; 0x55b7 TextAfterBattle
- dw Route24EndBattleText5 ; 0x55b2 TextEndBattle
- dw Route24EndBattleText5 ; 0x55b2 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_5
+ dw Route24BattleText5 ; TextBeforeBattle
+ dw Route24AfterBattleText5 ; TextAfterBattle
+ dw Route24EndBattleText5 ; TextEndBattle
+ dw Route24EndBattleText5 ; TextEndBattle
Route24TrainerHeader6: ; 51497 (14:5497)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_6
db ($1 << 4) ; trainer's view range
- dw wd7ef ; flag's byte
- dw Route24BattleText6 ; 0x55bc TextBeforeBattle
- dw Route24AfterBattleText6 ; 0x55c6 TextAfterBattle
- dw Route24EndBattleText6 ; 0x55c1 TextEndBattle
- dw Route24EndBattleText6 ; 0x55c1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_6
+ dw Route24BattleText6 ; TextBeforeBattle
+ dw Route24AfterBattleText6 ; TextAfterBattle
+ dw Route24EndBattleText6 ; TextEndBattle
+ dw Route24EndBattleText6 ; TextEndBattle
db $ff
Route24Text1: ; 514a4 (14:54a4)
- db $8
- ld hl, wd7f0
- res 1, [hl]
- ld a, [wd7ef]
- bit 0, a
- jr nz, .asm_a03f5 ; 0x514af $48
+ TX_ASM
+ ResetEvent EVENT_NUGGET_REWARD_AVAILABLE
+ CheckEvent EVENT_GOT_NUGGET
+ jr nz, .asm_514f9
ld hl, Route24Text_51510
call PrintText
- ld bc, (NUGGET << 8) | 1
+ lb bc, NUGGET, 1
call GiveItem
jr nc, .BagFull
- ld hl, wd7ef
- set 0, [hl]
+ SetEvent EVENT_GOT_NUGGET
ld hl, Route24Text_5151a
call PrintText
ld hl, Route24Text_51526
@@ -170,7 +163,7 @@ Route24Text1: ; 514a4 (14:54a4)
ld hl, Route24Text_5152b
ld de, Route24Text_5152b
call SaveEndBattleTextPointers
- ld a, [$ff8c]
+ ld a, [hSpriteIndexOrTextID]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
@@ -180,25 +173,24 @@ Route24Text1: ; 514a4 (14:54a4)
ld [W_ROUTE24CURSCRIPT], a
ld [W_CURMAPSCRIPT], a
jp TextScriptEnd
-.asm_a03f5 ; 0x514f9
+.asm_514f9
ld hl, Route24Text_51530
call PrintText
jp TextScriptEnd
.BagFull
ld hl, Route24Text_51521
call PrintText
- ld hl, wd7f0
- set 1, [hl]
+ SetEvent EVENT_NUGGET_REWARD_AVAILABLE
jp TextScriptEnd
Route24Text_51510: ; 51510 (14:5510)
- TX_FAR _Route24Text_51510 ; 0x92721
+ TX_FAR _Route24Text_51510
db $0B
- TX_FAR _Route24Text_51515 ; 0x92755
+ TX_FAR _Route24Text_51515
db "@"
Route24Text_5151a: ; 5151a (14:551a)
- TX_FAR _Route24Text_5151a ; 0x92779
+ TX_FAR _Route24Text_5151a
db $0B, $6, "@"
Route24Text_51521: ; 51521 (14:5521)
@@ -218,37 +210,37 @@ Route24Text_51530: ; 51530 (14:5530)
db "@"
Route24Text2: ; 51535 (14:5535)
- db $08 ; asm
+ TX_ASM
ld hl, Route24TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
Route24Text3: ; 5153f (14:553f)
- db $08 ; asm
+ TX_ASM
ld hl, Route24TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
Route24Text4: ; 51549 (14:5549)
- db $08 ; asm
+ TX_ASM
ld hl, Route24TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
Route24Text5: ; 51553 (14:5553)
- db $08 ; asm
+ TX_ASM
ld hl, Route24TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
Route24Text6: ; 5155d (14:555d)
- db $08 ; asm
+ TX_ASM
ld hl, Route24TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
Route24Text7: ; 51567 (14:5567)
- db $08 ; asm
+ TX_ASM
ld hl, Route24TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route25.asm b/scripts/route25.asm
index b915bdee..49580ba6 100755
--- a/scripts/route25.asm
+++ b/scripts/route25.asm
@@ -13,27 +13,26 @@ Route25Script_515e1: ; 515e1 (14:55e1)
bit 6, [hl]
res 6, [hl]
ret z
- ld hl, wd7f2
- bit 7, [hl]
+ CheckEventHL EVENT_LEFT_BILLS_HOUSE_AFTER_HELPING
ret nz
- bit 5, [hl]
+ CheckEventReuseHL EVENT_MET_BILL_2
jr nz, .asm_515ff
- res 6, [hl]
+ ResetEventReuseHL EVENT_BILL_SAID_USE_CELL_SEPARATOR
ld a, HS_BILL_POKEMON
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef_jump ShowObject
.asm_515ff
- bit 4, [hl]
+ CheckEventAfterBranchReuseHL EVENT_GOT_SS_TICKET, EVENT_MET_BILL_2
ret z
- set 7, [hl]
+ SetEventReuseHL EVENT_LEFT_BILLS_HOUSE_AFTER_HELPING
ld a, HS_NUGGET_BRIDGE_GUY
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_BILL_1
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_BILL_2
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef_jump ShowObject
Route25ScriptPointers: ; 51622 (14:5622)
@@ -51,143 +50,143 @@ Route25TextPointers: ; 51628 (14:5628)
dw Route25Text7
dw Route25Text8
dw Route25Text9
- dw Predef5CText
+ dw PickUpItemText
dw Route25Text11
Route25TrainerHeaders: ; 5163e (14:563e)
Route25TrainerHeader0: ; 5163e (14:563e)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd7f1 ; flag's byte
- dw Route25BattleText1 ; 0x5705 TextBeforeBattle
- dw Route25AfterBattleText1 ; 0x570f TextAfterBattle
- dw Route25EndBattleText1 ; 0x570a TextEndBattle
- dw Route25EndBattleText1 ; 0x570a TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_0
+ dw Route25BattleText1 ; TextBeforeBattle
+ dw Route25AfterBattleText1 ; TextAfterBattle
+ dw Route25EndBattleText1 ; TextEndBattle
+ dw Route25EndBattleText1 ; TextEndBattle
Route25TrainerHeader2: ; 5164a (14:564a)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd7f1 ; flag's byte
- dw Route25BattleText2 ; 0x5714 TextBeforeBattle
- dw Route25AfterBattleText2 ; 0x571e TextAfterBattle
- dw Route25EndBattleText2 ; 0x5719 TextEndBattle
- dw Route25EndBattleText2 ; 0x5719 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_2
+ dw Route25BattleText2 ; TextBeforeBattle
+ dw Route25AfterBattleText2 ; TextAfterBattle
+ dw Route25EndBattleText2 ; TextEndBattle
+ dw Route25EndBattleText2 ; TextEndBattle
Route25TrainerHeader3: ; 51656 (14:5656)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd7f1 ; flag's byte
- dw Route25BattleText3 ; 0x5723 TextBeforeBattle
- dw Route25AfterBattleText3 ; 0x572d TextAfterBattle
- dw Route25EndBattleText3 ; 0x5728 TextEndBattle
- dw Route25EndBattleText3 ; 0x5728 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_3
+ dw Route25BattleText3 ; TextBeforeBattle
+ dw Route25AfterBattleText3 ; TextAfterBattle
+ dw Route25EndBattleText3 ; TextEndBattle
+ dw Route25EndBattleText3 ; TextEndBattle
Route25TrainerHeader4: ; 51662 (14:5662)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_4
db ($2 << 4) ; trainer's view range
- dw wd7f1 ; flag's byte
- dw Route25BattleText4 ; 0x5732 TextBeforeBattle
- dw Route25AfterBattleText4 ; 0x573c TextAfterBattle
- dw Route25EndBattleText4 ; 0x5737 TextEndBattle
- dw Route25EndBattleText4 ; 0x5737 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_4
+ dw Route25BattleText4 ; TextBeforeBattle
+ dw Route25AfterBattleText4 ; TextAfterBattle
+ dw Route25EndBattleText4 ; TextEndBattle
+ dw Route25EndBattleText4 ; TextEndBattle
Route25TrainerHeader5: ; 5166e (14:566e)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_5
db ($4 << 4) ; trainer's view range
- dw wd7f1 ; flag's byte
- dw Route25BattleText5 ; 0x5741 TextBeforeBattle
- dw Route25AfterBattleText5 ; 0x574b TextAfterBattle
- dw Route25EndBattleText5 ; 0x5746 TextEndBattle
- dw Route25EndBattleText5 ; 0x5746 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_5
+ dw Route25BattleText5 ; TextBeforeBattle
+ dw Route25AfterBattleText5 ; TextAfterBattle
+ dw Route25EndBattleText5 ; TextEndBattle
+ dw Route25EndBattleText5 ; TextEndBattle
Route25TrainerHeader6: ; 5167a (14:567a)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_6
db ($4 << 4) ; trainer's view range
- dw wd7f1 ; flag's byte
- dw Route25BattleText6 ; 0x5750 TextBeforeBattle
- dw Route25AfterBattleText6 ; 0x575a TextAfterBattle
- dw Route25EndBattleText6 ; 0x5755 TextEndBattle
- dw Route25EndBattleText6 ; 0x5755 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_6
+ dw Route25BattleText6 ; TextBeforeBattle
+ dw Route25AfterBattleText6 ; TextAfterBattle
+ dw Route25EndBattleText6 ; TextEndBattle
+ dw Route25EndBattleText6 ; TextEndBattle
Route25TrainerHeader7: ; 51686 (14:5686)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_7
db ($3 << 4) ; trainer's view range
- dw wd7f1 ; flag's byte
- dw Route25BattleText7 ; 0x575f TextBeforeBattle
- dw Route25AfterBattleText7 ; 0x5769 TextAfterBattle
- dw Route25EndBattleText7 ; 0x5764 TextEndBattle
- dw Route25EndBattleText7 ; 0x5764 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_7
+ dw Route25BattleText7 ; TextBeforeBattle
+ dw Route25AfterBattleText7 ; TextAfterBattle
+ dw Route25EndBattleText7 ; TextEndBattle
+ dw Route25EndBattleText7 ; TextEndBattle
Route25TrainerHeader8: ; 51692 (14:5692)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_8, 1
db ($2 << 4) ; trainer's view range
- dw wd7f1 ; flag's byte
- dw Route25BattleText8 ; 0x576e TextBeforeBattle
- dw Route25AfterBattleText8 ; 0x5778 TextAfterBattle
- dw Route25EndBattleText8 ; 0x5773 TextEndBattle
- dw Route25EndBattleText8 ; 0x5773 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_8, 1
+ dw Route25BattleText8 ; TextBeforeBattle
+ dw Route25AfterBattleText8 ; TextAfterBattle
+ dw Route25EndBattleText8 ; TextEndBattle
+ dw Route25EndBattleText8 ; TextEndBattle
Route25TrainerHeader9: ; 5169e (14:569e)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_9, 1
db ($2 << 4) ; trainer's view range
- dw wd7f1 ; flag's byte
- dw Route25BattleText9 ; 0x577d TextBeforeBattle
- dw Route25AfterBattleText9 ; 0x5787 TextAfterBattle
- dw Route25EndBattleText9 ; 0x5782 TextEndBattle
- dw Route25EndBattleText9 ; 0x5782 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_9, 1
+ dw Route25BattleText9 ; TextBeforeBattle
+ dw Route25AfterBattleText9 ; TextAfterBattle
+ dw Route25EndBattleText9 ; TextEndBattle
+ dw Route25EndBattleText9 ; TextEndBattle
db $ff
Route25Text1: ; 516ab (14:56ab)
- db $08 ; asm
+ TX_ASM
ld hl, Route25TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
Route25Text2: ; 516b5 (14:56b5)
- db $08 ; asm
+ TX_ASM
ld hl, Route25TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
Route25Text3: ; 516bf (14:56bf)
- db $08 ; asm
+ TX_ASM
ld hl, Route25TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
Route25Text4: ; 516c9 (14:56c9)
- db $08 ; asm
+ TX_ASM
ld hl, Route25TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
Route25Text5: ; 516d3 (14:56d3)
- db $08 ; asm
+ TX_ASM
ld hl, Route25TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
Route25Text6: ; 516dd (14:56dd)
- db $08 ; asm
+ TX_ASM
ld hl, Route25TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
Route25Text7: ; 516e7 (14:56e7)
- db $08 ; asm
+ TX_ASM
ld hl, Route25TrainerHeader7
call TalkToTrainer
jp TextScriptEnd
Route25Text8: ; 516f1 (14:56f1)
- db $08 ; asm
+ TX_ASM
ld hl, Route25TrainerHeader8
call TalkToTrainer
jp TextScriptEnd
Route25Text9: ; 516fb (14:56fb)
- db $08 ; asm
+ TX_ASM
ld hl, Route25TrainerHeader9
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route2gate.asm b/scripts/route2gate.asm
index 97067e70..133d0e7c 100755
--- a/scripts/route2gate.asm
+++ b/scripts/route2gate.asm
@@ -6,30 +6,28 @@ Route2GateTextPointers: ; 5d5d7 (17:55d7)
dw Route2GateText2
Route2GateText1: ; 5d5db (17:55db)
- db $08 ; asm
- ld a, [wd7c2]
- bit 0, a
- jr nz, .asm_6592c ; 0x5d5e1
+ TX_ASM
+ CheckEvent EVENT_GOT_HM05
+ jr nz, .asm_5d60d
ld a, 10 ; pokemon needed
- ld [$ffdb], a
+ ld [hOaksAideRequirement], a
ld a, HM_05 ; oak's aide reward
- ld [$ffdc], a
+ ld [hOaksAideRewardItem], a
ld [wd11e], a
- call GetItemName ; $2fcf
+ call GetItemName
ld hl, wcd6d
- ld de, wcc5b
- ld bc, $000d
+ ld de, wOaksAideRewardItemName
+ ld bc, ITEM_NAME_LENGTH
call CopyData
- predef OaksAideScript ; call oak's aide script
- ld a, [$ffdb]
+ predef OaksAideScript
+ ld a, [hOaksAideResult]
cp $1
- jr nz, .asm_ad646 ; 0x5d606
- ld hl, wd7c2
- set 0, [hl]
-.asm_6592c ; 0x5d60d
+ jr nz, .asm_5d613
+ SetEvent EVENT_GOT_HM05
+.asm_5d60d
ld hl, Route2GateText_5d616
call PrintText
-.asm_ad646 ; 0x5d613
+.asm_5d613
jp TextScriptEnd
Route2GateText_5d616: ; 5d616 (17:5616)
diff --git a/scripts/route2house.asm b/scripts/route2house.asm
index ba13605b..d1312c91 100755
--- a/scripts/route2house.asm
+++ b/scripts/route2house.asm
@@ -10,7 +10,7 @@ Route2HouseText1: ; 1def4 (7:5ef4)
db "@"
Route2HouseText2: ; 1def9 (7:5ef9)
- db $08 ; asm
+ TX_ASM
ld a, $1
ld [wWhichTrade], a
predef DoInGameTradeDialogue
diff --git a/scripts/route3.asm b/scripts/route3.asm
index acb2afce..50c4e00d 100755
--- a/scripts/route3.asm
+++ b/scripts/route3.asm
@@ -26,76 +26,76 @@ Route3TextPointers: ; 55511 (15:5511)
Route3TrainerHeaders: ; 55525 (15:5525)
Route3TrainerHeader0: ; 55525 (15:5525)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd7c3 ; flag's byte
- dw Route3BattleText1 ; 0x5595 TextBeforeBattle
- dw Route3AfterBattleText1 ; 0x559f TextAfterBattle
- dw Route3EndBattleText1 ; 0x559a TextEndBattle
- dw Route3EndBattleText1 ; 0x559a TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_0
+ dw Route3BattleText1 ; TextBeforeBattle
+ dw Route3AfterBattleText1 ; TextAfterBattle
+ dw Route3EndBattleText1 ; TextEndBattle
+ dw Route3EndBattleText1 ; TextEndBattle
Route3TrainerHeader2: ; 55531 (15:5531)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd7c3 ; flag's byte
- dw Route3BattleText2 ; 0x55ae TextBeforeBattle
- dw Route3AfterBattleText2 ; 0x55b8 TextAfterBattle
- dw Route3EndBattleText2 ; 0x55b3 TextEndBattle
- dw Route3EndBattleText2 ; 0x55b3 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_2
+ dw Route3BattleText2 ; TextBeforeBattle
+ dw Route3AfterBattleText2 ; TextAfterBattle
+ dw Route3EndBattleText2 ; TextEndBattle
+ dw Route3EndBattleText2 ; TextEndBattle
Route3TrainerHeader3: ; 5553d (15:553d)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_3
db ($2 << 4) ; trainer's view range
- dw wd7c3 ; flag's byte
- dw Route3BattleText3 ; 0x55c7 TextBeforeBattle
- dw Route3AfterBattleText3 ; 0x55d1 TextAfterBattle
- dw Route3EndBattleText3 ; 0x55cc TextEndBattle
- dw Route3EndBattleText3 ; 0x55cc TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_3
+ dw Route3BattleText3 ; TextBeforeBattle
+ dw Route3AfterBattleText3 ; TextAfterBattle
+ dw Route3EndBattleText3 ; TextEndBattle
+ dw Route3EndBattleText3 ; TextEndBattle
Route3TrainerHeader4: ; 55549 (15:5549)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_4
db ($1 << 4) ; trainer's view range
- dw wd7c3 ; flag's byte
- dw Route3BattleText4 ; 0x55e0 TextBeforeBattle
- dw Route3AfterBattleText4 ; 0x55ea TextAfterBattle
- dw Route3EndBattleText4 ; 0x55e5 TextEndBattle
- dw Route3EndBattleText4 ; 0x55e5 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_4
+ dw Route3BattleText4 ; TextBeforeBattle
+ dw Route3AfterBattleText4 ; TextAfterBattle
+ dw Route3EndBattleText4 ; TextEndBattle
+ dw Route3EndBattleText4 ; TextEndBattle
Route3TrainerHeader5: ; 55555 (15:5555)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_5
db ($4 << 4) ; trainer's view range
- dw wd7c3 ; flag's byte
- dw Route3BattleText5 ; 0x55f9 TextBeforeBattle
- dw Route3AfterBattleText5 ; 0x5603 TextAfterBattle
- dw Route3EndBattleText5 ; 0x55fe TextEndBattle
- dw Route3EndBattleText5 ; 0x55fe TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_5
+ dw Route3BattleText5 ; TextBeforeBattle
+ dw Route3AfterBattleText5 ; TextAfterBattle
+ dw Route3EndBattleText5 ; TextEndBattle
+ dw Route3EndBattleText5 ; TextEndBattle
Route3TrainerHeader6: ; 55561 (15:5561)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_6
db ($3 << 4) ; trainer's view range
- dw wd7c3 ; flag's byte
- dw Route3BattleText6 ; 0x5612 TextBeforeBattle
- dw Route3AfterBattleText6 ; 0x561c TextAfterBattle
- dw Route3EndBattleText6 ; 0x5617 TextEndBattle
- dw Route3EndBattleText6 ; 0x5617 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_6
+ dw Route3BattleText6 ; TextBeforeBattle
+ dw Route3AfterBattleText6 ; TextAfterBattle
+ dw Route3EndBattleText6 ; TextEndBattle
+ dw Route3EndBattleText6 ; TextEndBattle
Route3TrainerHeader7: ; 5556d (15:556d)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_7, 1
db ($3 << 4) ; trainer's view range
- dw wd7c3 ; flag's byte
- dw Route3BattleText7 ; 0x562b TextBeforeBattle
- dw Route3AfterBattleText7 ; 0x5635 TextAfterBattle
- dw Route3EndBattleText7 ; 0x5630 TextEndBattle
- dw Route3EndBattleText7 ; 0x5630 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_7, 1
+ dw Route3BattleText7 ; TextBeforeBattle
+ dw Route3AfterBattleText7 ; TextAfterBattle
+ dw Route3EndBattleText7 ; TextEndBattle
+ dw Route3EndBattleText7 ; TextEndBattle
Route3TrainerHeader8: ; 55579 (15:5579)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_8, 1
db ($2 << 4) ; trainer's view range
- dw wd7c3 ; flag's byte
- dw Route3BattleText8 ; 0x5644 TextBeforeBattle
- dw Route3AfterBattleText8 ; 0x564e TextAfterBattle
- dw Route3EndBattleText8 ; 0x5649 TextEndBattle
- dw Route3EndBattleText8 ; 0x5649 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_8, 1
+ dw Route3BattleText8 ; TextBeforeBattle
+ dw Route3AfterBattleText8 ; TextAfterBattle
+ dw Route3EndBattleText8 ; TextEndBattle
+ dw Route3EndBattleText8 ; TextEndBattle
db $ff
@@ -104,7 +104,7 @@ Route3Text1: ; 55586 (15:5586)
db "@"
Route3Text2: ; 5558b (15:558b)
- db $08 ; asm
+ TX_ASM
ld hl, Route3TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -122,7 +122,7 @@ Route3AfterBattleText1: ; 5559f (15:559f)
db "@"
Route3Text3: ; 555a4 (15:55a4)
- db $08 ; asm
+ TX_ASM
ld hl, Route3TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -140,7 +140,7 @@ Route3AfterBattleText2: ; 555b8 (15:55b8)
db "@"
Route3Text4: ; 555bd (15:55bd)
- db $08 ; asm
+ TX_ASM
ld hl, Route3TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -158,7 +158,7 @@ Route3AfterBattleText3: ; 555d1 (15:55d1)
db "@"
Route3Text5: ; 555d6 (15:55d6)
- db $08 ; asm
+ TX_ASM
ld hl, Route3TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -176,7 +176,7 @@ Route3AfterBattleText4: ; 555ea (15:55ea)
db "@"
Route3Text6: ; 555ef (15:55ef)
- db $08 ; asm
+ TX_ASM
ld hl, Route3TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
@@ -194,7 +194,7 @@ Route3AfterBattleText5: ; 55603 (15:5603)
db "@"
Route3Text7: ; 55608 (15:5608)
- db $08 ; asm
+ TX_ASM
ld hl, Route3TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
@@ -212,7 +212,7 @@ Route3AfterBattleText6: ; 5561c (15:561c)
db "@"
Route3Text8: ; 55621 (15:5621)
- db $08 ; asm
+ TX_ASM
ld hl, Route3TrainerHeader7
call TalkToTrainer
jp TextScriptEnd
@@ -230,7 +230,7 @@ Route3AfterBattleText7: ; 55635 (15:5635)
db "@"
Route3Text9: ; 5563a (15:563a)
- db $08 ; asm
+ TX_ASM
ld hl, Route3TrainerHeader8
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route4.asm b/scripts/route4.asm
index 5eafb4f7..f5bdd9e8 100755
--- a/scripts/route4.asm
+++ b/scripts/route4.asm
@@ -15,20 +15,20 @@ Route4ScriptPointers: ; 5566b (15:566b)
Route4TextPointers: ; 55671 (15:5671)
dw Route4Text1
dw Route4Text2
- dw Predef5CText
+ dw PickUpItemText
dw PokeCenterSignText
dw Route4Text5
dw Route4Text6
Route4TrainerHeaders: ; 5567d (15:567d)
Route4TrainerHeader0: ; 5567d (15:567d)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_4_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd7c5 ; flag's byte
- dw Route4BattleText1 ; 0x5699 TextBeforeBattle
- dw Route4AfterBattleText1 ; 0x56a3 TextAfterBattle
- dw Route4EndBattleText1 ; 0x569e TextEndBattle
- dw Route4EndBattleText1 ; 0x569e TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_4_TRAINER_0
+ dw Route4BattleText1 ; TextBeforeBattle
+ dw Route4AfterBattleText1 ; TextAfterBattle
+ dw Route4EndBattleText1 ; TextEndBattle
+ dw Route4EndBattleText1 ; TextEndBattle
db $ff
@@ -37,7 +37,7 @@ Route4Text1: ; 5568a (15:568a)
db "@"
Route4Text2: ; 5568f (15:568f)
- db $08 ; asm
+ TX_ASM
ld hl, Route4TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route5gate.asm b/scripts/route5gate.asm
index bee70e77..35f3a020 100755
--- a/scripts/route5gate.asm
+++ b/scripts/route5gate.asm
@@ -9,7 +9,7 @@ Route5GateScriptPointers: ; 1df3f (7:5f3f)
dw Route5GateScript1
Route5GateScript_1df43: ; 1df43 (7:5f43)
- ld a, $40
+ ld a, D_UP
ld [wSimulatedJoypadStatesEnd], a
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
@@ -22,16 +22,16 @@ Route5GateScript0: ; 1df50 (7:5f50)
ld hl, CoordsData_1df8f
call ArePlayerCoordsInArray
ret nc
- ld a, $2
- ld [wd528], a
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
xor a
ld [hJoyHeld], a
callba RemoveGuardDrink
ld a, [$ffdb]
and a
- jr nz, .asm_1df82 ; 0x1df70 $10
+ jr nz, .asm_1df82
ld a, $2
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call Route5GateScript_1df43
ld a, $1
@@ -39,7 +39,7 @@ Route5GateScript0: ; 1df50 (7:5f50)
ret
.asm_1df82
ld a, $3
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld hl, wd728
set 6, [hl]
@@ -69,27 +69,27 @@ Route8GateText1: ; 1dfaa (7:5faa)
Route7GateText1: ; 1dfaa (7:5faa)
Route6GateText1: ; 1dfaa (7:5faa)
Route5GateText1: ; 1dfaa (7:5faa)
- db $8
+ TX_ASM
ld a, [wd728]
bit 6, a
- jr nz, .asm_88856 ; 0x1dfb0 $2c
+ jr nz, .asm_88856
callba RemoveGuardDrink
ld a, [$ffdb]
and a
- jr nz, .asm_768a2 ; 0x1dfbd $11
+ jr nz, .asm_768a2
ld hl, Route5GateText2
call PrintText
call Route5GateScript_1df43
ld a, $1
ld [W_ROUTE5GATECURSCRIPT], a
jp TextScriptEnd
-.asm_768a2 ; 0x1dfd0
+.asm_768a2
ld hl, Route5GateText3
call PrintText
ld hl, wd728
set 6, [hl]
jp TextScriptEnd
-.asm_88856 ; 0x1dfde
+.asm_88856
ld hl, SaffronGateText_1dff6
call PrintText
jp TextScriptEnd
@@ -105,9 +105,9 @@ Route8GateText3: ; 1dfec (7:5fec)
Route7GateText3: ; 1dfec (7:5fec)
Route6GateText3: ; 1dfec (7:5fec)
Route5GateText3: ; 1dfec (7:5fec)
- TX_FAR _SaffronGateText_8aaa9 ; 0x8aaa9
+ TX_FAR _SaffronGateText_8aaa9
db $11
- TX_FAR _SaffronGateText_1dff1 ; 0x8aaef
+ TX_FAR _SaffronGateText_1dff1
db "@"
SaffronGateText_1dff6: ; 1dff6 (7:5ff6)
diff --git a/scripts/route6.asm b/scripts/route6.asm
index ee6258cd..e748fed1 100755
--- a/scripts/route6.asm
+++ b/scripts/route6.asm
@@ -23,63 +23,63 @@ Route6TextPointers: ; 590c9 (16:50c9)
Route6TrainerHeaders: ; 590d7 (16:50d7)
Route6TrainerHeader0: ; 590d7 (16:50d7)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_0
db ($0 << 4) ; trainer's view range
- dw wd7c9 ; flag's byte
- dw Route6BattleText1 ; 0x512a TextBeforeBattle
- dw Route6AfterBattleText1 ; 0x5134 TextAfterBattle
- dw Route6EndBattleText1 ; 0x512f TextEndBattle
- dw Route6EndBattleText1 ; 0x512f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_0
+ dw Route6BattleText1 ; TextBeforeBattle
+ dw Route6AfterBattleText1 ; TextAfterBattle
+ dw Route6EndBattleText1 ; TextEndBattle
+ dw Route6EndBattleText1 ; TextEndBattle
Route6TrainerHeader1: ; 590e3 (16:50e3)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_1
db ($0 << 4) ; trainer's view range
- dw wd7c9 ; flag's byte
- dw Route6BattleText2 ; 0x5143 TextBeforeBattle
- dw Route6AfterBattleText1 ; 0x5134 TextAfterBattle
- dw Route6EndBattleText2 ; 0x5148 TextEndBattle
- dw Route6EndBattleText2 ; 0x5148 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_1
+ dw Route6BattleText2 ; TextBeforeBattle
+ dw Route6AfterBattleText1 ; TextAfterBattle
+ dw Route6EndBattleText2 ; TextEndBattle
+ dw Route6EndBattleText2 ; TextEndBattle
Route6TrainerHeader2: ; 590ef (16:50ef)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd7c9 ; flag's byte
- dw Route6BattleText3 ; 0x5157 TextBeforeBattle
- dw Route6AfterBattleText3 ; 0x5161 TextAfterBattle
- dw Route6EndBattleText3 ; 0x515c TextEndBattle
- dw Route6EndBattleText3 ; 0x515c TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_2
+ dw Route6BattleText3 ; TextBeforeBattle
+ dw Route6AfterBattleText3 ; TextAfterBattle
+ dw Route6EndBattleText3 ; TextEndBattle
+ dw Route6EndBattleText3 ; TextEndBattle
Route6TrainerHeader3: ; 590fb (16:50fb)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd7c9 ; flag's byte
- dw Route6BattleText4 ; 0x5170 TextBeforeBattle
- dw Route6AfterBattleText4 ; 0x517a TextAfterBattle
- dw Route6EndBattleText4 ; 0x5175 TextEndBattle
- dw Route6EndBattleText4 ; 0x5175 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_3
+ dw Route6BattleText4 ; TextBeforeBattle
+ dw Route6AfterBattleText4 ; TextAfterBattle
+ dw Route6EndBattleText4 ; TextEndBattle
+ dw Route6EndBattleText4 ; TextEndBattle
Route6TrainerHeader4: ; 59107 (16:5107)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_4
db ($3 << 4) ; trainer's view range
- dw wd7c9 ; flag's byte
- dw Route6BattleText5 ; 0x5189 TextBeforeBattle
- dw Route6AfterBattleText5 ; 0x5193 TextAfterBattle
- dw Route6EndBattleText5 ; 0x518e TextEndBattle
- dw Route6EndBattleText5 ; 0x518e TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_4
+ dw Route6BattleText5 ; TextBeforeBattle
+ dw Route6AfterBattleText5 ; TextAfterBattle
+ dw Route6EndBattleText5 ; TextEndBattle
+ dw Route6EndBattleText5 ; TextEndBattle
Route6TrainerHeader5: ; 59113 (16:5113)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_5
db ($3 << 4) ; trainer's view range
- dw wd7c9 ; flag's byte
- dw Route6BattleText6 ; 0x51a2 TextBeforeBattle
- dw Route6AfterBattleText6 ; 0x51ac TextAfterBattle
- dw Route6EndBattleText6 ; 0x51a7 TextEndBattle
- dw Route6EndBattleText6 ; 0x51a7 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_5
+ dw Route6BattleText6 ; TextBeforeBattle
+ dw Route6AfterBattleText6 ; TextAfterBattle
+ dw Route6EndBattleText6 ; TextEndBattle
+ dw Route6EndBattleText6 ; TextEndBattle
db $ff
Route6Text1: ; 59120 (16:5120)
- db $8
+ TX_ASM
ld hl, Route6TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -97,7 +97,7 @@ Route6AfterBattleText1: ; 59134 (16:5134)
db "@"
Route6Text2: ; 59139 (16:5139)
- db $08 ; asm
+ TX_ASM
ld hl, Route6TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -111,7 +111,7 @@ Route6EndBattleText2: ; 59148 (16:5148)
db "@"
Route6Text3: ; 5914d (16:514d)
- db $08 ; asm
+ TX_ASM
ld hl, Route6TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -129,7 +129,7 @@ Route6AfterBattleText3: ; 59161 (16:5161)
db "@"
Route6Text4: ; 59166 (16:5166)
- db $08 ; asm
+ TX_ASM
ld hl, Route6TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -147,7 +147,7 @@ Route6AfterBattleText4: ; 5917a (16:517a)
db "@"
Route6Text5: ; 5917f (16:517f)
- db $08 ; asm
+ TX_ASM
ld hl, Route6TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -165,7 +165,7 @@ Route6AfterBattleText5: ; 59193 (16:5193)
db "@"
Route6Text6: ; 59198 (16:5198)
- db $08 ; asm
+ TX_ASM
ld hl, Route6TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route6gate.asm b/scripts/route6gate.asm
index 44d03a75..a4b6149c 100755
--- a/scripts/route6gate.asm
+++ b/scripts/route6gate.asm
@@ -16,16 +16,16 @@ Route6GateScript0: ; 1e04e (7:604e)
ld hl, CoordsData_1e08c
call ArePlayerCoordsInArray
ret nc
- ld a, $1
- ld [wd528], a
+ ld a, PLAYER_DIR_RIGHT
+ ld [wPlayerMovingDirection], a
xor a
ld [hJoyHeld], a
callba RemoveGuardDrink
ld a, [$ffdb]
and a
- jr nz, .asm_1e080 ; 0x1e06e $10
+ jr nz, .asm_1e080
ld a, $2
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call Route6GateScript_1e0a1
ld a, $1
@@ -35,7 +35,7 @@ Route6GateScript0: ; 1e04e (7:604e)
ld hl, wd728
set 6, [hl]
ld a, $3
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
CoordsData_1e08c: ; 1e08c (7:608c)
diff --git a/scripts/route7gate.asm b/scripts/route7gate.asm
index beab96bf..b55f813c 100755
--- a/scripts/route7gate.asm
+++ b/scripts/route7gate.asm
@@ -28,16 +28,16 @@ Route7GateScript0: ; 1e128 (7:6128)
ld hl, CoordsData_1e167
call ArePlayerCoordsInArray
ret nc
- ld a, $8
- ld [wd528], a
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
xor a
ld [hJoyHeld], a
callba RemoveGuardDrink
ld a, [$ffdb]
and a
- jr nz, .asm_1e15a ; 0x1e148 $10
+ jr nz, .asm_1e15a
ld a, $2
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call Route7GateScript_1e111
ld a, $1
@@ -45,7 +45,7 @@ Route7GateScript0: ; 1e128 (7:6128)
ret
.asm_1e15a
ld a, $3
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld hl, wd728
set 6, [hl]
diff --git a/scripts/route8.asm b/scripts/route8.asm
index eed57c7b..c734c62d 100755
--- a/scripts/route8.asm
+++ b/scripts/route8.asm
@@ -26,90 +26,90 @@ Route8TextPointers: ; 591cf (16:51cf)
Route8TrainerHeaders: ; 591e3 (16:51e3)
Route8TrainerHeader0: ; 591e3 (16:51e3)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd7cd ; flag's byte
- dw Route8BattleText1 ; 0x525a TextBeforeBattle
- dw Route8AfterBattleText1 ; 0x5264 TextAfterBattle
- dw Route8EndBattleText1 ; 0x525f TextEndBattle
- dw Route8EndBattleText1 ; 0x525f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_0
+ dw Route8BattleText1 ; TextBeforeBattle
+ dw Route8AfterBattleText1 ; TextAfterBattle
+ dw Route8EndBattleText1 ; TextEndBattle
+ dw Route8EndBattleText1 ; TextEndBattle
Route8TrainerHeader1: ; 591ef (16:51ef)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_1
db ($4 << 4) ; trainer's view range
- dw wd7cd ; flag's byte
- dw Route8BattleText2 ; 0x5273 TextBeforeBattle
- dw Route8AfterBattleText2 ; 0x527d TextAfterBattle
- dw Route8EndBattleText2 ; 0x5278 TextEndBattle
- dw Route8EndBattleText2 ; 0x5278 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_1
+ dw Route8BattleText2 ; TextBeforeBattle
+ dw Route8AfterBattleText2 ; TextAfterBattle
+ dw Route8EndBattleText2 ; TextEndBattle
+ dw Route8EndBattleText2 ; TextEndBattle
Route8TrainerHeader2: ; 591fb (16:51fb)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd7cd ; flag's byte
- dw Route8BattleText3 ; 0x528c TextBeforeBattle
- dw Route8AfterBattleText3 ; 0x5296 TextAfterBattle
- dw Route8EndBattleText3 ; 0x5291 TextEndBattle
- dw Route8EndBattleText3 ; 0x5291 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_2
+ dw Route8BattleText3 ; TextBeforeBattle
+ dw Route8AfterBattleText3 ; TextAfterBattle
+ dw Route8EndBattleText3 ; TextEndBattle
+ dw Route8EndBattleText3 ; TextEndBattle
Route8TrainerHeader3: ; 59207 (16:5207)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_3
db ($2 << 4) ; trainer's view range
- dw wd7cd ; flag's byte
- dw Route8BattleText4 ; 0x52a5 TextBeforeBattle
- dw Route8AfterBattleText4 ; 0x52af TextAfterBattle
- dw Route8EndBattleText4 ; 0x52aa TextEndBattle
- dw Route8EndBattleText4 ; 0x52aa TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_3
+ dw Route8BattleText4 ; TextBeforeBattle
+ dw Route8AfterBattleText4 ; TextAfterBattle
+ dw Route8EndBattleText4 ; TextEndBattle
+ dw Route8EndBattleText4 ; TextEndBattle
Route8TrainerHeader4: ; 59213 (16:5213)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_4
db ($3 << 4) ; trainer's view range
- dw wd7cd ; flag's byte
- dw Route8BattleText5 ; 0x52be TextBeforeBattle
- dw Route8AfterBattleText5 ; 0x52c8 TextAfterBattle
- dw Route8EndBattleText5 ; 0x52c3 TextEndBattle
- dw Route8EndBattleText5 ; 0x52c3 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_4
+ dw Route8BattleText5 ; TextBeforeBattle
+ dw Route8AfterBattleText5 ; TextAfterBattle
+ dw Route8EndBattleText5 ; TextEndBattle
+ dw Route8EndBattleText5 ; TextEndBattle
Route8TrainerHeader5: ; 5921f (16:521f)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_5
db ($3 << 4) ; trainer's view range
- dw wd7cd ; flag's byte
- dw Route8BattleText6 ; 0x52d7 TextBeforeBattle
- dw Route8AfterBattleText6 ; 0x52e1 TextAfterBattle
- dw Route8EndBattleText6 ; 0x52dc TextEndBattle
- dw Route8EndBattleText6 ; 0x52dc TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_5
+ dw Route8BattleText6 ; TextBeforeBattle
+ dw Route8AfterBattleText6 ; TextAfterBattle
+ dw Route8EndBattleText6 ; TextEndBattle
+ dw Route8EndBattleText6 ; TextEndBattle
Route8TrainerHeader6: ; 5922b (16:522b)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_6
db ($2 << 4) ; trainer's view range
- dw wd7cd ; flag's byte
- dw Route8BattleText7 ; 0x52f0 TextBeforeBattle
- dw Route8AfterBattleText7 ; 0x52fa TextAfterBattle
- dw Route8EndBattleText7 ; 0x52f5 TextEndBattle
- dw Route8EndBattleText7 ; 0x52f5 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_6
+ dw Route8BattleText7 ; TextBeforeBattle
+ dw Route8AfterBattleText7 ; TextAfterBattle
+ dw Route8EndBattleText7 ; TextEndBattle
+ dw Route8EndBattleText7 ; TextEndBattle
Route8TrainerHeader7: ; 59237 (16:5237)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_7, 1
db ($2 << 4) ; trainer's view range
- dw wd7cd ; flag's byte
- dw Route8BattleText8 ; 0x5309 TextBeforeBattle
- dw Route8AfterBattleText8 ; 0x5313 TextAfterBattle
- dw Route8EndBattleText8 ; 0x530e TextEndBattle
- dw Route8EndBattleText8 ; 0x530e TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_7, 1
+ dw Route8BattleText8 ; TextBeforeBattle
+ dw Route8AfterBattleText8 ; TextAfterBattle
+ dw Route8EndBattleText8 ; TextEndBattle
+ dw Route8EndBattleText8 ; TextEndBattle
Route8TrainerHeader8: ; 59243 (16:5243)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_8, 1
db ($4 << 4) ; trainer's view range
- dw wd7cd ; flag's byte
- dw Route8BattleText9 ; 0x5322 TextBeforeBattle
- dw Route8AfterBattleText9 ; 0x532c TextAfterBattle
- dw Route8EndBattleText9 ; 0x5327 TextEndBattle
- dw Route8EndBattleText9 ; 0x5327 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_8, 1
+ dw Route8BattleText9 ; TextBeforeBattle
+ dw Route8AfterBattleText9 ; TextAfterBattle
+ dw Route8EndBattleText9 ; TextEndBattle
+ dw Route8EndBattleText9 ; TextEndBattle
db $ff
Route8Text1: ; 59250 (16:5250)
- db $8
+ TX_ASM
ld hl, Route8TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -127,7 +127,7 @@ Route8AfterBattleText1: ; 59264 (16:5264)
db "@"
Route8Text2: ; 59269 (16:5269)
- db $08 ; asm
+ TX_ASM
ld hl, Route8TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -145,7 +145,7 @@ Route8AfterBattleText2: ; 5927d (16:527d)
db "@"
Route8Text3: ; 59282 (16:5282)
- db $08 ; asm
+ TX_ASM
ld hl, Route8TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -163,7 +163,7 @@ Route8AfterBattleText3: ; 59296 (16:5296)
db "@"
Route8Text4: ; 5929b (16:529b)
- db $08 ; asm
+ TX_ASM
ld hl, Route8TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -181,7 +181,7 @@ Route8AfterBattleText4: ; 592af (16:52af)
db "@"
Route8Text5: ; 592b4 (16:52b4)
- db $08 ; asm
+ TX_ASM
ld hl, Route8TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -199,7 +199,7 @@ Route8AfterBattleText5: ; 592c8 (16:52c8)
db "@"
Route8Text6: ; 592cd (16:52cd)
- db $08 ; asm
+ TX_ASM
ld hl, Route8TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
@@ -217,7 +217,7 @@ Route8AfterBattleText6: ; 592e1 (16:52e1)
db "@"
Route8Text7: ; 592e6 (16:52e6)
- db $08 ; asm
+ TX_ASM
ld hl, Route8TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
@@ -235,7 +235,7 @@ Route8AfterBattleText7: ; 592fa (16:52fa)
db "@"
Route8Text8: ; 592ff (16:52ff)
- db $08 ; asm
+ TX_ASM
ld hl, Route8TrainerHeader7
call TalkToTrainer
jp TextScriptEnd
@@ -253,7 +253,7 @@ Route8AfterBattleText8: ; 59313 (16:5313)
db "@"
Route8Text9: ; 59318 (16:5318)
- db $08 ; asm
+ TX_ASM
ld hl, Route8TrainerHeader8
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/route8gate.asm b/scripts/route8gate.asm
index 8ea12f04..96bfa875 100755
--- a/scripts/route8gate.asm
+++ b/scripts/route8gate.asm
@@ -27,16 +27,16 @@ Route8GateScript0: ; 1e1ee (7:61ee)
ld hl, CoordsData_1e22c
call ArePlayerCoordsInArray
ret nc
- ld a, $2
- ld [wd528], a
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
xor a
ld [hJoyHeld], a
callba RemoveGuardDrink
ld a, [$ffdb]
and a
- jr nz, .asm_1e220 ; 0x1e20e $10
+ jr nz, .asm_1e220
ld a, $2
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call Route8GateScript_1e1d7
ld a, $1
@@ -46,7 +46,7 @@ Route8GateScript0: ; 1e1ee (7:61ee)
ld hl, wd728
set 6, [hl]
ld a, $3
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
CoordsData_1e22c: ; 1e22c (7:622c)
diff --git a/scripts/route9.asm b/scripts/route9.asm
index 77b216c6..9d26ee96 100755
--- a/scripts/route9.asm
+++ b/scripts/route9.asm
@@ -22,137 +22,137 @@ Route9TextPointers: ; 556d5 (15:56d5)
dw Route9Text7
dw Route9Text8
dw Route9Text9
- dw Predef5CText
+ dw PickUpItemText
dw Route9Text11
Route9TrainerHeaders: ; 556eb (15:56eb)
Route9TrainerHeader0: ; 556eb (15:56eb)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd7cf ; flag's byte
- dw Route9BattleText1 ; 0x5792 TextBeforeBattle
- dw Route9AfterBattleText1 ; 0x579c TextAfterBattle
- dw Route9EndBattleText1 ; 0x5797 TextEndBattle
- dw Route9EndBattleText1 ; 0x5797 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_0
+ dw Route9BattleText1 ; TextBeforeBattle
+ dw Route9AfterBattleText1 ; TextAfterBattle
+ dw Route9EndBattleText1 ; TextEndBattle
+ dw Route9EndBattleText1 ; TextEndBattle
Route9TrainerHeader2: ; 556f7 (15:56f7)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd7cf ; flag's byte
- dw Route9BattleText2 ; 0x57a1 TextBeforeBattle
- dw Route9AfterBattleText2 ; 0x57ab TextAfterBattle
- dw Route9EndBattleText2 ; 0x57a6 TextEndBattle
- dw Route9EndBattleText2 ; 0x57a6 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_2
+ dw Route9BattleText2 ; TextBeforeBattle
+ dw Route9AfterBattleText2 ; TextAfterBattle
+ dw Route9EndBattleText2 ; TextEndBattle
+ dw Route9EndBattleText2 ; TextEndBattle
Route9TrainerHeader3: ; 55703 (15:5703)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_3
db ($4 << 4) ; trainer's view range
- dw wd7cf ; flag's byte
- dw Route9BattleText3 ; 0x57b0 TextBeforeBattle
- dw Route9AfterBattleText3 ; 0x57ba TextAfterBattle
- dw Route9EndBattleText3 ; 0x57b5 TextEndBattle
- dw Route9EndBattleText3 ; 0x57b5 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_3
+ dw Route9BattleText3 ; TextBeforeBattle
+ dw Route9AfterBattleText3 ; TextAfterBattle
+ dw Route9EndBattleText3 ; TextEndBattle
+ dw Route9EndBattleText3 ; TextEndBattle
Route9TrainerHeader4: ; 5570f (15:570f)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_4
db ($2 << 4) ; trainer's view range
- dw wd7cf ; flag's byte
- dw Route9BattleText4 ; 0x57bf TextBeforeBattle
- dw Route9AfterBattleText4 ; 0x57c9 TextAfterBattle
- dw Route9EndBattleText4 ; 0x57c4 TextEndBattle
- dw Route9EndBattleText4 ; 0x57c4 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_4
+ dw Route9BattleText4 ; TextBeforeBattle
+ dw Route9AfterBattleText4 ; TextAfterBattle
+ dw Route9EndBattleText4 ; TextEndBattle
+ dw Route9EndBattleText4 ; TextEndBattle
Route9TrainerHeader5: ; 5571b (15:571b)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_5
db ($2 << 4) ; trainer's view range
- dw wd7cf ; flag's byte
- dw Route9BattleText5 ; 0x57ce TextBeforeBattle
- dw Route9AfterBattleText5 ; 0x57d8 TextAfterBattle
- dw Route9EndBattleText5 ; 0x57d3 TextEndBattle
- dw Route9EndBattleText5 ; 0x57d3 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_5
+ dw Route9BattleText5 ; TextBeforeBattle
+ dw Route9AfterBattleText5 ; TextAfterBattle
+ dw Route9EndBattleText5 ; TextEndBattle
+ dw Route9EndBattleText5 ; TextEndBattle
Route9TrainerHeader6: ; 55727 (15:5727)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_6
db ($3 << 4) ; trainer's view range
- dw wd7cf ; flag's byte
- dw Route9BattleText6 ; 0x57dd TextBeforeBattle
- dw Route9AfterBattleText6 ; 0x57e7 TextAfterBattle
- dw Route9EndBattleText6 ; 0x57e2 TextEndBattle
- dw Route9EndBattleText6 ; 0x57e2 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_6
+ dw Route9BattleText6 ; TextBeforeBattle
+ dw Route9AfterBattleText6 ; TextAfterBattle
+ dw Route9EndBattleText6 ; TextEndBattle
+ dw Route9EndBattleText6 ; TextEndBattle
Route9TrainerHeader7: ; 55733 (15:5733)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_7
db ($4 << 4) ; trainer's view range
- dw wd7cf ; flag's byte
- dw Route9BattleText7 ; 0x57ec TextBeforeBattle
- dw Route9AfterBattleText7 ; 0x57f6 TextAfterBattle
- dw Route9EndBattleText7 ; 0x57f1 TextEndBattle
- dw Route9EndBattleText7 ; 0x57f1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_7
+ dw Route9BattleText7 ; TextBeforeBattle
+ dw Route9AfterBattleText7 ; TextAfterBattle
+ dw Route9EndBattleText7 ; TextEndBattle
+ dw Route9EndBattleText7 ; TextEndBattle
Route9TrainerHeader8: ; 5573f (15:573f)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_8, 1
db ($2 << 4) ; trainer's view range
- dw wd7cf ; flag's byte
- dw Route9BattleText8 ; 0x57fb TextBeforeBattle
- dw Route9AfterBattleText8 ; 0x5805 TextAfterBattle
- dw Route9EndBattleText8 ; 0x5800 TextEndBattle
- dw Route9EndBattleText8 ; 0x5800 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_8, 1
+ dw Route9BattleText8 ; TextBeforeBattle
+ dw Route9AfterBattleText8 ; TextAfterBattle
+ dw Route9EndBattleText8 ; TextEndBattle
+ dw Route9EndBattleText8 ; TextEndBattle
Route9TrainerHeader9: ; 5574b (15:574b)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_9, 1
db ($2 << 4) ; trainer's view range
- dw wd7cf ; flag's byte
- dw Route9BattleText9 ; 0x580a TextBeforeBattle
- dw Route9AfterBattleText9 ; 0x5814 TextAfterBattle
- dw Route9EndBattleText9 ; 0x580f TextEndBattle
- dw Route9EndBattleText9 ; 0x580f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_9, 1
+ dw Route9BattleText9 ; TextBeforeBattle
+ dw Route9AfterBattleText9 ; TextAfterBattle
+ dw Route9EndBattleText9 ; TextEndBattle
+ dw Route9EndBattleText9 ; TextEndBattle
db $ff
Route9Text1: ; 55758 (15:5758)
- db $8 ; asm
+ TX_ASM
ld hl, Route9TrainerHeader0
- jr asm_8be3d ; 0x5575c $2e
+ jr Route9TalkToTrainer
Route9Text2: ; 5575e (15:575e)
- db $8 ; asm
+ TX_ASM
ld hl, Route9TrainerHeader2
- jr asm_8be3d ; 0x55762 $28
+ jr Route9TalkToTrainer
Route9Text3: ; 55764 (15:5764)
- db $8 ; asm
+ TX_ASM
ld hl, Route9TrainerHeader3
- jr asm_8be3d ; 0x55768 $22
+ jr Route9TalkToTrainer
Route9Text4: ; 5576a (15:576a)
- db $8 ; asm
+ TX_ASM
ld hl, Route9TrainerHeader4
- jr asm_8be3d ; 0x5576e $1c
+ jr Route9TalkToTrainer
Route9Text5: ; 55770 (15:5770)
- db $8 ; asm
+ TX_ASM
ld hl, Route9TrainerHeader5
- jr asm_8be3d ; 0x55774 $16
+ jr Route9TalkToTrainer
Route9Text6: ; 55776 (15:5776)
- db $8 ; asm
+ TX_ASM
ld hl, Route9TrainerHeader6
- jr asm_8be3d ; 0x5577a $10
+ jr Route9TalkToTrainer
Route9Text7: ; 5577c (15:577c)
- db $8 ; asm
+ TX_ASM
ld hl, Route9TrainerHeader7
- jr asm_8be3d ; 0x55780 $a
+ jr Route9TalkToTrainer
Route9Text8: ; 55782 (15:5782)
- db $8 ; asm
+ TX_ASM
ld hl, Route9TrainerHeader8
- jr asm_8be3d ; 0x55786 $4
+ jr Route9TalkToTrainer
Route9Text9: ; 55788 (15:5788)
- db $8 ; asm
+ TX_ASM
ld hl, Route9TrainerHeader9
-asm_8be3d: ; 5578c (15:578c)
+Route9TalkToTrainer: ; 5578c (15:578c)
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/safarizonecenter.asm b/scripts/safarizonecenter.asm
index 6ff60ec6..40042038 100755
--- a/scripts/safarizonecenter.asm
+++ b/scripts/safarizonecenter.asm
@@ -2,7 +2,7 @@ SafariZoneCenterScript: ; 45bb2 (11:5bb2)
jp EnableAutoTextBoxDrawing
SafariZoneCenterTextPointers: ; 45bb5 (11:5bb5)
- dw Predef5CText
+ dw PickUpItemText
dw SafariZoneCenterText2
dw SafariZoneCenterText3
diff --git a/scripts/safarizoneeast.asm b/scripts/safarizoneeast.asm
index 3e6df139..55ea5aa6 100755
--- a/scripts/safarizoneeast.asm
+++ b/scripts/safarizoneeast.asm
@@ -2,10 +2,10 @@ SafariZoneEastScript: ; 4586b (11:586b)
jp EnableAutoTextBoxDrawing
SafariZoneEastTextPointers: ; 4586e (11:586e)
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
dw SafariZoneEastText5
dw SafariZoneEastText6
dw SafariZoneEastText7
diff --git a/scripts/safarizoneentrance-yellow.asm b/scripts/safarizoneentrance-yellow.asm
index c4343095..4a37f0e6 100644
--- a/scripts/safarizoneentrance-yellow.asm
+++ b/scripts/safarizoneentrance-yellow.asm
@@ -1,7 +1,7 @@
.xf1f77
ld hl,.ForJust500Text
call PrintText
- ld a,$13
+ ld a,MONEY_BOX
ld [wTextBoxID],a
call DisplayTextBoxID
call YesNoChoice
@@ -21,11 +21,11 @@
.xf1f9f
xor a
- ld [$ff9f],a
+ ld [hMoney],a
ld a,$05
- ld [$ffa0],a
+ ld [hMoney + 1],a
ld a,$00
- ld [$ffa1],a
+ ld [hMoney + 2],a
call HasEnoughMoney
jr nc,.success
ld hl,.NotEnoughMoneyText
@@ -36,37 +36,36 @@
.success
xor a
- ld [wSubtrahend],a
+ ld [wPriceTemp],a
ld a,$05
- ld [wSubtrahend+1],a
+ ld [wPriceTemp + 1],a
ld a,$00
- ld [wSubtrahend+2],a
- ld hl,wTrainerFacingDirection
+ ld [wPriceTemp + 2],a
+ ld hl,wPriceTemp + 2
ld de,wPlayerMoney + 2
ld c,3
predef SubBCDPredef
ld a,$b2
call $3736
call $373e
- ld a,$13
+ ld a,MONEY_BOX
ld [wTextBoxID],a
call DisplayTextBoxID
ld hl,.MakePaymentText
call PrintText
ld a,30
- ld hl,(502 / $100) << 8 | (502 % $100)
+ lb hl, (502 / $100), (502 % $100)
.xf1ff2
ld [W_NUMSAFARIBALLS],a
ld a,h
ld [wSafariSteps],a
ld a,l
ld [wSafariSteps + 1],a
- ld a,$40
+ ld a,D_UP
ld c,3
call SafariZoneEntranceAutoWalk
- ld hl,wd790
- set 7,[hl]
- res 6,[hl]
+ SetEvent EVENT_IN_SAFARI_ZONE
+ ResetEventReuseHL EVENT_SAFARI_GAME_OVER
ld a,3
ld [W_SAFARIZONEENTRANCECURSCRIPT],a
jr .done
@@ -75,7 +74,7 @@
ld hl,.PleaseComeAgainText
call PrintText
.CantPayWalkDown
- ld a,$80
+ ld a,D_DOWN
ld c,1
call SafariZoneEntranceAutoWalk
ld a,4
@@ -155,8 +154,8 @@ SafariZoneEntranceAutoWalk:
ld bc,3
call FillMemory
ld hl,.OhAllRightText
- call Func_3c59
- ld a,$13
+ call PrintText_NoCreatingTextBox
+ ld a,MONEY_BOX
ld a,[$d124]
call DisplayTextBoxID
ld hl,.CantGive30BallsText
diff --git a/scripts/safarizoneentrance.asm b/scripts/safarizoneentrance.asm
index 294dcf58..e4e2e2a8 100755
--- a/scripts/safarizoneentrance.asm
+++ b/scripts/safarizoneentrance.asm
@@ -18,22 +18,22 @@ SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9)
call ArePlayerCoordsInArray
ret nc
ld a, $3
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $ff
ld [wJoyIgnore], a
xor a
ld [hJoyHeld], a
- ld a, $c
+ ld a, SPRITE_FACING_RIGHT
ld [wSpriteStateData1 + 9], a
- ld a, [wWhichTrade]
+ ld a, [wCoordIndex]
cp $1
- jr z, .asm_7520f ; 0x75207 $6
+ jr z, .asm_7520f
ld a, $2
ld [W_SAFARIZONEENTRANCECURSCRIPT], a
ret
.asm_7520f
- ld a, $10
+ ld a, D_RIGHT
ld c, $1
call SafariZoneEntranceAutoWalk
ld a, $f0
@@ -56,7 +56,7 @@ SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9)
ld [wJoyIgnore], a
call UpdateSprites
ld a, $4
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $ff
ld [wJoyIgnore], a
@@ -72,30 +72,28 @@ SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9)
ret
.SafariZoneEntranceScript5
- ld a, $4
- ld [wd528], a
- ld hl, wd790
- bit 6, [hl]
- res 6, [hl]
- jr z, .asm_7527f ; 0x7525a $23
- res 7, [hl]
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
+ CheckAndResetEvent EVENT_SAFARI_GAME_OVER
+ jr z, .asm_7527f
+ ResetEventReuseHL EVENT_IN_SAFARI_ZONE
call UpdateSprites
ld a, $f0
ld [wJoyIgnore], a
ld a, $6
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [W_NUMSAFARIBALLS], a
- ld a, $80
+ ld a, D_DOWN
ld c, $3
call SafariZoneEntranceAutoWalk
ld a, $4
ld [W_SAFARIZONEENTRANCECURSCRIPT], a
- jr .asm_75286 ; 0x7527d $7
+ jr .asm_75286
.asm_7527f
ld a, $5
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
.asm_75286
ret
@@ -145,9 +143,9 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9)
db "@"
.SafariZoneEntranceText4
- TX_FAR SafariZoneEntranceText_9e6e4 ; 0x9e6e4
- db $8
- ld a, $13
+ TX_FAR SafariZoneEntranceText_9e6e4
+ TX_ASM
+ ld a, MONEY_BOX
ld [wTextBoxID],a
call DisplayTextBoxID
call YesNoChoice
@@ -155,11 +153,11 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9)
and a
jp nz,.PleaseComeAgain
xor a
- ld [$ff9f],a
+ ld [hMoney],a
ld a,$05
- ld [$ffa0],a
+ ld [hMoney + 1],a
ld a,$00
- ld [$ffa1],a
+ ld [hMoney + 2],a
call HasEnoughMoney
jr nc,.success
ld hl,.NotEnoughMoneyText
@@ -168,16 +166,16 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9)
.success
xor a
- ld [wSubtrahend],a
+ ld [wPriceTemp],a
ld a,$05
- ld [wSubtrahend+1],a
+ ld [wPriceTemp + 1],a
ld a,$00
- ld [wSubtrahend+2],a
- ld hl,wTrainerFacingDirection
+ ld [wPriceTemp + 2],a
+ ld hl,wPriceTemp + 2
ld de,wPlayerMoney + 2
ld c,3
predef SubBCDPredef
- ld a,$13
+ ld a,MONEY_BOX
ld [wTextBoxID],a
call DisplayTextBoxID
ld hl,.MakePaymentText
@@ -188,12 +186,11 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9)
ld [wSafariSteps],a
ld a, 502 % $100
ld [wSafariSteps + 1],a
- ld a,$40
+ ld a,D_UP
ld c,3
call SafariZoneEntranceAutoWalk
- ld hl,wd790
- set 7,[hl]
- res 6,[hl]
+ SetEvent EVENT_IN_SAFARI_ZONE
+ ResetEventReuseHL EVENT_SAFARI_GAME_OVER
ld a,3
ld [W_SAFARIZONEENTRANCECURSCRIPT],a
jr .done
@@ -202,7 +199,7 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9)
ld hl,.PleaseComeAgainText
call PrintText
.CantPayWalkDown
- ld a,$80
+ ld a,D_DOWN
ld c,1
call SafariZoneEntranceAutoWalk
ld a,4
@@ -225,31 +222,29 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9)
db "@"
.SafariZoneEntranceText5
- TX_FAR SafariZoneEntranceText_9e814 ; 0x9e814
- db $8
+ TX_FAR SafariZoneEntranceText_9e814
+ TX_ASM
call YesNoChoice
ld a,[wCurrentMenuItem]
and a
- jr nz, .asm_7539c ; 0x7537b $1f
+ jr nz, .asm_7539c
ld hl, .SafariZoneEntranceText_753bb
call PrintText
xor a
ld [wSpriteStateData1 + 9], a
- ld a, $80
+ ld a, D_DOWN
ld c, $3
call SafariZoneEntranceAutoWalk
- ld hl, wd790
- res 6, [hl]
- res 7, [hl]
+ ResetEvents EVENT_SAFARI_GAME_OVER, EVENT_IN_SAFARI_ZONE
ld a, $0
ld [wcf0d], a
- jr .asm_753b3 ; 0x7539a $17
+ jr .asm_753b3
.asm_7539c
ld hl, .SafariZoneEntranceText_753c0
call PrintText
- ld a, $4
+ ld a, SPRITE_FACING_UP
ld [wSpriteStateData1 + 9], a
- ld a, $40
+ ld a, D_UP
ld c, $1
call SafariZoneEntranceAutoWalk
ld a, $5
@@ -272,7 +267,7 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9)
db "@"
.SafariZoneEntranceText2
- db $08 ; asm
+ TX_ASM
ld hl,.FirstTimeQuestionText
call PrintText
call YesNoChoice
diff --git a/scripts/safarizonenorth.asm b/scripts/safarizonenorth.asm
index 74790e76..6ea5f902 100755
--- a/scripts/safarizonenorth.asm
+++ b/scripts/safarizonenorth.asm
@@ -2,8 +2,8 @@ SafariZoneNorthScript: ; 459ab (11:59ab)
jp EnableAutoTextBoxDrawing
SafariZoneNorthTextPointers: ; 459ae (11:59ae)
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
dw SafariZoneNorthText3
dw SafariZoneNorthText4
dw SafariZoneNorthText5
diff --git a/scripts/safarizonesecrethouse.asm b/scripts/safarizonesecrethouse.asm
index 28aae7c4..8881472b 100755
--- a/scripts/safarizonesecrethouse.asm
+++ b/scripts/safarizonesecrethouse.asm
@@ -5,28 +5,26 @@ SafariZoneSecretHouseTextPointers: ; 4a31a (12:631a)
dw SafariZoneSecretHouseText1
SafariZoneSecretHouseText1: ; 4a31c (12:631c)
- db $08 ; asm
- ld a, [wd857]
- bit 0, a
- jr nz, .asm_20a9b ; 0x4a322
+ TX_ASM
+ CheckEvent EVENT_GOT_HM03
+ jr nz, .asm_20a9b
ld hl, SafariZoneSecretHouseText_4a350
call PrintText
- ld bc, (HM_03 << 8) | 1
+ lb bc, HM_03, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedHM03Text
call PrintText
- ld hl, wd857
- set 0, [hl]
- jr .asm_8f1fc ; 0x4a33d
+ SetEvent EVENT_GOT_HM03
+ jr .asm_8f1fc
.BagFull
ld hl, HM03NoRoomText
call PrintText
- jr .asm_8f1fc ; 0x4a345
-.asm_20a9b ; 0x4a347
+ jr .asm_8f1fc
+.asm_20a9b
ld hl, HM03ExplanationText
call PrintText
-.asm_8f1fc ; 0x4a34d
+.asm_8f1fc
jp TextScriptEnd
SafariZoneSecretHouseText_4a350: ; 4a350 (12:6350)
diff --git a/scripts/safarizonewest.asm b/scripts/safarizonewest.asm
index 1465af56..db2c6427 100755
--- a/scripts/safarizonewest.asm
+++ b/scripts/safarizonewest.asm
@@ -2,10 +2,10 @@ SafariZoneWestScript: ; 4a1b5 (12:61b5)
jp EnableAutoTextBoxDrawing
SafariZoneWestTextPointers: ; 4a1b8 (12:61b8)
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
dw SafariZoneWestText5
dw SafariZoneWestText6
dw SafariZoneWestText7
diff --git a/scripts/saffrongym.asm b/scripts/saffrongym.asm
index 7c2eb559..140b1130 100755
--- a/scripts/saffrongym.asm
+++ b/scripts/saffrongym.asm
@@ -12,8 +12,8 @@ SaffronGymScript: ; 5d00d (17:500d)
ret
.extra
- ld hl, Gym6CityName ; $5033
- ld de, Gym6LeaderName ; $5040
+ ld hl, Gym6CityName
+ ld de, Gym6LeaderName
jp LoadGymLeaderAndCityName
Gym6CityName: ; 5d033 (17:5033)
@@ -36,7 +36,7 @@ SaffronGymScriptPointers: ; 5d053 (17:5053)
dw SaffronGymScript3
SaffronGymScript3: ; 5d05b (17:505b)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, SaffronGymText_5d048
ld a, $f0
@@ -44,35 +44,29 @@ SaffronGymScript3: ; 5d05b (17:505b)
SaffronGymText_5d068: ; 5d068 (17:5068)
ld a, $a
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd7b3
- set 1, [hl]
- ld bc, (TM_46 << 8) | 1
+ SetEvent EVENT_BEAT_SABRINA
+ lb bc, TM_46, 1
call GiveItem
jr nc, .BagFull
ld a, $b
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd7b3
- set 0, [hl]
+ SetEvent EVENT_GOT_TM46
jr .asm_5d091
.BagFull
ld a, $c
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
.asm_5d091
ld hl, W_OBTAINEDBADGES
set 5, [hl]
- ld hl, wd72a
+ ld hl, wBeatGymFlags
set 5, [hl]
; deactivate gym trainers
- ld a, [wd7b3]
- or %11111100
- ld [wd7b3], a
- ld hl, wd7b4
- set 0, [hl]
+ SetEventRange EVENT_BEAT_SAFFRON_GYM_TRAINER_0, EVENT_BEAT_SAFFRON_GYM_TRAINER_6
jp SaffronGymText_5d048
@@ -92,85 +86,84 @@ SaffronGymTextPointers: ; 5d0ab (17:50ab)
SaffronGymTrainerHeaders: ; 5d0c3 (17:50c3)
SaffronGymTrainerHeader0: ; 5d0c3 (17:50c3)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd7b3 ; flag's byte
- dw SaffronGymBattleText1 ; 0x51f0 TextBeforeBattle
- dw SaffronGymAfterBattleText1 ; 0x51fa TextAfterBattle
- dw SaffronGymEndBattleText1 ; 0x51f5 TextEndBattle
- dw SaffronGymEndBattleText1 ; 0x51f5 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_0
+ dw SaffronGymBattleText1 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText1 ; TextAfterBattle
+ dw SaffronGymEndBattleText1 ; TextEndBattle
+ dw SaffronGymEndBattleText1 ; TextEndBattle
SaffronGymTrainerHeader1: ; 5d0cf (17:50cf)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd7b3 ; flag's byte
- dw SaffronGymBattleText2 ; 0x51ff TextBeforeBattle
- dw SaffronGymAfterBattleText2 ; 0x5209 TextAfterBattle
- dw SaffronGymEndBattleText2 ; 0x5204 TextEndBattle
- dw SaffronGymEndBattleText2 ; 0x5204 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_1
+ dw SaffronGymBattleText2 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText2 ; TextAfterBattle
+ dw SaffronGymEndBattleText2 ; TextEndBattle
+ dw SaffronGymEndBattleText2 ; TextEndBattle
SaffronGymTrainerHeader2: ; 5d0db (17:50db)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd7b3 ; flag's byte
- dw SaffronGymBattleText3 ; 0x520e TextBeforeBattle
- dw SaffronGymAfterBattleText3 ; 0x5218 TextAfterBattle
- dw SaffronGymEndBattleText3 ; 0x5213 TextEndBattle
- dw SaffronGymEndBattleText3 ; 0x5213 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_2
+ dw SaffronGymBattleText3 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText3 ; TextAfterBattle
+ dw SaffronGymEndBattleText3 ; TextEndBattle
+ dw SaffronGymEndBattleText3 ; TextEndBattle
SaffronGymTrainerHeader3: ; 5d0e7 (17:50e7)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd7b3 ; flag's byte
- dw SaffronGymBattleText4 ; 0x521d TextBeforeBattle
- dw SaffronGymAfterBattleText4 ; 0x5227 TextAfterBattle
- dw SaffronGymEndBattleText4 ; 0x5222 TextEndBattle
- dw SaffronGymEndBattleText4 ; 0x5222 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_3
+ dw SaffronGymBattleText4 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText4 ; TextAfterBattle
+ dw SaffronGymEndBattleText4 ; TextEndBattle
+ dw SaffronGymEndBattleText4 ; TextEndBattle
SaffronGymTrainerHeader4: ; 5d0f3 (17:50f3)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_4
db ($3 << 4) ; trainer's view range
- dw wd7b3 ; flag's byte
- dw SaffronGymBattleText5 ; 0x522c TextBeforeBattle
- dw SaffronGymAfterBattleText5 ; 0x5236 TextAfterBattle
- dw SaffronGymEndBattleText5 ; 0x5231 TextEndBattle
- dw SaffronGymEndBattleText5 ; 0x5231 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_4
+ dw SaffronGymBattleText5 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText5 ; TextAfterBattle
+ dw SaffronGymEndBattleText5 ; TextEndBattle
+ dw SaffronGymEndBattleText5 ; TextEndBattle
SaffronGymTrainerHeader5: ; 5d0ff (17:50ff)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_5
db ($3 << 4) ; trainer's view range
- dw wd7b3 ; flag's byte
- dw SaffronGymBattleText6 ; 0x523b TextBeforeBattle
- dw SaffronGymAfterBattleText6 ; 0x5245 TextAfterBattle
- dw SaffronGymEndBattleText6 ; 0x5240 TextEndBattle
- dw SaffronGymEndBattleText6 ; 0x5240 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_5
+ dw SaffronGymBattleText6 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText6 ; TextAfterBattle
+ dw SaffronGymEndBattleText6 ; TextEndBattle
+ dw SaffronGymEndBattleText6 ; TextEndBattle
SaffronGymTrainerHeader6: ; 5d10b (17:510b)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_6, 1
db ($3 << 4) ; trainer's view range
- dw wd7b3 ; flag's byte
- dw SaffronGymBattleText7 ; 0x524a TextBeforeBattle
- dw SaffronGymAfterBattleText7 ; 0x5254 TextAfterBattle
- dw SaffronGymEndBattleText7 ; 0x524f TextEndBattle
- dw SaffronGymEndBattleText7 ; 0x524f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_6, 1
+ dw SaffronGymBattleText7 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText7 ; TextAfterBattle
+ dw SaffronGymEndBattleText7 ; TextEndBattle
+ dw SaffronGymEndBattleText7 ; TextEndBattle
db $ff
SaffronGymText1: ; 5d118 (17:5118)
- db $08 ; asm
- ld a, [wd7b3]
- bit 1, a
- jr z, .asm_e3544 ; 0x5d11e
- bit 0, a
- jr nz, .asm_8d2f6 ; 0x5d122
+ TX_ASM
+ CheckEvent EVENT_BEAT_SABRINA
+ jr z, .asm_5d134
+ CheckEventReuseA EVENT_GOT_TM46
+ jr nz, .asm_5d12c
call z, SaffronGymText_5d068
call DisableWaitingAfterTextDisplay
- jr .asm_34c2c ; 0x5d12a
-.asm_8d2f6 ; 0x5d12c
+ jr .asm_5d15f
+.asm_5d12c
ld hl, SaffronGymText_5d16e
call PrintText
- jr .asm_34c2c ; 0x5d132
-.asm_e3544 ; 0x5d134
+ jr .asm_5d15f
+.asm_5d134
ld hl, SaffronGymText_5d162
call PrintText
ld hl, wd72d
@@ -179,7 +172,7 @@ SaffronGymText1: ; 5d118 (17:5118)
ld hl, SaffronGymText_5d167
ld de, SaffronGymText_5d167
call SaveEndBattleTextPointers
- ldh a, [$8c]
+ ld a, [H_SPRITEINDEX]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
@@ -187,7 +180,7 @@ SaffronGymText1: ; 5d118 (17:5118)
ld [W_GYMLEADERNO], a
ld a, $3
ld [W_SAFFRONGYMCURSCRIPT], a
-.asm_34c2c ; 0x5d15f
+.asm_5d15f
jp TextScriptEnd
SaffronGymText_5d162: ; 5d162 (17:5162)
@@ -195,7 +188,7 @@ SaffronGymText_5d162: ; 5d162 (17:5162)
db "@"
SaffronGymText_5d167: ; 5d167 (17:5167)
- TX_FAR _SaffronGymText_5d167 ; 0xa1c73
+ TX_FAR _SaffronGymText_5d167
db $11 ; play same sound as red giving oak parcel
db $6 ; wait for keypress
db "@"
@@ -219,59 +212,58 @@ SaffronGymText12: ; 5d182 (17:5182)
db "@"
SaffronGymText2: ; 5d187 (17:5187)
- db $08 ; asm
+ TX_ASM
ld hl, SaffronGymTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
SaffronGymText3: ; 5d191 (17:5191)
- db $08 ; asm
+ TX_ASM
ld hl, SaffronGymTrainerHeader1
call TalkToTrainer
jp TextScriptEnd
SaffronGymText4: ; 5d19b (17:519b)
- db $08 ; asm
+ TX_ASM
ld hl, SaffronGymTrainerHeader2
call TalkToTrainer
jp TextScriptEnd
SaffronGymText5: ; 5d1a5 (17:51a5)
- db $08 ; asm
+ TX_ASM
ld hl, SaffronGymTrainerHeader3
call TalkToTrainer
jp TextScriptEnd
SaffronGymText6: ; 5d1af (17:51af)
- db $08 ; asm
+ TX_ASM
ld hl, SaffronGymTrainerHeader4
call TalkToTrainer
jp TextScriptEnd
SaffronGymText7: ; 5d1b9 (17:51b9)
- db $08 ; asm
+ TX_ASM
ld hl, SaffronGymTrainerHeader5
call TalkToTrainer
jp TextScriptEnd
SaffronGymText8: ; 5d1c3 (17:51c3)
- db $08 ; asm
+ TX_ASM
ld hl, SaffronGymTrainerHeader6
call TalkToTrainer
jp TextScriptEnd
SaffronGymText9: ; 5d1cd (17:51cd)
- db $08 ; asm
- ld a, [wd7b3]
- bit 1, a
- jr nz, .asm_13f3c ; 0x5d1d3
+ TX_ASM
+ CheckEvent EVENT_BEAT_SABRINA
+ jr nz, .asm_5d1dd
ld hl, SaffronGymText_5d1e6
call PrintText
- jr .asm_e9907 ; 0x5d1db
-.asm_13f3c ; 0x5d1dd
+ jr .asm_5d1e3
+.asm_5d1dd
ld hl, SaffronGymText_5d1eb
call PrintText
-.asm_e9907 ; 0x5d1e3
+.asm_5d1e3
jp TextScriptEnd
SaffronGymText_5d1e6: ; 5d1e6 (17:51e6)
diff --git a/scripts/saffronhouse1.asm b/scripts/saffronhouse1.asm
index 39a70ebf..3aced3c5 100755
--- a/scripts/saffronhouse1.asm
+++ b/scripts/saffronhouse1.asm
@@ -13,7 +13,7 @@ SaffronHouse1Text1: ; 1dde8 (7:5de8)
SaffronHouse1Text2: ; 1dded (7:5ded)
TX_FAR _SaffronHouse1Text2
- db $8
+ TX_ASM
ld a, PIDGEY
call PlayCry
jp TextScriptEnd
diff --git a/scripts/saffronhouse2.asm b/scripts/saffronhouse2.asm
index 727fd981..2c159190 100755
--- a/scripts/saffronhouse2.asm
+++ b/scripts/saffronhouse2.asm
@@ -5,28 +5,26 @@ SaffronHouse2TextPointers: ; 1de3f (7:5e3f)
dw SaffronHouse2Text1
SaffronHouse2Text1: ; 1de41 (7:5e41)
- db $08 ; asm
- ld a, [wd7bd]
- bit 0, a
- jr nz, .asm_9e72b ; 0x1de47
+ TX_ASM
+ CheckEvent EVENT_GOT_TM29
+ jr nz, .asm_9e72b
ld hl, TM29PreReceiveText
call PrintText
- ld bc,(TM_29 << 8) | 1
+ lb bc, TM_29, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedTM29Text
call PrintText
- ld hl, wd7bd
- set 0, [hl]
- jr .asm_fe4e1 ; 0x1de62
+ SetEvent EVENT_GOT_TM29
+ jr .asm_fe4e1
.BagFull
ld hl, TM29NoRoomText
call PrintText
- jr .asm_fe4e1 ; 0x1de6a
-.asm_9e72b ; 0x1de6c
+ jr .asm_fe4e1
+.asm_9e72b
ld hl, TM29ExplanationText
call PrintText
-.asm_fe4e1 ; 0x1de72
+.asm_fe4e1
jp TextScriptEnd
TM29PreReceiveText: ; 1de75 (7:5e75)
diff --git a/scripts/seafoamislands1.asm b/scripts/seafoamislands1.asm
index 2e64c9d7..f9a2e7fc 100755
--- a/scripts/seafoamislands1.asm
+++ b/scripts/seafoamislands1.asm
@@ -1,42 +1,41 @@
SeafoamIslands1Script: ; 447e9 (11:47e9)
call EnableAutoTextBoxDrawing
- ld hl, wd7e7
- set 0, [hl]
+ SetEvent EVENT_IN_SEAFOAM_ISLANDS
ld hl, wFlags_0xcd60
bit 7, [hl]
res 7, [hl]
- jr z, .asm_4483b ; 0x447f8 $41
+ jr z, .asm_4483b
ld hl, Seafoam1HolesCoords
call CheckBoulderCoords
ret nc
- ld hl, wd7e8
- ld a, [wWhichTrade]
+ EventFlagAddress hl, EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE
+ ld a, [wCoordIndex]
cp $1
- jr nz, .asm_44819 ; 0x44809 $e
- set 6, [hl]
+ jr nz, .asm_44819
+ SetEventReuseHL EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE
ld a, HS_SEAFOAM_ISLANDS_1_BOULDER_1
- ld [wd079], a
+ ld [wObjectToHide], a
ld a, HS_SEAFOAM_ISLANDS_2_BOULDER_1
- ld [wd07a], a
- jr .asm_44825 ; 0x44817 $c
+ ld [wObjectToShow], a
+ jr .asm_44825
.asm_44819
- set 7, [hl]
+ SetEventAfterBranchReuseHL EVENT_SEAFOAM1_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE
ld a, HS_SEAFOAM_ISLANDS_1_BOULDER_2
- ld [wd079], a
+ ld [wObjectToHide], a
ld a, HS_SEAFOAM_ISLANDS_2_BOULDER_2
- ld [wd07a], a
+ ld [wObjectToShow], a
.asm_44825
- ld a, [wd079]
- ld [wcc4d], a
+ ld a, [wObjectToHide]
+ ld [wMissableObjectIndex], a
predef HideObject
- ld a, [wd07a]
- ld [wcc4d], a
+ ld a, [wObjectToShow]
+ ld [wMissableObjectIndex], a
predef_jump ShowObject
.asm_4483b
ld a, $9f
ld [wDungeonWarpDestinationMap], a
ld hl, Seafoam1HolesCoords
- jp Func_46981
+ jp IsPlayerOnDungeonWarp
Seafoam1HolesCoords: ; 44846 (11:4846)
db $06,$11
diff --git a/scripts/seafoamislands2.asm b/scripts/seafoamislands2.asm
index 66fe9297..2c2962f8 100755
--- a/scripts/seafoamislands2.asm
+++ b/scripts/seafoamislands2.asm
@@ -3,38 +3,38 @@ SeafoamIslands2Script: ; 46315 (11:6315)
ld hl, wFlags_0xcd60
bit 7, [hl]
res 7, [hl]
- jr z, .asm_46362 ; 0x4631f $41
+ jr z, .asm_46362
ld hl, Seafoam2HolesCoords
call CheckBoulderCoords
ret nc
- ld hl, wd87f
- ld a, [wWhichTrade]
+ EventFlagAddress hl, EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE
+ ld a, [wCoordIndex]
cp $1
- jr nz, .asm_46340 ; 0x46330 $e
- set 0, [hl]
+ jr nz, .asm_46340
+ SetEventReuseHL EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE
ld a, HS_SEAFOAM_ISLANDS_2_BOULDER_1
- ld [wd079], a
+ ld [wObjectToHide], a
ld a, HS_SEAFOAM_ISLANDS_3_BOULDER_1
- ld [wd07a], a
- jr .asm_4634c ; 0x4633e $c
+ ld [wObjectToShow], a
+ jr .asm_4634c
.asm_46340
- set 1, [hl]
+ SetEventAfterBranchReuseHL EVENT_SEAFOAM2_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE
ld a, HS_SEAFOAM_ISLANDS_2_BOULDER_2
- ld [wd079], a
+ ld [wObjectToHide], a
ld a, HS_SEAFOAM_ISLANDS_3_BOULDER_2
- ld [wd07a], a
+ ld [wObjectToShow], a
.asm_4634c
- ld a, [wd079]
- ld [wcc4d], a
+ ld a, [wObjectToHide]
+ ld [wMissableObjectIndex], a
predef HideObject
- ld a, [wd07a]
- ld [wcc4d], a
+ ld a, [wObjectToShow]
+ ld [wMissableObjectIndex], a
predef_jump ShowObject
.asm_46362
ld a, $a0
ld [wDungeonWarpDestinationMap], a
ld hl, Seafoam2HolesCoords
- jp Func_46981
+ jp IsPlayerOnDungeonWarp
Seafoam2HolesCoords: ; 4636d (11:636d)
db $06,$12
diff --git a/scripts/seafoamislands3.asm b/scripts/seafoamislands3.asm
index fb7d05ba..6dda7f37 100755
--- a/scripts/seafoamislands3.asm
+++ b/scripts/seafoamislands3.asm
@@ -3,38 +3,38 @@ SeafoamIslands3Script: ; 46451 (11:6451)
ld hl, wFlags_0xcd60
bit 7, [hl]
res 7, [hl]
- jr z, .asm_4649e ; 0x4645b $41
+ jr z, .asm_4649e
ld hl, Seafoam3HolesCoords
call CheckBoulderCoords
ret nc
- ld hl, wd880
- ld a, [wWhichTrade]
+ EventFlagAddress hl, EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE
+ ld a, [wCoordIndex]
cp $1
- jr nz, .asm_4647c ; 0x4646c $e
- set 0, [hl]
+ jr nz, .asm_4647c
+ SetEventReuseHL EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE
ld a, HS_SEAFOAM_ISLANDS_3_BOULDER_1
- ld [wd079], a
+ ld [wObjectToHide], a
ld a, HS_SEAFOAM_ISLANDS_4_BOULDER_3
- ld [wd07a], a
- jr .asm_46488 ; 0x4647a $c
+ ld [wObjectToShow], a
+ jr .asm_46488
.asm_4647c
- set 1, [hl]
+ SetEventAfterBranchReuseHL EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE
ld a, HS_SEAFOAM_ISLANDS_3_BOULDER_2
- ld [wd079], a
+ ld [wObjectToHide], a
ld a, HS_SEAFOAM_ISLANDS_4_BOULDER_4
- ld [wd07a], a
+ ld [wObjectToShow], a
.asm_46488
- ld a, [wd079]
- ld [wcc4d], a
+ ld a, [wObjectToHide]
+ ld [wMissableObjectIndex], a
predef HideObject
- ld a, [wd07a]
- ld [wcc4d], a
+ ld a, [wObjectToShow]
+ ld [wMissableObjectIndex], a
predef_jump ShowObject
.asm_4649e
ld a, $a1
ld [wDungeonWarpDestinationMap], a
ld hl, Seafoam3HolesCoords
- jp Func_46981
+ jp IsPlayerOnDungeonWarp
Seafoam3HolesCoords: ; 464a9 (11:64a9)
db $06,$13
diff --git a/scripts/seafoamislands4.asm b/scripts/seafoamislands4.asm
index 7e519f86..f7407e48 100755
--- a/scripts/seafoamislands4.asm
+++ b/scripts/seafoamislands4.asm
@@ -3,39 +3,39 @@ SeafoamIslands4Script: ; 4658d (11:658d)
ld hl, wFlags_0xcd60
bit 7, [hl]
res 7, [hl]
- jr z, .asm_465dc ; 0x46597 $43
+ jr z, .asm_465dc
ld hl, Seafoam4HolesCoords
call CheckBoulderCoords
ret nc
- ld hl, wd881
- ld a, [wWhichTrade]
+ EventFlagAddress hl, EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE
+ ld a, [wCoordIndex]
cp $1
- jr nz, .asm_465b8 ; 0x465a8 $e
- set 0, [hl]
+ jr nz, .asm_465b8
+ SetEventReuseHL EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE
ld a, HS_SEAFOAM_ISLANDS_4_BOULDER_1
- ld [wd079], a
+ ld [wObjectToHide], a
ld a, HS_SEAFOAM_ISLANDS_5_BOULDER_1
- ld [wd07a], a
- jr .asm_465c4 ; 0x465b6 $c
+ ld [wObjectToShow], a
+ jr .asm_465c4
.asm_465b8
- set 1, [hl]
+ SetEventAfterBranchReuseHL EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE
ld a, HS_SEAFOAM_ISLANDS_4_BOULDER_2
- ld [wd079], a
+ ld [wObjectToHide], a
ld a, HS_SEAFOAM_ISLANDS_5_BOULDER_2
- ld [wd07a], a
+ ld [wObjectToShow], a
.asm_465c4
- ld a, [wd079]
- ld [wcc4d], a
+ ld a, [wObjectToHide]
+ ld [wMissableObjectIndex], a
predef HideObject
- ld a, [wd07a]
- ld [wcc4d], a
+ ld a, [wObjectToShow]
+ ld [wMissableObjectIndex], a
predef ShowObject
- jr .asm_465ed ; 0x465da $11
+ jr .asm_465ed
.asm_465dc
ld a, $a2
ld [wDungeonWarpDestinationMap], a
ld hl, Seafoam4HolesCoords
- call Func_46981
+ call IsPlayerOnDungeonWarp
ld a, [wd732]
bit 4, a
ret nz
@@ -56,9 +56,7 @@ SeafoamIslands4ScriptPointers: ; 465fb (11:65fb)
dw SeafoamIslands4Script3
SeafoamIslands4Script0: ; 46603 (11:6603)
- ld a, [wd880]
- and $3
- cp $3
+ CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
ret z
ld a, [W_YCOORD]
cp $8
@@ -79,9 +77,9 @@ SeafoamIslands4Script0: ; 46603 (11:6603)
ret
RLEMovement46632: ; 46632 (11:6632)
- db $80,6
- db $10,5
- db $80,3
+ db D_DOWN,6
+ db D_RIGHT,5
+ db D_DOWN,3
db $ff
SeafoamIslands4Script1: ; 46639 (11:6639)
@@ -93,9 +91,7 @@ SeafoamIslands4Script1: ; 46639 (11:6639)
ret
SeafoamIslands4Script2: ; 46644 (11:6644)
- ld a, [wd880]
- and $3
- cp $3
+ CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
ret z
ld a, [W_XCOORD]
cp $12
@@ -124,10 +120,17 @@ SeafoamIslands4Script2: ; 46644 (11:6644)
ret
RLEData_4667f: ; 4667f (11:667f)
- db $80,$06,$10,$02,$80,$04,$20,$01,$FF
+ db D_DOWN,$06
+ db D_RIGHT,$02
+ db D_DOWN,$04
+ db D_LEFT,$01
+ db $FF
RLEData_46688: ; 46688 (11:6688)
- db $80,$06,$10,$02,$80,$04,$FF
+ db D_DOWN,$06
+ db D_RIGHT,$02
+ db D_DOWN,$04
+ db $FF
SeafoamIslands4Script3: ; 4668f (11:668f)
ld a, [wSimulatedJoypadStatesIndex]
diff --git a/scripts/seafoamislands5.asm b/scripts/seafoamislands5.asm
index b554034b..87942ca0 100755
--- a/scripts/seafoamislands5.asm
+++ b/scripts/seafoamislands5.asm
@@ -27,25 +27,23 @@ SeafoamIslands5Script4: ; 467b7 (11:67b7)
ret
SeafoamIslands5Script0: ; 467c7 (11:67c7)
- ld a, [wd880]
- and $3
- cp $3
+ CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
ret z
ld hl, CoordsData_467fe
call ArePlayerCoordsInArray
ret nc
- ld a, [wWhichTrade]
+ ld a, [wCoordIndex]
cp $3
jr nc, .asm_467e6
- ld a, $40
- ld [wccd4], a
- ld a, $2
+ ld a, NPC_MOVEMENT_UP
+ ld [wSimulatedJoypadStatesEnd + 1], a
+ ld a, 2
jr .asm_467e8
.asm_467e6
- ld a, $1
+ ld a, 1
.asm_467e8
ld [wSimulatedJoypadStatesIndex], a
- ld a, $40
+ ld a, D_UP
ld [wSimulatedJoypadStatesEnd], a
call StartSimulatingJoypadStates
ld hl, W_FLAGS_D733
@@ -72,16 +70,14 @@ SeafoamIslands5Script1: ; 46807 (11:6807)
ret
SeafoamIslands5Script2: ; 46816 (11:6816)
- ld a, [wd881]
- and $3
- cp $3
+ CheckBothEventsSet EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE
ld a, $0
jr z, .asm_46849
ld hl, CoordsData_4684d
call ArePlayerCoordsInArray
ld a, $0
jr nc, .asm_46849
- ld a, [wWhichTrade]
+ ld a, [wCoordIndex]
cp $1
jr nz, .asm_46837
ld de, RLEMovementData_46859
@@ -105,15 +101,15 @@ CoordsData_4684d: ; 4684d (11:684d)
db $FF
RLEMovementData_46852: ; 46852 (11:6852)
- db $40,$03
- db $10,$02
- db $40,$01
+ db D_UP,$03
+ db D_RIGHT,$02
+ db D_UP,$01
db $FF
RLEMovementData_46859: ; 46859 (11:6859)
- db $40,$03
- db $10,$03
- db $40,$01
+ db D_UP,$03
+ db D_RIGHT,$03
+ db D_UP,$01
db $FF
SeafoamIslands5Script3: ; 46860 (11:6860)
@@ -143,18 +139,18 @@ SeafoamIslands5TextPointers: ; 4687c (11:687c)
SeafoamIslands5TrainerHeaders: ; 46886 (11:6886)
SeafoamIslands5TrainerHeader0: ; 46886 (11:6886)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SEAFOAM_ISLANDS_5_TRAINER_0
db ($0 << 4) ; trainer's view range
- dw wd882 ; flag's byte
- dw SeafoamIslands5BattleText2 ; 0x68a2 TextBeforeBattle
- dw SeafoamIslands5BattleText2 ; 0x68a2 TextAfterBattle
- dw SeafoamIslands5BattleText2 ; 0x68a2 TextEndBattle
- dw SeafoamIslands5BattleText2 ; 0x68a2 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SEAFOAM_ISLANDS_5_TRAINER_0
+ dw SeafoamIslands5BattleText2 ; TextBeforeBattle
+ dw SeafoamIslands5BattleText2 ; TextAfterBattle
+ dw SeafoamIslands5BattleText2 ; TextEndBattle
+ dw SeafoamIslands5BattleText2 ; TextEndBattle
db $ff
SeafoamIslands5Text3: ; 46893 (11:6893)
- db $08 ; asm
+ TX_ASM
ld hl, SeafoamIslands5TrainerHeader0
call TalkToTrainer
ld a, $4
@@ -163,7 +159,7 @@ SeafoamIslands5Text3: ; 46893 (11:6893)
SeafoamIslands5BattleText2: ; 468a2 (11:68a2)
TX_FAR _SeafoamIslands5BattleText2
- db $8
+ TX_ASM
ld a, ARTICUNO
call PlayCry
call WaitForSoundToFinish
diff --git a/scripts/silphco1.asm b/scripts/silphco1.asm
index 8a399a4c..cfd51dc1 100755
--- a/scripts/silphco1.asm
+++ b/scripts/silphco1.asm
@@ -1,14 +1,11 @@
SilphCo1Script: ; 5d44e (17:544e)
call EnableAutoTextBoxDrawing
- ld a, [wd838]
- bit 7, a
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
ret z
- ld hl, wd7b9
- bit 7, [hl]
- set 7, [hl]
+ CheckAndSetEvent EVENT_SILPH_CO_RECEPTIONIST_AT_DESK
ret nz
- ld a, HS_SILPH_CO_1F_1
- ld [wcc4d], a
+ ld a, HS_SILPH_CO_1F_RECEPTIONIST
+ ld [wMissableObjectIndex], a
predef_jump ShowObject
SilphCo1TextPointers: ; 5d469 (17:5469)
diff --git a/scripts/silphco10.asm b/scripts/silphco10.asm
index 7d044aca..a6f2f860 100755
--- a/scripts/silphco10.asm
+++ b/scripts/silphco10.asm
@@ -13,26 +13,25 @@ SilphCo10Script_5a14f: ; 5a14f (16:614f)
bit 5, [hl]
res 5, [hl]
ret z
- ld hl, DataTable_5a173 ; $6173
+ ld hl, SilphCo10GateCoords
call SilphCo2Script_59d43
call SilphCo10Text_5a176
- ld a, [wd836]
- bit 0, a
+ CheckEvent EVENT_SILPH_CO_10_UNLOCKED_DOOR
ret nz
ld a, $54
- ld [wd09f], a
- ld bc, $405
+ ld [wNewTileBlockID], a
+ lb bc, 4, 5
predef_jump ReplaceTileBlock
-DataTable_5a173: ; 5a173 (16:6173)
- db $04,$05,$FF
+SilphCo10GateCoords: ; 5a173 (16:6173)
+ db $04,$05
+ db $FF
SilphCo10Text_5a176: ; 5a176 (16:6176)
ld a, [$ffe0]
and a
ret z
- ld hl, wd836
- set 0, [hl]
+ SetEvent EVENT_SILPH_CO_10_UNLOCKED_DOOR
ret
SilphCo10ScriptPointers: ; 5a180 (16:6180)
@@ -44,47 +43,46 @@ SilphCo10TextPointers: ; 5a186 (16:6186)
dw SilphCo10Text1
dw SilphCo10Text2
dw SilphCo10Text3
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
SilphCo10TrainerHeaders: ; 5a192 (16:6192)
SilphCo10TrainerHeader0: ; 5a192 (16:6192)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_10F_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd835 ; flag's byte
- dw SilphCo10BattleText1 ; 0x61dd TextBeforeBattle
- dw SilphCo10AfterBattleText1 ; 0x61e7 TextAfterBattle
- dw SilphCo10EndBattleText1 ; 0x61e2 TextEndBattle
- dw SilphCo10EndBattleText1 ; 0x61e2 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_10F_TRAINER_0
+ dw SilphCo10BattleText1 ; TextBeforeBattle
+ dw SilphCo10AfterBattleText1 ; TextAfterBattle
+ dw SilphCo10EndBattleText1 ; TextEndBattle
+ dw SilphCo10EndBattleText1 ; TextEndBattle
SilphCo10TrainerHeader1: ; 5a19e (16:619e)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_10F_TRAINER_1
db ($4 << 4) ; trainer's view range
- dw wd835 ; flag's byte
- dw SilphCo10BattleText2 ; 0x61ec TextBeforeBattle
- dw SilphCo10AfterBattleText2 ; 0x61f6 TextAfterBattle
- dw SilphCo10EndBattleText2 ; 0x61f1 TextEndBattle
- dw SilphCo10EndBattleText2 ; 0x61f1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_10F_TRAINER_1
+ dw SilphCo10BattleText2 ; TextBeforeBattle
+ dw SilphCo10AfterBattleText2 ; TextAfterBattle
+ dw SilphCo10EndBattleText2 ; TextEndBattle
+ dw SilphCo10EndBattleText2 ; TextEndBattle
db $ff
SilphCo10Text1: ; 5a1ab (16:61ab)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo10TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
SilphCo10Text2: ; 5a1b5 (16:61b5)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo10TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
SilphCo10Text3: ; 5a1bf (16:61bf)
- db $08 ; asm
- ld a, [wd838]
- bit 7, a
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
ld hl, SilphCo10Text_5a1d8
jr nz, .asm_cf85f
ld hl, SilphCo10Text_5a1d3
diff --git a/scripts/silphco11.asm b/scripts/silphco11.asm
index 7bb6e448..4c83c20d 100755
--- a/scripts/silphco11.asm
+++ b/scripts/silphco11.asm
@@ -13,19 +13,19 @@ SilphCo11Script_62110: ; 62110 (18:6110)
bit 5, [hl]
res 5, [hl]
ret z
- ld hl, DataTable_62134 ; $6134
+ ld hl, SilphCo11GateCoords
call SilphCo11Script_62137
call SilphCo11Script_62163
- ld a, [wd838]
- bit 0, a
+ CheckEvent EVENT_SILPH_CO_11_UNLOCKED_DOOR
ret nz
ld a, $20
- ld [wd09f], a
- ld bc, $603
+ ld [wNewTileBlockID], a
+ lb bc, 6, 3
predef_jump ReplaceTileBlock
-DataTable_62134: ; 62134 (18:6134)
- db $06,$03,$FF
+SilphCo11GateCoords: ; 62134 (18:6134)
+ db $06,$03
+ db $FF
SilphCo11Script_62137: ; 62137 (18:6137)
push hl
@@ -67,29 +67,28 @@ SilphCo11Script_62163: ; 62163 (18:6163)
ld a, [$ffe0]
and a
ret z
- ld hl, wd838
- set 0, [hl]
+ SetEvent EVENT_SILPH_CO_11_UNLOCKED_DOOR
ret
SilphCo11Script_6216d: ; 6216d (18:616d)
- ld hl, MissableObjectIDs_6219b ; $619b
+ ld hl, MissableObjectIDs_6219b
.asm_62170
ld a, [hli]
cp $ff
jr z, .asm_62181
push hl
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
pop hl
jr .asm_62170
.asm_62181
- ld hl, MissableObjectIDs_62194 ; $6194
+ ld hl, MissableObjectIDs_62194
.asm_62184
ld a, [hli]
cp $ff
ret z
push hl
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
pop hl
jr .asm_62184
@@ -164,23 +163,22 @@ SilphCo11ScriptPointers: ; 621cf (18:61cf)
dw SilphCo11Script5
SilphCo11Script0: ; 621db (18:61db)
- ld a, [wd838]
- bit 7, a
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
ret nz
- ld hl, CoordsData_62211 ; $6211
+ ld hl, CoordsData_62211
call ArePlayerCoordsInArray
jp nc, CheckFightingMapTrainers
- ld a, [wWhichTrade] ; wWhichTrade
+ ld a, [wCoordIndex]
ld [wcf0d], a
xor a
ld [hJoyHeld], a
ld a, $f0
ld [wJoyIgnore], a
ld a, $3
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $3
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
ld de, MovementData_62216
call MoveSprite
@@ -193,43 +191,45 @@ CoordsData_62211: ; 62211 (18:6211)
db $FF
MovementData_62216: ; 62216 (18:6216)
- db $00,$00,$00,$FF
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
SilphCo11Script_6221a: ; 6221a (18:621a)
- ld [wd528], a
+ ld [wPlayerMovingDirection], a
ld a, $3
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
ld a, b
- ld [$ff8d], a
+ ld [hSpriteFacingDirection], a
jp SetSpriteFacingDirectionAndDelay
SilphCo11Script5: ; 62227 (18:6227)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, SilphCo11Script_621c4
ld a, [wcf0d]
cp $1
jr z, .asm_6223c
- ld a, $2
- ld b, $c
+ ld a, PLAYER_DIR_LEFT
+ ld b, SPRITE_FACING_RIGHT
jr .asm_62240
.asm_6223c
- ld a, $8
- ld b, $0
+ ld a, PLAYER_DIR_UP
+ ld b, SPRITE_FACING_DOWN
.asm_62240
call SilphCo11Script_6221a
ld a, $f0
ld [wJoyIgnore], a
ld a, $6
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call GBFadeOutToBlack
call SilphCo11Script_6216d
call UpdateSprites
call Delay3
call GBFadeInFromBlack
- ld hl, wd838
- set 7, [hl]
+ SetEvent EVENT_BEAT_SILPH_CO_GIOVANNI
xor a
ld [wJoyIgnore], a
jp SilphCo11Script_621c8
@@ -239,17 +239,17 @@ SilphCo11Script3: ; 6226a (18:626a)
bit 0, a
ret nz
ld a, $3
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
ld a, [wcf0d]
cp $1
jr z, .asm_62284
- ld a, $2
- ld b, $c
+ ld a, PLAYER_DIR_LEFT
+ ld b, SPRITE_FACING_RIGHT
jr .asm_62288
.asm_62284
- ld a, $8
- ld b, $0
+ ld a, PLAYER_DIR_UP
+ ld b, SPRITE_FACING_DOWN
.asm_62288
call SilphCo11Script_6221a
call Delay3
@@ -260,10 +260,10 @@ SilphCo11Script4: ; 62293 (18:6293)
ld hl, wd72d
set 6, [hl]
set 7, [hl]
- ld hl, SilphCo10Text_62330 ; $6330
- ld de, SilphCo10Text_62330 ; $6330
+ ld hl, SilphCo10Text_62330
+ ld de, SilphCo10Text_62330
call SaveEndBattleTextPointers
- ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c
+ ld a, [H_SPRITEINDEX]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
@@ -282,48 +282,46 @@ SilphCo11TextPointers: ; 622b7 (18:62b7)
SilphCo11TrainerHeaders: ; 622c3 (18:62c3)
SilphCo11TrainerHeader0: ; 622c3 (18:62c3)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_11F_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd837 ; flag's byte
- dw SilphCo11BattleText1 ; 0x6344 TextBeforeBattle
- dw SilphCo11AfterBattleText1 ; 0x634e TextAfterBattle
- dw SilphCo11EndBattleText1 ; 0x6349 TextEndBattle
- dw SilphCo11EndBattleText1 ; 0x6349 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_11F_TRAINER_0
+ dw SilphCo11BattleText1 ; TextBeforeBattle
+ dw SilphCo11AfterBattleText1 ; TextAfterBattle
+ dw SilphCo11EndBattleText1 ; TextEndBattle
+ dw SilphCo11EndBattleText1 ; TextEndBattle
SilphCo11TrainerHeader1: ; 622cf (18:62cf)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_11F_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd837 ; flag's byte
- dw SilphCo11BattleText2 ; 0x635d TextBeforeBattle
- dw SilphCo11AfterBattleText2 ; 0x6367 TextAfterBattle
- dw SilphCo11EndBattleText2 ; 0x6362 TextEndBattle
- dw SilphCo11EndBattleText2 ; 0x6362 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_11F_TRAINER_1
+ dw SilphCo11BattleText2 ; TextBeforeBattle
+ dw SilphCo11AfterBattleText2 ; TextAfterBattle
+ dw SilphCo11EndBattleText2 ; TextEndBattle
+ dw SilphCo11EndBattleText2 ; TextEndBattle
db $ff
SilphCo11Text1: ; 622dc (18:62dc)
- db $08 ; asm
- ld a, [wd838]
- bit 5, a
+ TX_ASM
+ CheckEvent EVENT_GOT_MASTER_BALL
jp nz, .asm_62308
ld hl, SilphCoPresidentText
call PrintText
- ld bc, (MASTER_BALL << 8) | 1
+ lb bc, MASTER_BALL, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedSilphCoMasterBallText
call PrintText
- ld hl, wd838
- set 5, [hl]
- jr .asm_fd405 ; 0x622fe
+ SetEvent EVENT_GOT_MASTER_BALL
+ jr .asm_6230e
.BagFull
ld hl, SilphCoMasterBallNoRoomText
call PrintText
- jr .asm_fd405 ; 0x62306
-.asm_62308 ; 0x62308
+ jr .asm_6230e
+.asm_62308
ld hl, SilphCo10Text_6231c
call PrintText
-.asm_fd405 ; 0x6230e
+.asm_6230e
jp TextScriptEnd
SilphCoPresidentText: ; 62311 (18:6311)
@@ -359,7 +357,7 @@ SilphCo11Text6: ; 62335 (18:6335)
db "@"
SilphCo11Text4: ; 6233a (18:633a)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo11TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -377,7 +375,7 @@ SilphCo11AfterBattleText1: ; 6234e (18:634e)
db "@"
SilphCo11Text5: ; 62353 (18:6353)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo11TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -395,7 +393,7 @@ SilphCo11AfterBattleText2: ; 62367 (18:6367)
db "@"
SilphCo10Text_6236c: ; 6236c (18:636c)
- db $8
+ TX_ASM
ld hl, SilphCo10Text_6237b
call PrintText
ld a, PORYGON
diff --git a/scripts/silphco2.asm b/scripts/silphco2.asm
index 63803acd..ecb3b5a5 100755
--- a/scripts/silphco2.asm
+++ b/scripts/silphco2.asm
@@ -13,28 +13,29 @@ SilphCo2Script_59d07: ; 59d07 (16:5d07)
bit 5, [hl]
res 5, [hl]
ret z
- ld hl, DataTable_59d3e
+ ld hl, SilphCo2GateCoords
call SilphCo2Script_59d43
call SilphCo2Script_59d6f
- ld a, [wd826]
- bit 5, a
+ CheckEvent EVENT_SILPH_CO_2_UNLOCKED_DOOR1
jr nz, .asm_59d2e
push af
ld a, $54
- ld [wd09f], a
- ld bc, $0202
+ ld [wNewTileBlockID], a
+ lb bc, 2, 2
predef ReplaceTileBlock
pop af
.asm_59d2e
- bit 6, a
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_2_UNLOCKED_DOOR2, EVENT_SILPH_CO_2_UNLOCKED_DOOR1
ret nz
ld a, $54
- ld [wd09f], a
- ld bc, $0502
+ ld [wNewTileBlockID], a
+ lb bc, 5, 2
predef_jump ReplaceTileBlock
-DataTable_59d3e: ; 59d3e (16:5d3e)
- db $02,$02,$05,$02,$FF
+SilphCo2GateCoords: ; 59d3e (16:5d3e)
+ db $02,$02
+ db $05,$02
+ db $FF
SilphCo2Script_59d43: ; 59d43 (16:5d43)
push hl
@@ -73,16 +74,16 @@ SilphCo2Script_59d43: ; 59d43 (16:5d43)
ret
SilphCo2Script_59d6f: ; 59d6f (16:5d6f)
- ld hl, wd826
+ EventFlagAddress hl, EVENT_SILPH_CO_2_UNLOCKED_DOOR1
ld a, [$ffe0]
and a
ret z
cp $1
- jr nz, .asm_59d7d
- set 5, [hl]
+ jr nz, .next
+ SetEventReuseHL EVENT_SILPH_CO_2_UNLOCKED_DOOR1
ret
-.asm_59d7d
- set 6, [hl]
+.next
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_2_UNLOCKED_DOOR2, EVENT_SILPH_CO_2_UNLOCKED_DOOR1
ret
SilphCo2ScriptPointers: ; 59d80 (16:5d80)
@@ -99,61 +100,59 @@ SilphCo2TextPointers: ; 59d86 (16:5d86)
SilphCo2TrainerHeaders: ; 59d90 (16:5d90)
SilphCo2TrainerHeader0: ; 59d90 (16:5d90)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_2F_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd825 ; flag's byte
- dw SilphCo2BattleText1 ; 0x5e2a TextBeforeBattle
- dw SilphCo2AfterBattleText1 ; 0x5e34 TextAfterBattle
- dw SilphCo2EndBattleText1 ; 0x5e2f TextEndBattle
- dw SilphCo2EndBattleText1 ; 0x5e2f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_2F_TRAINER_0
+ dw SilphCo2BattleText1 ; TextBeforeBattle
+ dw SilphCo2AfterBattleText1 ; TextAfterBattle
+ dw SilphCo2EndBattleText1 ; TextEndBattle
+ dw SilphCo2EndBattleText1 ; TextEndBattle
SilphCo2TrainerHeader1: ; 59d9c (16:5d9c)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_2F_TRAINER_1
db ($4 << 4) ; trainer's view range
- dw wd825 ; flag's byte
- dw SilphCo2BattleText2 ; 0x5e39 TextBeforeBattle
- dw SilphCo2AfterBattleText2 ; 0x5e43 TextAfterBattle
- dw SilphCo2EndBattleText2 ; 0x5e3e TextEndBattle
- dw SilphCo2EndBattleText2 ; 0x5e3e TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_2F_TRAINER_1
+ dw SilphCo2BattleText2 ; TextBeforeBattle
+ dw SilphCo2AfterBattleText2 ; TextAfterBattle
+ dw SilphCo2EndBattleText2 ; TextEndBattle
+ dw SilphCo2EndBattleText2 ; TextEndBattle
SilphCo2TrainerHeader2: ; 59da8 (16:5da8)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_2F_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd825 ; flag's byte
- dw SilphCo2BattleText3 ; 0x5e48 TextBeforeBattle
- dw SilphCo2AfterBattleText3 ; 0x5e52 TextAfterBattle
- dw SilphCo2EndBattleText3 ; 0x5e4d TextEndBattle
- dw SilphCo2EndBattleText3 ; 0x5e4d TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_2F_TRAINER_2
+ dw SilphCo2BattleText3 ; TextBeforeBattle
+ dw SilphCo2AfterBattleText3 ; TextAfterBattle
+ dw SilphCo2EndBattleText3 ; TextEndBattle
+ dw SilphCo2EndBattleText3 ; TextEndBattle
SilphCo2TrainerHeader3: ; 59db4 (16:5db4)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_2F_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd825 ; flag's byte
- dw SilphCo2BattleText4 ; 0x5e57 TextBeforeBattle
- dw SilphCo2AfterBattleText4 ; 0x5e61 TextAfterBattle
- dw SilphCo2EndBattleText4 ; 0x5e5c TextEndBattle
- dw SilphCo2EndBattleText4 ; 0x5e5c TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_2F_TRAINER_3
+ dw SilphCo2BattleText4 ; TextBeforeBattle
+ dw SilphCo2AfterBattleText4 ; TextAfterBattle
+ dw SilphCo2EndBattleText4 ; TextEndBattle
+ dw SilphCo2EndBattleText4 ; TextEndBattle
db $ff
SilphCo2Text1: ; 59dc1 (16:5dc1)
- db $08 ; asm
- ld a, [wd826]
- bit 7, a
- jr nz, asm_b8a0d ; 0x59dc7
+ TX_ASM
+ CheckEvent EVENT_GOT_TM36
+ jr nz, .asm_59de4
ld hl, SilphCo2Text_59ded
call PrintText
- ld bc, (TM_36 << 8) | 1
+ lb bc, TM_36, 1
call GiveItem
ld hl, TM36NoRoomText
- jr nc, asm_2c1e0 ; 0x59dd8
- ld hl, wd826
- set 7, [hl]
+ jr nc, .asm_59de7
+ SetEvent EVENT_GOT_TM36
ld hl, ReceivedTM36Text
- jr asm_2c1e0 ; 0x59de2
-asm_b8a0d ; 0x59de4
+ jr .asm_59de7
+.asm_59de4
ld hl, TM36ExplanationText
-asm_2c1e0 ; 0x59de7
+.asm_59de7
call PrintText
jp TextScriptEnd
@@ -174,25 +173,25 @@ TM36NoRoomText: ; 59dfd (16:5dfd)
db "@"
SilphCo2Text2: ; 59e02 (16:5e02)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo2TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
SilphCo2Text3: ; 59e0c (16:5e0c)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo2TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
SilphCo2Text4: ; 59e16 (16:5e16)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo2TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
SilphCo2Text5: ; 59e20 (16:5e20)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo2TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/silphco3.asm b/scripts/silphco3.asm
index 7b0c67c1..bdaac452 100755
--- a/scripts/silphco3.asm
+++ b/scripts/silphco3.asm
@@ -13,40 +13,41 @@ SilphCo3Script_59f71: ; 59f71 (16:5f71)
bit 5, [hl]
res 5, [hl]
ret z
- ld hl, DataTable_59fa8 ; $5fa8
+ ld hl, SilphCo3GateCoords
call SilphCo2Script_59d43
call SilphCo3Script_59fad
- ld a, [wd828]
- bit 0, a
+ CheckEvent EVENT_SILPH_CO_3_UNLOCKED_DOOR1
jr nz, .asm_59f98
push af
ld a, $5f
- ld [wd09f], a
- ld bc, $404
+ ld [wNewTileBlockID], a
+ lb bc, 4, 4
predef ReplaceTileBlock
pop af
.asm_59f98
- bit 1, a
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_3_UNLOCKED_DOOR2, EVENT_SILPH_CO_3_UNLOCKED_DOOR1
ret nz
ld a, $5f
- ld [wd09f], a
- ld bc, $408
+ ld [wNewTileBlockID], a
+ lb bc, 4, 8
predef_jump ReplaceTileBlock
-DataTable_59fa8: ; 59fa8 (16:5fa8)
- db $04,$04,$04,$08,$FF
+SilphCo3GateCoords: ; 59fa8 (16:5fa8)
+ db $04,$04
+ db $04,$08
+ db $FF
SilphCo3Script_59fad: ; 59fad (16:5fad)
- ld hl, wd828
+ EventFlagAddress hl, EVENT_SILPH_CO_3_UNLOCKED_DOOR1
ld a, [$ffe0]
and a
ret z
cp $1
- jr nz, .asm_59fbb
- set 0, [hl]
+ jr nz, .next
+ SetEventReuseHL EVENT_SILPH_CO_3_UNLOCKED_DOOR1
ret
-.asm_59fbb
- set 1, [hl]
+.next
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_3_UNLOCKED_DOOR2, EVENT_SILPH_CO_3_UNLOCKED_DOOR1
ret
SilphCo3ScriptPointers: ; 59fbe (16:5fbe)
@@ -58,37 +59,36 @@ SilphCo3TextPointers: ; 59fc4 (16:5fc4)
dw SilphCo3Text1
dw SilphCo3Text2
dw SilphCo3Text3
- dw Predef5CText
+ dw PickUpItemText
SilphCo3TrainerHeaders: ; 59fcc (16:5fcc)
SilphCo3TrainerHeader0: ; 59fcc (16:5fcc)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_3F_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd827 ; flag's byte
- dw SilphCo3BattleText1 ; 0x600d TextBeforeBattle
- dw SilphCo3AfterBattleText1 ; 0x6017 TextAfterBattle
- dw SilphCo3EndBattleText1 ; 0x6012 TextEndBattle
- dw SilphCo3EndBattleText1 ; 0x6012 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_3F_TRAINER_0
+ dw SilphCo3BattleText1 ; TextBeforeBattle
+ dw SilphCo3AfterBattleText1 ; TextAfterBattle
+ dw SilphCo3EndBattleText1 ; TextEndBattle
+ dw SilphCo3EndBattleText1 ; TextEndBattle
SilphCo3TrainerHeader1: ; 59fd8 (16:5fd8)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_3F_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd827 ; flag's byte
- dw SilphCo3BattleText2 ; 0x6026 TextBeforeBattle
- dw SilphCo3AfterBattleText2 ; 0x6030 TextAfterBattle
- dw SilphCo3EndBattleText2 ; 0x602b TextEndBattle
- dw SilphCo3EndBattleText2 ; 0x602b TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_3F_TRAINER_1
+ dw SilphCo3BattleText2 ; TextBeforeBattle
+ dw SilphCo3AfterBattleText2 ; TextAfterBattle
+ dw SilphCo3EndBattleText2 ; TextEndBattle
+ dw SilphCo3EndBattleText2 ; TextEndBattle
db $ff
SilphCo3Text1: ; 59fe5 (16:5fe5)
- db $08 ; asm
- ld a, [wd838]
- bit 7, a
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
ld hl, SilphCo3Text_59ffe
- jr nz, asm_8c56f ; 0x59fee
+ jr nz, .asm_59fee
ld hl, SilphCo3Text_59ff9
-asm_8c56f ; 0x59ff3
+.asm_59fee
call PrintText
jp TextScriptEnd
@@ -101,7 +101,7 @@ SilphCo3Text_59ffe: ; 59ffe (16:5ffe)
db "@"
SilphCo3Text2: ; 5a003 (16:6003)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo3TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -119,7 +119,7 @@ SilphCo3AfterBattleText1: ; 5a017 (16:6017)
db "@"
SilphCo3Text3: ; 5a01c (16:601c)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo3TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/silphco4.asm b/scripts/silphco4.asm
index 15a46dd3..0dad6f6b 100755
--- a/scripts/silphco4.asm
+++ b/scripts/silphco4.asm
@@ -13,28 +13,29 @@ SilphCo4Script_19d21: ; 19d21 (6:5d21)
bit 5, [hl]
res 5, [hl]
ret z
- ld hl, SilphCo4Data19d58
+ ld hl, SilphCo4GateCoords
call SilphCo4Script_19d5d
call SilphCo4Script_19d89
- ld a, [wd82a]
- bit 0, a
+ CheckEvent EVENT_SILPH_CO_4_UNLOCKED_DOOR1
jr nz, .asm_19d48
push af
ld a, $54
- ld [wd09f], a
- ld bc, $0602
+ ld [wNewTileBlockID], a
+ lb bc, 6, 2
predef ReplaceTileBlock
pop af
.asm_19d48
- bit 1, a
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_4_UNLOCKED_DOOR2, EVENT_SILPH_CO_4_UNLOCKED_DOOR1
ret nz
ld a, $54
- ld [wd09f], a
- ld bc, $0406
+ ld [wNewTileBlockID], a
+ lb bc, 4, 6
predef_jump ReplaceTileBlock
-SilphCo4Data19d58: ; 19d58 (6:5d58)
- db $06, $02, $04, $06, $ff
+SilphCo4GateCoords: ; 19d58 (6:5d58)
+ db $06,$02
+ db $04,$06
+ db $FF
SilphCo4Script_19d5d: ; 19d5d (6:5d5d)
push hl
@@ -49,19 +50,19 @@ SilphCo4Script_19d5d: ; 19d5d (6:5d5d)
.asm_19d69
ld a, [hli]
cp $ff
- jr z, .asm_19d85 ; 0x19d6c $17
+ jr z, .asm_19d85
push hl
ld hl, $ffe0
inc [hl]
pop hl
cp b
- jr z, .asm_19d7a ; 0x19d75 $3
+ jr z, .asm_19d7a
inc hl
- jr .asm_19d69 ; 0x19d78 $ef
+ jr .asm_19d69
.asm_19d7a
ld a, [hli]
cp c
- jr nz, .asm_19d69 ; 0x19d7c $eb
+ jr nz, .asm_19d69
ld hl, wCardKeyDoorY
xor a
ld [hli], a
@@ -73,16 +74,16 @@ SilphCo4Script_19d5d: ; 19d5d (6:5d5d)
ret
SilphCo4Script_19d89: ; 19d89 (6:5d89)
- ld hl, wd82a
+ EventFlagAddress hl, EVENT_SILPH_CO_4_UNLOCKED_DOOR1
ld a, [$ffe0]
and a
ret z
cp $1
- jr nz, .asm_19d97 ; 0x19d92 $3
- set 0, [hl]
+ jr nz, .next
+ SetEventReuseHL EVENT_SILPH_CO_4_UNLOCKED_DOOR1
ret
-.asm_19d97
- set 1, [hl]
+.next
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_4_UNLOCKED_DOOR2, EVENT_SILPH_CO_4_UNLOCKED_DOOR1
ret
SilphCo4ScriptPointers: ; 19d9a (6:5d9a)
@@ -95,42 +96,42 @@ SilphCo4TextPointers: ; 19da0 (6:5da0)
dw SilphCo4Text2
dw SilphCo4Text3
dw SilphCo4Text4
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
SilphCo4TrainerHeaders: ; 19dae (6:5dae)
SilphCo4TrainerHeader0: ; 19dae (6:5dae)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_4F_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd829 ; flag's byte
- dw SilphCo4BattleText2 ; 0x5df4 TextBeforeBattle
- dw SilphCo4AfterBattleText2 ; 0x5dfe TextAfterBattle
- dw SilphCo4EndBattleText2 ; 0x5df9 TextEndBattle
- dw SilphCo4EndBattleText2 ; 0x5df9 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_4F_TRAINER_0
+ dw SilphCo4BattleText2 ; TextBeforeBattle
+ dw SilphCo4AfterBattleText2 ; TextAfterBattle
+ dw SilphCo4EndBattleText2 ; TextEndBattle
+ dw SilphCo4EndBattleText2 ; TextEndBattle
SilphCo4TrainerHeader2: ; 19dba (6:5dba)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_4F_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd829 ; flag's byte
- dw SilphCo4BattleText3 ; 0x5e0d TextBeforeBattle
- dw SilphCo4AfterBattleText3 ; 0x5e17 TextAfterBattle
- dw SilphCo4EndBattleText3 ; 0x5e12 TextEndBattle
- dw SilphCo4EndBattleText3 ; 0x5e12 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_4F_TRAINER_2
+ dw SilphCo4BattleText3 ; TextBeforeBattle
+ dw SilphCo4AfterBattleText3 ; TextAfterBattle
+ dw SilphCo4EndBattleText3 ; TextEndBattle
+ dw SilphCo4EndBattleText3 ; TextEndBattle
SilphCo4TrainerHeader3: ; 19dc6 (6:5dc6)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_4F_TRAINER_3
db ($4 << 4) ; trainer's view range
- dw wd829 ; flag's byte
- dw SilphCo4BattleText4 ; 0x5e26 TextBeforeBattle
- dw SilphCo4AfterBattleText4 ; 0x5e30 TextAfterBattle
- dw SilphCo4EndBattleText4 ; 0x5e2b TextEndBattle
- dw SilphCo4EndBattleText4 ; 0x5e2b TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_4F_TRAINER_3
+ dw SilphCo4BattleText4 ; TextBeforeBattle
+ dw SilphCo4AfterBattleText4 ; TextAfterBattle
+ dw SilphCo4EndBattleText4 ; TextEndBattle
+ dw SilphCo4EndBattleText4 ; TextEndBattle
db $ff
SilphCo4Text1: ; 19dd3 (6:5dd3)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo4Text_19de0
ld de, SilphCo4Text_19de5
call SilphCo6Script_1a22f
@@ -145,7 +146,7 @@ SilphCo4Text_19de5: ; 19de5 (6:5de5)
db "@"
SilphCo4Text2: ; 19dea (6:5dea)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo4TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -163,7 +164,7 @@ SilphCo4AfterBattleText2: ; 19dfe (6:5dfe)
db "@"
SilphCo4Text3: ; 19e03 (6:5e03)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo4TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -181,7 +182,7 @@ SilphCo4AfterBattleText3: ; 19e17 (6:5e17)
db "@"
SilphCo4Text4: ; 19e1c (6:5e1c)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo4TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/silphco5.asm b/scripts/silphco5.asm
index 0b63708b..7380f98f 100755
--- a/scripts/silphco5.asm
+++ b/scripts/silphco5.asm
@@ -13,54 +13,56 @@ SilphCo5Script_19f4d: ; 19f4d (6:5f4d)
bit 5, [hl]
res 5, [hl]
ret z
- ld hl, SilphCo5Coords
+ ld hl, SilphCo5GateCoords
call SilphCo4Script_19d5d
call SilphCo5Script_19f9e
- ld a, [wd82c]
- bit 0, a
- jr nz, .asm_19f74 ; 0x19f63 $f
+ CheckEvent EVENT_SILPH_CO_5_UNLOCKED_DOOR1
+ jr nz, .asm_19f74
push af
ld a, $5f
- ld [wd09f], a
- ld bc, $0203
+ ld [wNewTileBlockID], a
+ lb bc, 2, 3
predef ReplaceTileBlock
pop af
.asm_19f74
- bit 1, a
- jr nz, .asm_19f87 ; 0x19f76 $f
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_5_UNLOCKED_DOOR2, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
+ jr nz, .asm_19f87
push af
ld a, $5f
- ld [wd09f], a
- ld bc, $0603
+ ld [wNewTileBlockID], a
+ lb bc, 6, 3
predef ReplaceTileBlock
pop af
.asm_19f87
- bit 2, a
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_5_UNLOCKED_DOOR3, EVENT_SILPH_CO_5_UNLOCKED_DOOR2
ret nz
ld a, $5f
- ld [wd09f], a
- ld bc, $0507
+ ld [wNewTileBlockID], a
+ lb bc, 5, 7
predef_jump ReplaceTileBlock
-SilphCo5Coords: ; 19f97 (6:5f97) ; coords?
- db $02, $03, $06, $03, $05, $07, $ff
+SilphCo5GateCoords: ; 19f97 (6:5f97)
+ db $02,$03
+ db $06,$03
+ db $05,$07
+ db $FF
SilphCo5Script_19f9e: ; 19f9e (6:5f9e)
- ld hl, wd82c
+ EventFlagAddress hl, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
ld a, [$ffe0]
and a
ret z
cp $1
- jr nz, .asm_19fac ; 0x19fa7 $3
- set 0, [hl]
+ jr nz, .next1
+ SetEventReuseHL EVENT_SILPH_CO_5_UNLOCKED_DOOR1
ret
-.asm_19fac
+.next1
cp $2
- jr nz, .asm_19fb3 ; 0x19fae $3
- set 1, [hl]
+ jr nz, .next2
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_5_UNLOCKED_DOOR2, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
ret
-.asm_19fb3
- set 2, [hl]
+.next2
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_5_UNLOCKED_DOOR3, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
ret
SilphCo5ScriptPointers: ; 19fb6 (6:5fb6)
@@ -74,54 +76,54 @@ SilphCo5TextPointers: ; 19fbc (6:5fbc)
dw SilphCo5Text3
dw SilphCo5Text4
dw SilphCo5Text5
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
dw SilphCo5Text9
dw SilphCo5Text10
dw SilphCo5Text11
SilphCo5TrainerHeaders: ; 19fd2 (6:5fd2)
Silphco5TrainerHeader0: ; 19fd2 (6:5fd2)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_0
db ($1 << 4) ; trainer's view range
- dw wd82b ; flag's byte
- dw SilphCo5BattleText2 ; 0x6024 TextBeforeBattle
- dw SilphCo5AfterBattleText2 ; 0x602e TextAfterBattle
- dw SilphCo5EndBattleText2 ; 0x6029 TextEndBattle
- dw SilphCo5EndBattleText2 ; 0x6029 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_0
+ dw SilphCo5BattleText2 ; TextBeforeBattle
+ dw SilphCo5AfterBattleText2 ; TextAfterBattle
+ dw SilphCo5EndBattleText2 ; TextEndBattle
+ dw SilphCo5EndBattleText2 ; TextEndBattle
Silphco5TrainerHeader2: ; 19fde (6:5fde)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd82b ; flag's byte
- dw SilphCo5BattleText3 ; 0x603d TextBeforeBattle
- dw SilphCo5AfterBattleText3 ; 0x6047 TextAfterBattle
- dw SilphCo5EndBattleText3 ; 0x6042 TextEndBattle
- dw SilphCo5EndBattleText3 ; 0x6042 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_2
+ dw SilphCo5BattleText3 ; TextBeforeBattle
+ dw SilphCo5AfterBattleText3 ; TextAfterBattle
+ dw SilphCo5EndBattleText3 ; TextEndBattle
+ dw SilphCo5EndBattleText3 ; TextEndBattle
Silphco5TrainerHeader3: ; 19fea (6:5fea)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_3
db ($4 << 4) ; trainer's view range
- dw wd82b ; flag's byte
- dw SilphCo5BattleText4 ; 0x6056 TextBeforeBattle
- dw SilphCo5AfterBattleText4 ; 0x6060 TextAfterBattle
- dw SilphCo5EndBattleText4 ; 0x605b TextEndBattle
- dw SilphCo5EndBattleText4 ; 0x605b TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_3
+ dw SilphCo5BattleText4 ; TextBeforeBattle
+ dw SilphCo5AfterBattleText4 ; TextAfterBattle
+ dw SilphCo5EndBattleText4 ; TextEndBattle
+ dw SilphCo5EndBattleText4 ; TextEndBattle
Silphco5TrainerHeader4: ; 19ff6 (6:5ff6)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_4
db ($3 << 4) ; trainer's view range
- dw wd82b ; flag's byte
- dw SilphCo5BattleText5 ; 0x606f TextBeforeBattle
- dw SilphCo5AfterBattleText5 ; 0x6079 TextAfterBattle
- dw SilphCo5EndBattleText5 ; 0x6074 TextEndBattle
- dw SilphCo5EndBattleText5 ; 0x6074 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_4
+ dw SilphCo5BattleText5 ; TextBeforeBattle
+ dw SilphCo5AfterBattleText5 ; TextAfterBattle
+ dw SilphCo5EndBattleText5 ; TextEndBattle
+ dw SilphCo5EndBattleText5 ; TextEndBattle
db $ff
SilphCo5Text1: ; 1a003 (6:6003)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo5Text_1a010
ld de, SilphCo5Text_1a015
call SilphCo6Script_1a22f
@@ -136,7 +138,7 @@ SilphCo5Text_1a015: ; 1a015 (6:6015)
db "@"
SilphCo5Text2: ; 1a01a (6:601a)
- db $08 ; asm
+ TX_ASM
ld hl, Silphco5TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -154,7 +156,7 @@ SilphCo5AfterBattleText2: ; 1a02e (6:602e)
db "@"
SilphCo5Text3: ; 1a033 (6:6033)
- db $08 ; asm
+ TX_ASM
ld hl, Silphco5TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -172,7 +174,7 @@ SilphCo5AfterBattleText3: ; 1a047 (6:6047)
db "@"
SilphCo5Text4: ; 1a04c (6:604c)
- db $08 ; asm
+ TX_ASM
ld hl, Silphco5TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -190,7 +192,7 @@ SilphCo5AfterBattleText4: ; 1a060 (6:6060)
db "@"
SilphCo5Text5: ; 1a065 (6:6065)
- db $08 ; asm
+ TX_ASM
ld hl, Silphco5TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/silphco6.asm b/scripts/silphco6.asm
index 137e31be..fa199069 100755
--- a/scripts/silphco6.asm
+++ b/scripts/silphco6.asm
@@ -13,27 +13,25 @@ SilphCo6Script_1a1bf: ; 1a1bf (6:61bf)
bit 5, [hl]
res 5, [hl]
ret z
- ld hl, SilphCo6Coords1
+ ld hl, SilphCo6GateCoords
call SilphCo4Script_19d5d
call SilphCo6Script_1a1e6
- ld a, [wd82e]
- bit 7, a
+ CheckEvent EVENT_SILPH_CO_6_UNLOCKED_DOOR
ret nz
ld a, $5f
- ld [wd09f], a
- ld bc, $0602
+ ld [wNewTileBlockID], a
+ lb bc, 6, 2
predef_jump ReplaceTileBlock
-SilphCo6Coords1: ; 1a1e3 (6:61e3)
- db $06, $02
- db $ff
+SilphCo6GateCoords: ; 1a1e3 (6:61e3)
+ db $06,$02
+ db $FF
SilphCo6Script_1a1e6: ; 1a1e6 (6:61e6)
ld a, [$ffe0]
and a
ret z
- ld hl, wd82e
- set 7, [hl]
+ SetEvent EVENT_SILPH_CO_6_UNLOCKED_DOOR
ret
SilphCo6ScriptPointers: ; 1a1f0 (6:61f0)
@@ -50,44 +48,43 @@ SilphCo6TextPointers: ; 1a1f6 (6:61f6)
dw SilphCo6Text6
dw SilphCo6Text7
dw SilphCo6Text8
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
SilphCo6TrainerHeaders: ; 1a20a (6:620a)
SilphCo6TrainerHeader0: ; 1a20a (6:620a)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_6F_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd82d ; flag's byte
- dw SilphCo6BattleText2 ; 0x62ba TextBeforeBattle
- dw SilphCo6AfterBattleText2 ; 0x62c4 TextAfterBattle
- dw SilphCo6EndBattleText2 ; 0x62bf TextEndBattle
- dw SilphCo6EndBattleText2 ; 0x62bf TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_6F_TRAINER_0
+ dw SilphCo6BattleText2 ; TextBeforeBattle
+ dw SilphCo6AfterBattleText2 ; TextAfterBattle
+ dw SilphCo6EndBattleText2 ; TextEndBattle
+ dw SilphCo6EndBattleText2 ; TextEndBattle
SilphCo6TrainerHeader2: ; 1a216 (6:6216)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_6F_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd82d ; flag's byte
- dw SilphCo6BattleText3 ; 0x62d3 TextBeforeBattle
- dw SilphCo6AfterBattleText3 ; 0x62dd TextAfterBattle
- dw SilphCo6EndBattleText3 ; 0x62d8 TextEndBattle
- dw SilphCo6EndBattleText3 ; 0x62d8 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_6F_TRAINER_2
+ dw SilphCo6BattleText3 ; TextBeforeBattle
+ dw SilphCo6AfterBattleText3 ; TextAfterBattle
+ dw SilphCo6EndBattleText3 ; TextEndBattle
+ dw SilphCo6EndBattleText3 ; TextEndBattle
SilphCo6TrainerHeader3: ; 1a222 (6:6222)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_6F_TRAINER_3, 1
db ($2 << 4) ; trainer's view range
- dw wd82d ; flag's byte
- dw SilphCo6BattleText4 ; 0x62ec TextBeforeBattle
- dw SilphCo6AfterBattleText4 ; 0x62f6 TextAfterBattle
- dw SilphCo6EndBattleText4 ; 0x62f1 TextEndBattle
- dw SilphCo6EndBattleText4 ; 0x62f1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_6F_TRAINER_3, 1
+ dw SilphCo6BattleText4 ; TextBeforeBattle
+ dw SilphCo6AfterBattleText4 ; TextAfterBattle
+ dw SilphCo6EndBattleText4 ; TextEndBattle
+ dw SilphCo6EndBattleText4 ; TextEndBattle
db $ff
SilphCo6Script_1a22f: ; 1a22f (6:622f)
- ld a, [wd838]
- bit 7, a
- jr nz, .asm_1a238 ; 0x1a234 $2
- jr .asm_1a23a ; 0x1a236 $2
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ jr nz, .asm_1a238
+ jr .asm_1a23a
.asm_1a238
ld h, d
ld l, e
@@ -95,7 +92,7 @@ SilphCo6Script_1a22f: ; 1a22f (6:622f)
jp PrintText
SilphCo6Text1: ; 1a23d (6:623d)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo6Text_1a24a
ld de, SilphCo6Text_1a24f
call SilphCo6Script_1a22f
@@ -110,7 +107,7 @@ SilphCo6Text_1a24f: ; 1a24f (6:624f)
db "@"
SilphCo6Text2: ; 1a254 (6:6254)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo6Text_1a261
ld de, SilphCo6Text_1a266
call SilphCo6Script_1a22f
@@ -125,7 +122,7 @@ SilphCo6Text_1a266: ; 1a266 (6:6266)
db "@"
SilphCo6Text3: ; 1a26b (6:626b)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo6Text_1a278
ld de, SilphCo6Text_1a27d
call SilphCo6Script_1a22f
@@ -140,7 +137,7 @@ SilphCo6Text_1a27d: ; 1a27d (6:627d)
db "@"
SilphCo6Text4: ; 1a282 (6:6282)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo6Text_1a28f
ld de, SilphCo6Text_1a294
call SilphCo6Script_1a22f
@@ -155,7 +152,7 @@ SilphCo6Text_1a294: ; 1a294 (6:6294)
db "@"
SilphCo6Text5: ; 1a299 (6:6299)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo6Text_1a2a6
ld de, SilphCo6Text_1a2ab
call SilphCo6Script_1a22f
@@ -170,7 +167,7 @@ SilphCo6Text_1a2ab: ; 1a2ab (6:62ab)
db "@"
SilphCo6Text6: ; 1a2b0 (6:62b0)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo6TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -188,7 +185,7 @@ SilphCo6AfterBattleText2: ; 1a2c4 (6:62c4)
db "@"
SilphCo6Text7: ; 1a2c9 (6:62c9)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo6TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -206,7 +203,7 @@ SilphCo6AfterBattleText3: ; 1a2dd (6:62dd)
db "@"
SilphCo6Text8: ; 1a2e2 (6:62e2)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo6TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/silphco7.asm b/scripts/silphco7.asm
index 23eb795c..5333e07f 100755
--- a/scripts/silphco7.asm
+++ b/scripts/silphco7.asm
@@ -13,37 +13,39 @@ SilphCo7Script_51b77: ; 51b77 (14:5b77)
bit 5, [hl]
res 5, [hl]
ret z
- ld hl, DataTable_51bc1 ; $5bc1
+ ld hl, SilphCo7GateCoords
call SilphCo7Text_51bc8
call SilphCo7Text_51bf4
- ld a, [wd830]
- bit 4, a
+ CheckEvent EVENT_SILPH_CO_7_UNLOCKED_DOOR1
jr nz, .asm_51b9e
push af
ld a, $54
- ld [wd09f], a
- ld bc, $305
+ ld [wNewTileBlockID], a
+ lb bc, 3, 5
predef ReplaceTileBlock
pop af
.asm_51b9e
- bit 5, a
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_7_UNLOCKED_DOOR2, EVENT_SILPH_CO_7_UNLOCKED_DOOR1
jr nz, .asm_51bb1
push af
ld a, $54
- ld [wd09f], a
- ld bc, $20a
+ ld [wNewTileBlockID], a
+ lb bc, 2, 10
predef ReplaceTileBlock
pop af
.asm_51bb1
- bit 6, a
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_7_UNLOCKED_DOOR3, EVENT_SILPH_CO_7_UNLOCKED_DOOR2
ret nz
ld a, $54
- ld [wd09f], a
- ld bc, $60a
+ ld [wNewTileBlockID], a
+ lb bc, 6, 10
predef_jump ReplaceTileBlock
-DataTable_51bc1: ; 51bc1 (14:5bc1)
- db $03,$05,$02,$0A,$06,$0A,$FF
+SilphCo7GateCoords: ; 51bc1 (14:5bc1)
+ db $03,$05
+ db $02,$0A
+ db $06,$0A
+ db $FF
SilphCo7Text_51bc8: ; 51bc8 (14:5bc8)
push hl
@@ -82,21 +84,21 @@ SilphCo7Text_51bc8: ; 51bc8 (14:5bc8)
ret
SilphCo7Text_51bf4: ; 51bf4 (14:5bf4)
- ld hl, wd830
+ EventFlagAddress hl, EVENT_SILPH_CO_7_UNLOCKED_DOOR1
ld a, [$ffe0]
and a
ret z
cp $1
- jr nz, .asm_51c02
- set 4, [hl]
+ jr nz, .next1
+ SetEventReuseHL EVENT_SILPH_CO_7_UNLOCKED_DOOR1
ret
-.asm_51c02
+.next1
cp $2
- jr nz, .asm_51c09
- set 5, [hl]
+ jr nz, .next2
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_7_UNLOCKED_DOOR2, EVENT_SILPH_CO_7_UNLOCKED_DOOR1
ret
-.asm_51c09
- set 6, [hl]
+.next2
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_7_UNLOCKED_DOOR3, EVENT_SILPH_CO_7_UNLOCKED_DOOR1
ret
SilphCo7Text_51c0c: ; 51c0c (14:5c0c)
@@ -117,8 +119,7 @@ SilphCo7ScriptPointers: ; 51c17 (14:5c17)
dw SilphCo7Script5
SilphCo7Script0: ; 51c23 (14:5c23)
- ld a, [wd82f]
- bit 0, a
+ CheckEvent EVENT_BEAT_SILPH_CO_RIVAL
jp nz, CheckFightingMapTrainers
ld hl, CoordsData_51c78
call ArePlayerCoordsInArray
@@ -127,29 +128,29 @@ SilphCo7Script0: ; 51c23 (14:5c23)
ld [hJoyHeld], a
ld a, $f0
ld [wJoyIgnore], a
- ld a, $4
- ld [wd528], a
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
ld c, BANK(Music_MeetRival)
ld a, MUSIC_MEET_RIVAL
call PlayMusic
ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
ld de, MovementData_51c7d
- ld a, [wWhichTrade] ; wWhichTrade
+ ld a, [wCoordIndex]
ld [wcf0d], a
cp $1
jr z, .asm_51c6c
inc de
.asm_51c6c
ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $3
jp SilphCo7Text_51c10
@@ -160,7 +161,11 @@ CoordsData_51c78: ; 51c78 (14:5c78)
db $FF
MovementData_51c7d: ; 51c7d (14:5c7d)
- db $40,$40,$40,$40,$FF
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db $FF
SilphCo7Script3: ; 51c82 (14:5c82)
ld a, [wd730]
@@ -169,18 +174,18 @@ SilphCo7Script3: ; 51c82 (14:5c82)
xor a
ld [wJoyIgnore], a
ld a, $d
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call Delay3
ld hl, wd72d
set 6, [hl]
set 7, [hl]
- ld hl, SilphCo7Text14 ; $5ec8
- ld de, SilphCo7Text_51ecd ; $5ecd
+ ld hl, SilphCo7Text14
+ ld de, SilphCo7Text_51ecd
call SaveEndBattleTextPointers
- ld a, SONY2 + $c8
- ld [W_CUROPPONENT], a ; wd059
- ld a, [W_RIVALSTARTER] ; wd715
+ ld a, OPP_SONY2
+ ld [W_CUROPPONENT], a
+ ld a, [W_RIVALSTARTER]
cp STARTER2
jr nz, .asm_51cb6
ld a, $7
@@ -193,30 +198,29 @@ SilphCo7Script3: ; 51c82 (14:5c82)
.asm_51cbe
ld a, $9
.asm_51cc0
- ld [W_TRAINERNO], a ; wd05d
+ ld [W_TRAINERNO], a
ld a, $4
jp SilphCo7Text_51c10
SilphCo7Script4: ; 51cc8 (14:5cc8)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, SilphCo7Text_51c0c
ld a, $f0
ld [wJoyIgnore], a
- ld hl, wd82f
- set 0, [hl]
- ld a, $4
- ld [wd528], a
+ SetEvent EVENT_BEAT_SILPH_CO_RIVAL
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- ld a, $4
- ld [$ff8d], a
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_UP
+ ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
ld a, $f
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
callba Music_RivalAlternateStart
ld de, MovementData_51d1d
@@ -226,23 +230,32 @@ SilphCo7Script4: ; 51cc8 (14:5cc8)
ld de, MovementData_51d1a
.asm_51d0e
ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $5
jp SilphCo7Text_51c10
MovementData_51d1a: ; 51d1a (14:5d1a)
- db $C0,$C0,$FF
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
MovementData_51d1d: ; 51d1d (14:5d1d)
- db $80,$40,$40,$C0,$C0,$C0,$00,$FF
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db $FF
SilphCo7Script5: ; 51d25 (14:5d25)
ld a, [wd730]
bit 0, a
ret nz
ld a, HS_SILPH_CO_7F_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
call PlayDefaultMusic
xor a
@@ -259,60 +272,59 @@ SilphCo7TextPointers: ; 51d3f (14:5d3f)
dw SilphCo7Text7
dw SilphCo7Text8
dw SilphCo7Text9
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
dw SilphCo7Text13
dw SilphCo7Text14
dw SilphCo7Text15
SilphCo7TrainerHeaders: ; 51d5d (14:5d5d)
SilphCo7TrainerHeader0: ; 51d5d (14:5d5d)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_7F_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd82f ; flag's byte
- dw SilphCo7BattleText1 ; 0x5e5a TextBeforeBattle
- dw SilphCo7AfterBattleText1 ; 0x5e64 TextAfterBattle
- dw SilphCo7EndBattleText1 ; 0x5e5f TextEndBattle
- dw SilphCo7EndBattleText1 ; 0x5e5f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_7F_TRAINER_0
+ dw SilphCo7BattleText1 ; TextBeforeBattle
+ dw SilphCo7AfterBattleText1 ; TextAfterBattle
+ dw SilphCo7EndBattleText1 ; TextEndBattle
+ dw SilphCo7EndBattleText1 ; TextEndBattle
SilphCo7TrainerHeader2: ; 51d69 (14:5d69)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_7F_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd82f ; flag's byte
- dw SilphCo7BattleText2 ; 0x5e73 TextBeforeBattle
- dw SilphCo7AfterBattleText2 ; 0x5e7d TextAfterBattle
- dw SilphCo7EndBattleText2 ; 0x5e78 TextEndBattle
- dw SilphCo7EndBattleText2 ; 0x5e78 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_7F_TRAINER_2
+ dw SilphCo7BattleText2 ; TextBeforeBattle
+ dw SilphCo7AfterBattleText2 ; TextAfterBattle
+ dw SilphCo7EndBattleText2 ; TextEndBattle
+ dw SilphCo7EndBattleText2 ; TextEndBattle
SilphCo7TrainerHeader3: ; 51d75 (14:5d75)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_7F_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd82f ; flag's byte
- dw SilphCo7BattleText3 ; 0x5e8c TextBeforeBattle
- dw SilphCo7AfterBattleText3 ; 0x5e96 TextAfterBattle
- dw SilphCo7EndBattleText3 ; 0x5e91 TextEndBattle
- dw SilphCo7EndBattleText3 ; 0x5e91 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_7F_TRAINER_3
+ dw SilphCo7BattleText3 ; TextBeforeBattle
+ dw SilphCo7AfterBattleText3 ; TextAfterBattle
+ dw SilphCo7EndBattleText3 ; TextEndBattle
+ dw SilphCo7EndBattleText3 ; TextEndBattle
SilphCo7TrainerHeader4: ; 51d81 (14:5d81)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_7F_TRAINER_4, 1
db ($4 << 4) ; trainer's view range
- dw wd82f ; flag's byte
- dw SilphCo7BattleText4 ; 0x5ea5 TextBeforeBattle
- dw SilphCo7AfterBattleText4 ; 0x5eaf TextAfterBattle
- dw SilphCo7EndBattleText4 ; 0x5eaa TextEndBattle
- dw SilphCo7EndBattleText4 ; 0x5eaa TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_7F_TRAINER_4, 1
+ dw SilphCo7BattleText4 ; TextBeforeBattle
+ dw SilphCo7AfterBattleText4 ; TextAfterBattle
+ dw SilphCo7EndBattleText4 ; TextEndBattle
+ dw SilphCo7EndBattleText4 ; TextEndBattle
db $ff
SilphCo7Text1:
; lapras guy
- db $08 ; asm
+ TX_ASM
ld a, [wd72e]
bit 0, a ; got lapras?
jr z, .givelapras
- ld a, [wd838]
- bit 7, a ; saved silph?
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
jr nz, .savedsilph
ld hl, .LaprasGuyText
call PrintText
@@ -320,7 +332,7 @@ SilphCo7Text1:
.givelapras
ld hl, .MeetLaprasGuyText
call PrintText
- ld bc, (LAPRAS << 8) | 15
+ lb bc, LAPRAS, 15
call GivePokemon
jr nc, .done
ld a, [wSimulatedJoypadStatesEnd]
@@ -355,9 +367,8 @@ SilphCo7Text1:
db "@"
SilphCo7Text2:
- db $8
- ld a, [wd838]
- bit 7, a ; saved silph?
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
jr nz, .savedsilph
ld hl, .rockettext
call PrintText
@@ -377,9 +388,8 @@ SilphCo7Text2:
db "@"
SilphCo7Text3:
- db $08 ; asm
- ld a, [wd838]
- bit 7, a ; saved silph?
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
jr nz, .savedsilph
ld hl, .rockettext
call PrintText
@@ -399,9 +409,8 @@ SilphCo7Text3:
db "@"
SilphCo7Text4:
- db $08 ; asm
- ld a, [wd838]
- bit 7, a ; saved silph?
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
jr nz, .savedsilph
ld hl, .rockettext
call PrintText
@@ -421,7 +430,7 @@ SilphCo7Text4:
db "@"
SilphCo7Text5: ; 51e50 (14:5e50)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo7TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -439,7 +448,7 @@ SilphCo7AfterBattleText1: ; 51e64 (14:5e64)
db "@"
SilphCo7Text6: ; 51e69 (14:5e69)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo7TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -457,7 +466,7 @@ SilphCo7AfterBattleText2: ; 51e7d (14:5e7d)
db "@"
SilphCo7Text7: ; 51e82 (14:5e82)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo7TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -475,7 +484,7 @@ SilphCo7AfterBattleText3: ; 51e96 (14:5e96)
db "@"
SilphCo7Text8: ; 51e9b (14:5e9b)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo7TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -493,7 +502,7 @@ SilphCo7AfterBattleText4: ; 51eaf (14:5eaf)
db "@"
SilphCo7Text9: ; 51eb4 (14:5eb4)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo7Text_51ebe
call PrintText
jp TextScriptEnd
diff --git a/scripts/silphco8.asm b/scripts/silphco8.asm
index ebca9b95..9ea985a8 100755
--- a/scripts/silphco8.asm
+++ b/scripts/silphco8.asm
@@ -13,19 +13,19 @@ SilphCo8Script_5651a: ; 5651a (15:651a)
bit 5, [hl]
res 5, [hl]
ret z
- ld hl, DataTable_5653e ; $653e
+ ld hl, SilphCo8GateCoords
call SilphCo8Script_56541
call SilphCo8Script_5656d
- ld a, [wd832]
- bit 0, a
+ CheckEvent EVENT_SILPH_CO_8_UNLOCKED_DOOR
ret nz
ld a, $5f
- ld [wd09f], a
- ld bc, $403
+ ld [wNewTileBlockID], a
+ lb bc, 4, 3
predef_jump ReplaceTileBlock
-DataTable_5653e: ; 5653e (15:653e)
- db $04,$03,$FF
+SilphCo8GateCoords: ; 5653e (15:653e)
+ db $04,$03
+ db $FF
SilphCo8Script_56541: ; 56541 (15:6541)
push hl
@@ -67,8 +67,7 @@ SilphCo8Script_5656d: ; 5656d (15:656d)
ld a, [$ffe0]
and a
ret z
- ld hl, wd832
- set 0, [hl]
+ SetEvent EVENT_SILPH_CO_8_UNLOCKED_DOOR
ret
SilphCo8ScriptPointers: ; 56577 (15:6577)
@@ -84,42 +83,41 @@ SilphCo8TextPointers: ; 5657d (15:657d)
SilphCo8TrainerHeaders: ; 56585 (15:6585)
SilphCo8TrainerHeader0: ; 56585 (15:6585)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_8F_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd831 ; flag's byte
- dw SilphCo8BattleText1 ; 0x65e6 TextBeforeBattle
- dw SilphCo8AfterBattleText1 ; 0x65f0 TextAfterBattle
- dw SilphCo8EndBattleText1 ; 0x65eb TextEndBattle
- dw SilphCo8EndBattleText1 ; 0x65eb TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_8F_TRAINER_0
+ dw SilphCo8BattleText1 ; TextBeforeBattle
+ dw SilphCo8AfterBattleText1 ; TextAfterBattle
+ dw SilphCo8EndBattleText1 ; TextEndBattle
+ dw SilphCo8EndBattleText1 ; TextEndBattle
SilphCo8TrainerHeader1: ; 56591 (15:6591)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_8F_TRAINER_1
db ($4 << 4) ; trainer's view range
- dw wd831 ; flag's byte
- dw SilphCo8BattleText2 ; 0x65f5 TextBeforeBattle
- dw SilphCo8AfterBattleText2 ; 0x65ff TextAfterBattle
- dw SilphCo8EndBattleText2 ; 0x65fa TextEndBattle
- dw SilphCo8EndBattleText2 ; 0x65fa TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_8F_TRAINER_1
+ dw SilphCo8BattleText2 ; TextBeforeBattle
+ dw SilphCo8AfterBattleText2 ; TextAfterBattle
+ dw SilphCo8EndBattleText2 ; TextEndBattle
+ dw SilphCo8EndBattleText2 ; TextEndBattle
SilphCo8TrainerHeader2: ; 5659d (15:659d)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_8F_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd831 ; flag's byte
- dw SilphCo8BattleText3 ; 0x6604 TextBeforeBattle
- dw SilphCo8AfterBattleText3 ; 0x660e TextAfterBattle
- dw SilphCo8EndBattleText3 ; 0x6609 TextEndBattle
- dw SilphCo8EndBattleText3 ; 0x6609 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_8F_TRAINER_2
+ dw SilphCo8BattleText3 ; TextBeforeBattle
+ dw SilphCo8AfterBattleText3 ; TextAfterBattle
+ dw SilphCo8EndBattleText3 ; TextEndBattle
+ dw SilphCo8EndBattleText3 ; TextEndBattle
db $ff
SilphCo8Text1: ; 565aa (15:65aa)
- db $08 ; asm
- ld a, [wd838]
- bit 7, a
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
ld hl, SilphCo8Text_565c3
- jr nz, asm_a468f ; 0x565b3
+ jr nz, .asm_565b8
ld hl, SilphCo8Text_565be
-asm_a468f ; 0x565b8
+.asm_565b8
call PrintText
jp TextScriptEnd
@@ -132,19 +130,19 @@ SilphCo8Text_565c3: ; 565c3 (15:65c3)
db "@"
SilphCo8Text2: ; 565c8 (15:65c8)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo8TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
SilphCo8Text3: ; 565d2 (15:65d2)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo8TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
SilphCo8Text4: ; 565dc (15:65dc)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo8TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/silphco9.asm b/scripts/silphco9.asm
index e8b16927..02638459 100755
--- a/scripts/silphco9.asm
+++ b/scripts/silphco9.asm
@@ -13,46 +13,49 @@ SilphCo9Script_5d7d1: ; 5d7d1 (17:57d1)
bit 5, [hl]
res 5, [hl]
ret z
- ld hl, DataTable_5d82e ; $582e
+ ld hl, SilphCo9GateCoords
call SilphCo9Script_5d837
call SilphCo9Script_5d863
- ld a, [wd834]
- bit 0, a
+ CheckEvent EVENT_SILPH_CO_9_UNLOCKED_DOOR1
jr nz, .asm_5d7f8
push af
ld a, $5f
- ld [wd09f], a
- ld bc, $401
+ ld [wNewTileBlockID], a
+ lb bc, 4, 1
predef ReplaceTileBlock
pop af
.asm_5d7f8
- bit 1, a
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_9_UNLOCKED_DOOR2, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
jr nz, .asm_5d80b
push af
ld a, $54
- ld [wd09f], a
- ld bc, $209
+ ld [wNewTileBlockID], a
+ lb bc, 2, 9
predef ReplaceTileBlock
pop af
.asm_5d80b
- bit 2, a
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_9_UNLOCKED_DOOR3, EVENT_SILPH_CO_9_UNLOCKED_DOOR2
jr nz, .asm_5d81e
push af
ld a, $54
- ld [wd09f], a
- ld bc, $509
+ ld [wNewTileBlockID], a
+ lb bc, 5, 9
predef ReplaceTileBlock
pop af
.asm_5d81e
- bit 3, a
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_9_UNLOCKED_DOOR4, EVENT_SILPH_CO_9_UNLOCKED_DOOR3
ret nz
ld a, $5f
- ld [wd09f], a
- ld bc, $605
+ ld [wNewTileBlockID], a
+ lb bc, 6, 5
predef_jump ReplaceTileBlock
-DataTable_5d82e: ; 5d82e (17:582e)
- db $04,$01,$02,$09,$05,$09,$06,$05,$FF
+SilphCo9GateCoords: ; 5d82e (17:582e)
+ db $04,$01
+ db $02,$09
+ db $05,$09
+ db $06,$05
+ db $FF
SilphCo9Script_5d837: ; 5d837 (17:5837)
push hl
@@ -91,28 +94,28 @@ SilphCo9Script_5d837: ; 5d837 (17:5837)
ret
SilphCo9Script_5d863: ; 5d863 (17:5863)
- ld hl, wd834
+ EventFlagAddress hl, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
ld a, [$ffe0]
and a
ret z
cp $1
- jr nz, .asm_5d871
- set 0, [hl]
+ jr nz, .next1
+ SetEventReuseHL EVENT_SILPH_CO_9_UNLOCKED_DOOR1
ret
-.asm_5d871
+.next1
cp $2
- jr nz, .asm_5d878
- set 1, [hl]
+ jr nz, .next2
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_9_UNLOCKED_DOOR2, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
ret
-.asm_5d878
+.next2
cp $3
- jr nz, .asm_5d87f
- set 2, [hl]
+ jr nz, .next3
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_9_UNLOCKED_DOOR3, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
ret
-.asm_5d87f
+.next3
cp $4
ret nz
- set 3, [hl]
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_9_UNLOCKED_DOOR4, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
ret
SilphCo9ScriptPointers: ; 5d885 (17:5885)
@@ -128,39 +131,38 @@ SilphCo9TextPointers: ; 5d88b (17:588b)
SilphCo9TrainerHeaders: ; 5d893 (17:5893)
SilphCo9TrainerHeader0: ; 5d893 (17:5893)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_9F_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd833 ; flag's byte
- dw SilphCo9BattleText1 ; 0x5912 TextBeforeBattle
- dw SilphCo9AfterBattleText1 ; 0x591c TextAfterBattle
- dw SilphCo9EndBattleText1 ; 0x5917 TextEndBattle
- dw SilphCo9EndBattleText1 ; 0x5917 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_9F_TRAINER_0
+ dw SilphCo9BattleText1 ; TextBeforeBattle
+ dw SilphCo9AfterBattleText1 ; TextAfterBattle
+ dw SilphCo9EndBattleText1 ; TextEndBattle
+ dw SilphCo9EndBattleText1 ; TextEndBattle
SilphCo9TrainerHeader1: ; 5d89f (17:589f)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_9F_TRAINER_1
db ($2 << 4) ; trainer's view range
- dw wd833 ; flag's byte
- dw SilphCo9BattleText2 ; 0x5921 TextBeforeBattle
- dw SilphCo9AfterBattleText2 ; 0x592b TextAfterBattle
- dw SilphCo9EndBattleText2 ; 0x5926 TextEndBattle
- dw SilphCo9EndBattleText2 ; 0x5926 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_9F_TRAINER_1
+ dw SilphCo9BattleText2 ; TextBeforeBattle
+ dw SilphCo9AfterBattleText2 ; TextAfterBattle
+ dw SilphCo9EndBattleText2 ; TextEndBattle
+ dw SilphCo9EndBattleText2 ; TextEndBattle
SilphCo9TrainerHeader2: ; 5d8ab (17:58ab)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_9F_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd833 ; flag's byte
- dw SilphCo9BattleText3 ; 0x5930 TextBeforeBattle
- dw SilphCo9AfterBattleText3 ; 0x593a TextAfterBattle
- dw SilphCo9EndBattleText3 ; 0x5935 TextEndBattle
- dw SilphCo9EndBattleText3 ; 0x5935 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_9F_TRAINER_2
+ dw SilphCo9BattleText3 ; TextBeforeBattle
+ dw SilphCo9AfterBattleText3 ; TextAfterBattle
+ dw SilphCo9EndBattleText3 ; TextEndBattle
+ dw SilphCo9EndBattleText3 ; TextEndBattle
db $ff
SilphCo9Text1: ; 5d8b8 (17:58b8)
- db $08 ; asm
- ld a, [wd838]
- bit 7, a
- jr nz, .asm_a14c3 ; 0x5d8be
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ jr nz, .asm_5d8dc
ld hl, SilphCo9Text_5d8e5
call PrintText
predef HealParty
@@ -169,11 +171,11 @@ SilphCo9Text1: ; 5d8b8 (17:58b8)
call GBFadeInFromWhite
ld hl, SilphCo9Text_5d8ea
call PrintText
- jr .asm_b6e28 ; 0x5d8da
-.asm_a14c3 ; 0x5d8dc
+ jr .asm_5d8e2
+.asm_5d8dc
ld hl, SilphCo9Text_5d8ef
call PrintText
-.asm_b6e28 ; 0x5d8e2
+.asm_5d8e2
jp TextScriptEnd
SilphCo9Text_5d8e5: ; 5d8e5 (17:58e5)
@@ -189,19 +191,19 @@ SilphCo9Text_5d8ef: ; 5d8ef (17:58ef)
db "@"
SilphCo9Text2: ; 5d8f4 (17:58f4)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo9TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
SilphCo9Text3: ; 5d8fe (17:58fe)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo9TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
SilphCo9Text4: ; 5d908 (17:5908)
- db $08 ; asm
+ TX_ASM
ld hl, SilphCo9TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/silphcoelevator.asm b/scripts/silphcoelevator.asm
index 48d406cc..d080cfef 100755
--- a/scripts/silphcoelevator.asm
+++ b/scripts/silphcoelevator.asm
@@ -16,9 +16,9 @@ SilphCoElevatorScript: ; 457c0 (11:57c0)
SilphCoElevatorScript_457dc: ; 457dc (11:57dc)
ld hl, wWarpEntries
- ld a, [wd73b]
+ ld a, [wWarpedFromWhichWarp]
ld b, a
- ld a, [wd73c]
+ ld a, [wWarpedFromWhichMap]
ld c, a
call SilphCoElevatorScript_457ea
@@ -32,17 +32,27 @@ SilphCoElevatorScript_457ea: ; 457ea (11:57ea)
ret
SilphCoElevatorScript_457f1: ; 457f1 (11:57f1)
- ld hl, SilphCoElavatorFloors ; $5804
+ ld hl, SilphCoElavatorFloors
call LoadItemList
- ld hl, SilphCoElevatorWarpMaps ; $5811
- ld de, wcc5b
- ld bc, $16
+ ld hl, SilphCoElevatorWarpMaps
+ ld de, wElevatorWarpMaps
+ ld bc, SilphCoElevatorWarpMapsEnd - SilphCoElevatorWarpMaps
call CopyData
ret
SilphCoElavatorFloors: ; 45804 (11:45804)
db $0B ; num elements in list
- db $56, $57, $58, $59, $5A, $5B, $5C, $5D, $5E, $5F, $60 ; "1F", "2F", "3F", "4F", ... , "11F"
+ db FLOOR_1F
+ db FLOOR_2F
+ db FLOOR_3F
+ db FLOOR_4F
+ db FLOOR_5F
+ db FLOOR_6F
+ db FLOOR_7F
+ db FLOOR_8F
+ db FLOOR_9F
+ db FLOOR_10F
+ db FLOOR_11F
db $FF ; terminator
SilphCoElevatorWarpMaps: ; 45811 (11:45811)
@@ -60,6 +70,7 @@ SilphCoElevatorWarpMaps: ; 45811 (11:45811)
db $02, SILPH_CO_9F
db $02, SILPH_CO_10F
db $01, SILPH_CO_11F
+SilphCoElevatorWarpMapsEnd:
SilphCoElevatorScript_45827: ; 45827 (11:5827)
call Delay3
@@ -70,8 +81,8 @@ SilphCoElevatorTextPointers: ; 45833 (11:5833)
dw SilphCoElevatorText1
SilphCoElevatorText1: ; 45835 (11:5835)
- db $08 ; asm
+ TX_ASM
call SilphCoElevatorScript_457f1
- ld hl, SilphCoElevatorWarpMaps ; $5811
- predef Func_1c9c6
+ ld hl, SilphCoElevatorWarpMaps
+ predef DisplayElevatorFloorMenu
jp TextScriptEnd
diff --git a/scripts/ssanne10.asm b/scripts/ssanne10.asm
index 8f3ff9a4..3b53b961 100755
--- a/scripts/ssanne10.asm
+++ b/scripts/ssanne10.asm
@@ -21,106 +21,106 @@ SSAnne10TextPointers: ; 61d6e (18:5d6e)
dw SSAnne10Text6
dw SSAnne10Text7
dw SSAnne10Text8
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
SSAnne10TrainerHeaders: ; 61d84 (18:5d84)
SSAnne10TrainerHeader0: ; 61d84 (18:5d84)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd809 ; flag's byte
- dw SSAnne10BattleText1 ; 0x5e16 TextBeforeBattle
- dw SSAnne10AfterBattleText1 ; 0x5e20 TextAfterBattle
- dw SSAnne10EndBattleText1 ; 0x5e1b TextEndBattle
- dw SSAnne10EndBattleText1 ; 0x5e1b TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_0
+ dw SSAnne10BattleText1 ; TextBeforeBattle
+ dw SSAnne10AfterBattleText1 ; TextAfterBattle
+ dw SSAnne10EndBattleText1 ; TextEndBattle
+ dw SSAnne10EndBattleText1 ; TextEndBattle
SSAnne10TrainerHeader1: ; 61d90 (18:5d90)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd809 ; flag's byte
- dw SSAnne10BattleText2 ; 0x5e25 TextBeforeBattle
- dw SSAnne10AfterBattleText2 ; 0x5e2f TextAfterBattle
- dw SSAnne10EndBattleText2 ; 0x5e2a TextEndBattle
- dw SSAnne10EndBattleText2 ; 0x5e2a TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_1
+ dw SSAnne10BattleText2 ; TextBeforeBattle
+ dw SSAnne10AfterBattleText2 ; TextAfterBattle
+ dw SSAnne10EndBattleText2 ; TextEndBattle
+ dw SSAnne10EndBattleText2 ; TextEndBattle
SSAnne10TrainerHeader2: ; 61d9c (18:5d9c)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd809 ; flag's byte
- dw SSAnne10BattleText3 ; 0x5e34 TextBeforeBattle
- dw SSAnne10AfterBattleText3 ; 0x5e3e TextAfterBattle
- dw SSAnne10EndBattleText3 ; 0x5e39 TextEndBattle
- dw SSAnne10EndBattleText3 ; 0x5e39 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_2
+ dw SSAnne10BattleText3 ; TextBeforeBattle
+ dw SSAnne10AfterBattleText3 ; TextAfterBattle
+ dw SSAnne10EndBattleText3 ; TextEndBattle
+ dw SSAnne10EndBattleText3 ; TextEndBattle
SSAnne10TrainerHeader3: ; 61da8 (18:5da8)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_3
db ($2 << 4) ; trainer's view range
- dw wd809 ; flag's byte
- dw SSAnne10BattleText4 ; 0x5e43 TextBeforeBattle
- dw SSAnne10AfterBattleText4 ; 0x5e4d TextAfterBattle
- dw SSAnne10EndBattleText4 ; 0x5e48 TextEndBattle
- dw SSAnne10EndBattleText4 ; 0x5e48 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_3
+ dw SSAnne10BattleText4 ; TextBeforeBattle
+ dw SSAnne10AfterBattleText4 ; TextAfterBattle
+ dw SSAnne10EndBattleText4 ; TextEndBattle
+ dw SSAnne10EndBattleText4 ; TextEndBattle
SSAnne10TrainerHeader4: ; 61db4 (18:5db4)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_4
db ($2 << 4) ; trainer's view range
- dw wd809 ; flag's byte
- dw SSAnne10BattleText5 ; 0x5e52 TextBeforeBattle
- dw SSAnne10AfterBattleText5 ; 0x5e5c TextAfterBattle
- dw SSAnne10EndBattleText5 ; 0x5e57 TextEndBattle
- dw SSAnne10EndBattleText5 ; 0x5e57 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_4
+ dw SSAnne10BattleText5 ; TextBeforeBattle
+ dw SSAnne10AfterBattleText5 ; TextAfterBattle
+ dw SSAnne10EndBattleText5 ; TextEndBattle
+ dw SSAnne10EndBattleText5 ; TextEndBattle
SSAnne10TrainerHeader5: ; 61dc0 (18:5dc0)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_5
db ($3 << 4) ; trainer's view range
- dw wd809 ; flag's byte
- dw SSAnne10BattleText6 ; 0x5e61 TextBeforeBattle
- dw SSAnne10AfterBattleText6 ; 0x5e6b TextAfterBattle
- dw SSAnne10EndBattleText6 ; 0x5e66 TextEndBattle
- dw SSAnne10EndBattleText6 ; 0x5e66 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_5
+ dw SSAnne10BattleText6 ; TextBeforeBattle
+ dw SSAnne10AfterBattleText6 ; TextAfterBattle
+ dw SSAnne10EndBattleText6 ; TextEndBattle
+ dw SSAnne10EndBattleText6 ; TextEndBattle
db $ff
SSAnne10Text1: ; 61dcd (18:5dcd)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne10TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
SSAnne10Text2: ; 61dd7 (18:5dd7)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne10TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
SSAnne10Text3: ; 61de1 (18:5de1)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne10TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
SSAnne10Text4: ; 61deb (18:5deb)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne10TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
SSAnne10Text5: ; 61df5 (18:5df5)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne10TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
SSAnne10Text6: ; 61dff (18:5dff)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne10TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
SSAnne10Text8: ; 61e09 (18:5e09)
TX_FAR _SSAnne10Text8
- db $8 ; 0x61e0d
+ TX_ASM
ld a, MACHOKE
call PlayCry
jp TextScriptEnd
diff --git a/scripts/ssanne2.asm b/scripts/ssanne2.asm
index 474aaa60..8bcc2b17 100755
--- a/scripts/ssanne2.asm
+++ b/scripts/ssanne2.asm
@@ -21,23 +21,23 @@ SSAnne2Script4: ; 613bd (18:53bd)
ret
SSAnne2Script0: ; 613be (18:53be)
- ld hl, CoordsData_61411 ; $5411
+ ld hl, CoordsData_61411
call ArePlayerCoordsInArray
ret nc
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
ld c, BANK(Music_MeetRival)
ld a, MUSIC_MEET_RIVAL
call PlayMusic
- ld a, [wWhichTrade]
+ ld a, [wCoordIndex]
ld [$ffdb], a
ld a, HS_SS_ANNE_2_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
call Delay3
ld a, $2
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
xor a
ld [hJoyHeld], a
@@ -45,9 +45,9 @@ SSAnne2Script0: ; 613be (18:53be)
ld [wJoyIgnore], a
ld a, [$ffdb]
cp $2
- jr nz, .asm_61400 ; 0x613f9 $5
+ jr nz, .asm_61400
ld de, MovementData_6140c
- jr .asm_61403 ; 0x613fe $3
+ jr .asm_61403
.asm_61400
ld de, MovementData_6140d
.asm_61403
@@ -57,28 +57,33 @@ SSAnne2Script0: ; 613be (18:53be)
ret
MovementData_6140c: ; 6140c (18:540c)
- db $00
+ db NPC_MOVEMENT_DOWN
MovementData_6140d: ; 6140d (18:540d)
- db $00,$00,$00,$FF
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
CoordsData_61411: ; 61411 (18:5411)
- db $08,$24,$08,$25,$FF
+ db $08,$24
+ db $08,$25
+ db $FF
SSAnne2Script_61416: ; 61416 (18:5416)
- ld a, [W_XCOORD] ; wd362
+ ld a, [W_XCOORD]
cp $25
jr nz, .asm_61426
- ld a, $2
- ld [wd528], a
- ld a, $c
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_RIGHT
jr .asm_61427
.asm_61426
- xor a
+ xor a ; SPRITE_FACING_DOWN
.asm_61427
- ld [$ff8d], a
+ ld [hSpriteFacingDirection], a
ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
jp SetSpriteFacingDirectionAndDelay
SSAnne2Script1: ; 61430 (18:5430)
@@ -89,21 +94,21 @@ SSAnne2Script1: ; 61430 (18:5430)
xor a
ld [wJoyIgnore], a
ld a, $2
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
call Delay3
- ld a, SONY2 + $c8
+ ld a, OPP_SONY2
ld [W_CUROPPONENT], a
; select which team to use during the encounter
ld a, [W_RIVALSTARTER]
cp STARTER2
- jr nz, .NotSquirtle ; 0x61451 $4
+ jr nz, .NotSquirtle
ld a, $1
jr .done
.NotSquirtle
cp STARTER3
- jr nz, .Charmander ; 0x61459 $4
+ jr nz, .Charmander
ld a, $2
jr .done
.Charmander
@@ -124,24 +129,24 @@ SSAnne2Script2: ; 6146d (18:546d)
ld a, $f0
ld [wJoyIgnore], a
ld a, $3
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $2
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
ld a, [W_XCOORD]
cp $25
- jr nz, .asm_61497 ; 0x61490 $5
+ jr nz, .asm_61497
ld de, MovementData_614b9
- jr .asm_6149a ; 0x61495 $3
+ jr .asm_6149a
.asm_61497
ld de, MovementData_614b7
.asm_6149a
ld a, $2
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
callba Music_RivalAlternateStart
ld a, $3
@@ -149,10 +154,15 @@ SSAnne2Script2: ; 6146d (18:546d)
ret
MovementData_614b7: ; 614b7 (18:54b7)
- db $C0,$00
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
MovementData_614b9: ; 614b9 (18:54b9)
- db $00,$00,$00,$00,$FF
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
SSAnne2Script3: ; 614be (18:54be)
ld a, [wd730]
@@ -161,7 +171,7 @@ SSAnne2Script3: ; 614be (18:54be)
xor a
ld [wJoyIgnore], a
ld a, HS_SS_ANNE_2_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
call PlayDefaultMusic
ld a, $4
@@ -178,7 +188,7 @@ SSAnne2Text1: ; 614e1 (18:54e1)
db "@"
SSAnne2Text2: ; 614e6 (18:54e6)
- db $8
+ TX_ASM
ld hl, SSAnneRivalBeforeBattleText
call PrintText
ld hl, wd72d
diff --git a/scripts/ssanne5.asm b/scripts/ssanne5.asm
index 96b94c52..76553563 100755
--- a/scripts/ssanne5.asm
+++ b/scripts/ssanne5.asm
@@ -1,6 +1,6 @@
SSAnne5Script: ; 616ae (18:56ae)
call EnableAutoTextBoxDrawing
- ld hl, SSAnne5TrainerHeader0 ; $56d1
+ ld hl, SSAnne5TrainerHeader0
ld de, SSAnne5ScriptPointers
ld a, [W_SSANNE5CURSCRIPT]
call ExecuteCurMapScriptInTable
@@ -21,22 +21,22 @@ SSAnne5TextPointers: ; 616c7 (18:56c7)
SSAnne5TrainerHeaders: ; 616d1 (18:56d1)
SSAnne5TrainerHeader0: ; 616d1 (18:56d1)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_5_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd7ff ; flag's byte
- dw SSAnne5BattleText1 ; 0x5703 TextBeforeBattle
- dw SSAnne5AfterBattleText1 ; 0x570d TextAfterBattle
- dw SSAnne5EndBattleText1 ; 0x5708 TextEndBattle
- dw SSAnne5EndBattleText1 ; 0x5708 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_5_TRAINER_0
+ dw SSAnne5BattleText1 ; TextBeforeBattle
+ dw SSAnne5AfterBattleText1 ; TextAfterBattle
+ dw SSAnne5EndBattleText1 ; TextEndBattle
+ dw SSAnne5EndBattleText1 ; TextEndBattle
SSAnne5TrainerHeader1: ; 616dd (18:56dd)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_5_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd7ff ; flag's byte
- dw SSAnne5BattleText2 ; 0x571c TextBeforeBattle
- dw SSAnne5AfterBattleText2 ; 0x5726 TextAfterBattle
- dw SSAnne5EndBattleText2 ; 0x5721 TextEndBattle
- dw SSAnne5EndBattleText2 ; 0x5721 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_5_TRAINER_1
+ dw SSAnne5BattleText2 ; TextBeforeBattle
+ dw SSAnne5AfterBattleText2 ; TextAfterBattle
+ dw SSAnne5EndBattleText2 ; TextEndBattle
+ dw SSAnne5EndBattleText2 ; TextEndBattle
db $ff
@@ -53,7 +53,7 @@ SSAnne5Text3: ; 616f4 (18:56f4)
db "@"
SSAnne5Text4: ; 616f9 (18:56f9)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne5TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -71,7 +71,7 @@ SSAnne5AfterBattleText1: ; 6170d (18:570d)
db "@"
SSAnne5Text5: ; 61712 (18:5712)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne5TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/ssanne6.asm b/scripts/ssanne6.asm
index ded8e719..fbe8176d 100755
--- a/scripts/ssanne6.asm
+++ b/scripts/ssanne6.asm
@@ -36,22 +36,22 @@ SSAnne6Text6: ; 617de (18:57de)
db "@"
SSAnne6Text7: ; 617e3 (18:57e3)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne6Text_61807
call PrintText
ld a, [hRandomAdd]
bit 7, a
- jr z, .asm_93eb1 ; 0x617ee
+ jr z, .asm_93eb1
ld hl, SSAnne6Text_6180c
- jr .asm_63292 ; 0x617f3
-.asm_93eb1 ; 0x617f5
+ jr .asm_63292
+.asm_93eb1
bit 4, a
- jr z, .asm_7436c ; 0x617f7
+ jr z, .asm_7436c
ld hl, SSAnne6Text_61811
- jr .asm_63292 ; 0x617fc
-.asm_7436c ; 0x617fe
+ jr .asm_63292
+.asm_7436c
ld hl, SSAnne6Text_61816
-.asm_63292 ; 0x61801
+.asm_63292
call PrintText
jp TextScriptEnd
diff --git a/scripts/ssanne7.asm b/scripts/ssanne7.asm
index 1ca97ce2..911dac7f 100755
--- a/scripts/ssanne7.asm
+++ b/scripts/ssanne7.asm
@@ -3,8 +3,7 @@ SSAnne7Script: ; 61895 (18:5895)
jp EnableAutoTextBoxDrawing
SSAnne7Script_6189b: ; 6189b (18:589b)
- ld a, [wd803]
- bit 1, a
+ CheckEvent EVENT_RUBBED_CAPTAINS_BACK
ret nz
ld hl, wd72d
set 5, [hl]
@@ -16,57 +15,54 @@ SSAnne7TextPointers: ; 618a7 (18:58a7)
dw SSAnne7Text3
SSAnne7Text1: ; 618ad (18:58ad)
- db $08 ; asm
- ld a, [wd803]
- bit 0, a
- jr nz, .asm_797c4 ; 0x618b3
+ TX_ASM
+ CheckEvent EVENT_GOT_HM01
+ jr nz, .asm_797c4
ld hl, SSAnne7RubText
call PrintText
ld hl, ReceivingHM01Text
call PrintText
- ld bc, (HM_01 << 8) | 1
+ lb bc, HM_01, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedHM01Text
call PrintText
- ld hl, wd803
- set 0, [hl]
- jr .asm_0faf5 ; 0x618d4
+ SetEvent EVENT_GOT_HM01
+ jr .asm_0faf5
.BagFull
ld hl, HM01NoRoomText
call PrintText
ld hl, wd72d
set 5, [hl]
- jr .asm_0faf5 ; 0x618e1
-.asm_797c4 ; 0x618e3
+ jr .asm_0faf5
+.asm_797c4
ld hl, SSAnne7Text_61932
call PrintText
-.asm_0faf5 ; 0x618e9
+.asm_0faf5
jp TextScriptEnd
SSAnne7RubText: ; 618ec (18:58ec)
TX_FAR _SSAnne7RubText
- db $8
- ld a, [wc0ef]
- cp $1f
- ld [wc0f0], a
- jr nz, .asm_61908 ; 0x618f9 $d
+ TX_ASM
+ ld a, [wAudioROMBank]
+ cp BANK(Audio3_UpdateMusic)
+ ld [wAudioSavedROMBank], a
+ jr nz, .asm_61908
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
- ld a, Bank(Func_9876)
- ld [wc0ef], a
+ ld a, Bank(Music_PkmnHealed)
+ ld [wAudioROMBank], a
.asm_61908
ld a, MUSIC_PKMN_HEALED
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
.asm_61910
- ld a, [wc026]
+ ld a, [wChannelSoundIDs]
cp MUSIC_PKMN_HEALED
- jr z, .asm_61910 ; 0x61915 $f9
+ jr z, .asm_61910
call PlayDefaultMusic
- ld hl, wd803
- set 1, [hl]
+ SetEvent EVENT_RUBBED_CAPTAINS_BACK
ld hl, wd72d
res 5, [hl]
jp TextScriptEnd
diff --git a/scripts/ssanne8.asm b/scripts/ssanne8.asm
index ff7fc57b..195c9a81 100755
--- a/scripts/ssanne8.asm
+++ b/scripts/ssanne8.asm
@@ -22,75 +22,75 @@ SSAnne8TextPointers: ; 6198f (18:598f)
dw SSAnne8Text7
dw SSAnne8Text8
dw SSAnne8Text9
- dw Predef5CText
+ dw PickUpItemText
dw SSAnne8Text11
SSAnne8TrainerHeaders: ; 619a5 (18:59a5)
SSAnne8TrainerHeader0: ; 619a5 (18:59a5)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_8_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd805 ; flag's byte
- dw SSAnne8BattleText1 ; 0x5a0b TextBeforeBattle
- dw SSAnne8AfterBattleText1 ; 0x5a15 TextAfterBattle
- dw SSAnne8EndBattleText1 ; 0x5a10 TextEndBattle
- dw SSAnne8EndBattleText1 ; 0x5a10 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_8_TRAINER_0
+ dw SSAnne8BattleText1 ; TextBeforeBattle
+ dw SSAnne8AfterBattleText1 ; TextAfterBattle
+ dw SSAnne8EndBattleText1 ; TextEndBattle
+ dw SSAnne8EndBattleText1 ; TextEndBattle
SSAnne8TrainerHeader1: ; 619b1 (18:59b1)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_8_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd805 ; flag's byte
- dw SSAnne8BattleText2 ; 0x5a1a TextBeforeBattle
- dw SSAnne8AfterBattleText2 ; 0x5a24 TextAfterBattle
- dw SSAnne8EndBattleText2 ; 0x5a1f TextEndBattle
- dw SSAnne8EndBattleText2 ; 0x5a1f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_8_TRAINER_1
+ dw SSAnne8BattleText2 ; TextBeforeBattle
+ dw SSAnne8AfterBattleText2 ; TextAfterBattle
+ dw SSAnne8EndBattleText2 ; TextEndBattle
+ dw SSAnne8EndBattleText2 ; TextEndBattle
SSAnne8TrainerHeader2: ; 619bd (18:59bd)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_8_TRAINER_2
db ($2 << 4) ; trainer's view range
- dw wd805 ; flag's byte
- dw SSAnne8BattleText3 ; 0x5a29 TextBeforeBattle
- dw SSAnne8AfterBattleText3 ; 0x5a33 TextAfterBattle
- dw SSAnne8EndBattleText3 ; 0x5a2e TextEndBattle
- dw SSAnne8EndBattleText3 ; 0x5a2e TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_8_TRAINER_2
+ dw SSAnne8BattleText3 ; TextBeforeBattle
+ dw SSAnne8AfterBattleText3 ; TextAfterBattle
+ dw SSAnne8EndBattleText3 ; TextEndBattle
+ dw SSAnne8EndBattleText3 ; TextEndBattle
SSAnne8TrainerHeader3: ; 619c9 (18:59c9)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_8_TRAINER_3
db ($2 << 4) ; trainer's view range
- dw wd805 ; flag's byte
- dw SSAnne8BattleText4 ; 0x5a38 TextBeforeBattle
- dw SSAnne8AfterBattleText4 ; 0x5a42 TextAfterBattle
- dw SSAnne8EndBattleText4 ; 0x5a3d TextEndBattle
- dw SSAnne8EndBattleText4 ; 0x5a3d TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_8_TRAINER_3
+ dw SSAnne8BattleText4 ; TextBeforeBattle
+ dw SSAnne8AfterBattleText4 ; TextAfterBattle
+ dw SSAnne8EndBattleText4 ; TextEndBattle
+ dw SSAnne8EndBattleText4 ; TextEndBattle
db $ff
SSAnne8Text1: ; 619d6 (18:59d6)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne8TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
SSAnne8Text2: ; 619e0 (18:59e0)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne8TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
SSAnne8Text3: ; 619ea (18:59ea)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne8TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
SSAnne8Text4: ; 619f4 (18:59f4)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne8TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
SSAnne8Text8: ; 619fe (18:59fe)
TX_FAR _SSAnne8Text8
- db $08 ; asm
+ TX_ASM
ld a, WIGGLYTUFF
call PlayCry
jp TextScriptEnd
diff --git a/scripts/ssanne9.asm b/scripts/ssanne9.asm
index db34fcf2..525a2964 100755
--- a/scripts/ssanne9.asm
+++ b/scripts/ssanne9.asm
@@ -21,10 +21,10 @@ SSAnne9TextPointers: ; 61b6a (18:5b6a)
dw SSAnne9Text3
dw SSAnne9Text4
dw SSAnne9Text5
- dw Predef5CText
+ dw PickUpItemText
dw SSAnne9Text7
dw SSAnne9Text8
- dw Predef5CText
+ dw PickUpItemText
dw SSAnne9Text10
dw SSAnne9Text11
dw SSAnne9Text12
@@ -32,69 +32,69 @@ SSAnne9TextPointers: ; 61b6a (18:5b6a)
SSAnne9TrainerHeaders: ; 61b84 (18:5b84)
SSAnne9TrainerHeader0: ; 61b84 (18:5b84)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_9_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd807 ; flag's byte
- dw SSAnne9BattleText1 ; 0x5c51 TextBeforeBattle
- dw SSAnne9AfterBattleText1 ; 0x5c5b TextAfterBattle
- dw SSAnne9EndBattleText1 ; 0x5c56 TextEndBattle
- dw SSAnne9EndBattleText1 ; 0x5c56 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_9_TRAINER_0
+ dw SSAnne9BattleText1 ; TextBeforeBattle
+ dw SSAnne9AfterBattleText1 ; TextAfterBattle
+ dw SSAnne9EndBattleText1 ; TextEndBattle
+ dw SSAnne9EndBattleText1 ; TextEndBattle
SSAnne9TrainerHeader1: ; 61b90 (18:5b90)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_9_TRAINER_1
db ($3 << 4) ; trainer's view range
- dw wd807 ; flag's byte
- dw SSAnne9BattleText2 ; 0x5c60 TextBeforeBattle
- dw SSAnne9AfterBattleText2 ; 0x5c6a TextAfterBattle
- dw SSAnne9EndBattleText2 ; 0x5c65 TextEndBattle
- dw SSAnne9EndBattleText2 ; 0x5c65 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_9_TRAINER_1
+ dw SSAnne9BattleText2 ; TextBeforeBattle
+ dw SSAnne9AfterBattleText2 ; TextAfterBattle
+ dw SSAnne9EndBattleText2 ; TextEndBattle
+ dw SSAnne9EndBattleText2 ; TextEndBattle
SSAnne9TrainerHeader2: ; 61b9c (18:5b9c)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_9_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd807 ; flag's byte
- dw SSAnne9BattleText3 ; 0x5c6f TextBeforeBattle
- dw SSAnne9AfterBattleText3 ; 0x5c79 TextAfterBattle
- dw SSAnne9EndBattleText3 ; 0x5c74 TextEndBattle
- dw SSAnne9EndBattleText3 ; 0x5c74 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_9_TRAINER_2
+ dw SSAnne9BattleText3 ; TextBeforeBattle
+ dw SSAnne9AfterBattleText3 ; TextAfterBattle
+ dw SSAnne9EndBattleText3 ; TextEndBattle
+ dw SSAnne9EndBattleText3 ; TextEndBattle
SSAnne9TrainerHeader3: ; 61ba8 (18:5ba8)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_9_TRAINER_3
db ($2 << 4) ; trainer's view range
- dw wd807 ; flag's byte
- dw SSAnne9BattleText4 ; 0x5c7e TextBeforeBattle
- dw SSAnne9AfterBattleText4 ; 0x5c88 TextAfterBattle
- dw SSAnne9EndBattleText4 ; 0x5c83 TextEndBattle
- dw SSAnne9EndBattleText4 ; 0x5c83 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_9_TRAINER_3
+ dw SSAnne9BattleText4 ; TextBeforeBattle
+ dw SSAnne9AfterBattleText4 ; TextAfterBattle
+ dw SSAnne9EndBattleText4 ; TextEndBattle
+ dw SSAnne9EndBattleText4 ; TextEndBattle
db $ff
SSAnne9Text1: ; 61bb5 (18:5bb5)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne9TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
SSAnne9Text2: ; 61bbf (18:5bbf)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne9TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
SSAnne9Text3: ; 61bc9 (18:5bc9)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne9TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
SSAnne9Text4: ; 61bd3 (18:5bd3)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne9TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
SSAnne9Text5: ; 61bdd (18:5bdd)
- db $08 ; asm
+ TX_ASM
call SaveScreenTilesToBuffer1
ld hl, SSAnne9Text_61bf2
call PrintText
@@ -108,7 +108,7 @@ SSAnne9Text_61bf2: ; 61bf2 (18:5bf2)
db "@"
SSAnne9Text7: ; 61bf7 (18:5bf7)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne9Text_61c01
call PrintText
jp TextScriptEnd
@@ -118,7 +118,7 @@ SSAnne9Text_61c01: ; 61c01 (18:5c01)
db "@"
SSAnne9Text8: ; 61c06 (18:5c06)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne9Text_61c10
call PrintText
jp TextScriptEnd
@@ -128,7 +128,7 @@ SSAnne9Text_61c10: ; 61c10 (18:5c10)
db "@"
SSAnne9Text10: ; 61c15 (18:5c15)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne9Text_61c1f
call PrintText
jp TextScriptEnd
@@ -138,7 +138,7 @@ SSAnne9Text_61c1f: ; 61c1f (18:5c1f)
db "@"
SSAnne9Text11: ; 61c24 (18:5c24)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne9Text_61c2e
call PrintText
jp TextScriptEnd
@@ -148,7 +148,7 @@ SSAnne9Text_61c2e: ; 61c2e (18:5c2e)
db "@"
SSAnne9Text12: ; 61c33 (18:5c33)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne9Text_61c3d
call PrintText
jp TextScriptEnd
@@ -158,7 +158,7 @@ SSAnne9Text_61c3d: ; 61c3d (18:5c3d)
db "@"
SSAnne9Text13: ; 61c42 (18:5c42)
- db $08 ; asm
+ TX_ASM
ld hl, SSAnne9Text_61c4c
call PrintText
jp TextScriptEnd
diff --git a/scripts/battlecenterm.asm b/scripts/tradecenter.asm
index 5ab697a1..22a61095 100755..100644
--- a/scripts/battlecenterm.asm
+++ b/scripts/tradecenter.asm
@@ -1,14 +1,14 @@
-BattleCenterMScript: ; 4fd10 (13:7d10)
+TradeCenterScript: ; 4fd10 (13:7d10)
call EnableAutoTextBoxDrawing
ld a, [$ffaa]
cp $2
- ld a, $8
- jr z, .asm_4fd1d ; 0x4fd19 $2
- ld a, $c
-.asm_4fd1d
- ld [$ff8d], a
+ ld a, SPRITE_FACING_LEFT
+ jr z, .next
+ ld a, SPRITE_FACING_RIGHT
+.next
+ ld [hSpriteFacingDirection], a
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call SetSpriteFacingDirection
ld hl, wd72d
bit 0, [hl]
@@ -19,20 +19,20 @@ BattleCenterMScript: ; 4fd10 (13:7d10)
ld [hli], a
ld a, $a
ld [hl], a
- ld a, $8
+ ld a, SPRITE_FACING_LEFT
ld [wSpriteStateData1 + $19], a
ld a, [$ffaa]
cp $2
ret z
ld a, $7
ld [wSpriteStateData2 + $15], a
- ld a, $c
+ ld a, SPRITE_FACING_RIGHT
ld [wSpriteStateData1 + $19], a
ret
-BattleCenterMTextPointers: ; 4fd4c (13:7d4c)
- dw BattleCenterMText1
+TradeCenterTextPointers: ; 4fd4c (13:7d4c)
+ dw TradeCenterText1
-BattleCenterMText1: ; 4fd4e (13:7d4e)
- TX_FAR _BattleCenterMText1
+TradeCenterText1: ; 4fd4e (13:7d4e)
+ TX_FAR _TradeCenterText1
db "@"
diff --git a/scripts/tradecenterm.asm b/scripts/tradecenterm.asm
deleted file mode 100755
index 662a1df7..00000000
--- a/scripts/tradecenterm.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-TradeCenterMScript: ; 4fd7d (13:7d7d)
- jp BattleCenterMScript
-
-TradeCenterMTextPointers: ; 4fd80 (13:7d80)
- dw TradeCenterMText1
-
-TradeCenterMText1: ; 4fd82 (13:7d82)
- TX_FAR _TradeCenterMText1
- db "@"
diff --git a/scripts/undergroundpathentranceroute5.asm b/scripts/undergroundpathentranceroute5.asm
index 03f1c35d..c93ab7b5 100755
--- a/scripts/undergroundpathentranceroute5.asm
+++ b/scripts/undergroundpathentranceroute5.asm
@@ -10,7 +10,7 @@ UndergroundPathEntranceRoute5TextPointers: ; 5d6b0 (17:56b0)
dw UndergroundPathEntranceRoute5Text1
UndergroundPathEntranceRoute5Text1: ; 5d6b2 (17:56b2)
- db $08 ; asm
+ TX_ASM
ld a, $9
ld [wWhichTrade], a
predef DoInGameTradeDialogue
diff --git a/scripts/undergroundpathentranceroute7copy.asm b/scripts/undergroundpathentranceroute7copy.asm
index 2462a254..d94c9f37 100755
--- a/scripts/undergroundpathentranceroute7copy.asm
+++ b/scripts/undergroundpathentranceroute7copy.asm
@@ -4,21 +4,21 @@ UndergroundPathEntranceRoute7CopyScript: ; 5d769 (17:5769)
ret
UndergroundPathEntranceRoute7CopyTextPointers: ; 5d76f (17:576f)
- dw UnnamedText_5d773
- dw UnnamedText_5d77d
+ dw UGPathRoute7EntranceUnusedText_5d773
+ dw UGPathRoute7EntranceUnusedText_5d77d
-UnnamedText_5d773: ; 5d773 (17:5773)
- TX_FAR _UnnamedText_5d773
+UGPathRoute7EntranceUnusedText_5d773: ; 5d773 (17:5773)
+ TX_FAR _UGPathRoute7EntranceUnusedText_5d773
db "@"
-UnnamedText_5d778: ; 5d778 (17:5778)
- TX_FAR _UnnamedText_5d778
+UGPathRoute7EntranceUnusedText_5d778: ; 5d778 (17:5778)
+ TX_FAR _UGPathRoute7EntranceUnusedText_5d778
db "@"
-UnnamedText_5d77d: ; 5d77d (17:577d)
- TX_FAR _UnnamedText_5d77d
+UGPathRoute7EntranceUnusedText_5d77d: ; 5d77d (17:577d)
+ TX_FAR _UGPathRoute7EntranceUnusedText_5d77d
db "@"
-UnnamedText_5d782: ; 5d782 (17:5782)
- TX_FAR _UnnamedText_5d782
+UGPathRoute7EntranceUnusedText_5d782: ; 5d782 (17:5782)
+ TX_FAR _UGPathRoute7EntranceUnusedText_5d782
db "@"
diff --git a/scripts/unknowndungeon1.asm b/scripts/unknowndungeon1.asm
index 008a7bd7..696ddafa 100755
--- a/scripts/unknowndungeon1.asm
+++ b/scripts/unknowndungeon1.asm
@@ -2,6 +2,6 @@ UnknownDungeon1Script: ; 74d0c (1d:4d0c)
jp EnableAutoTextBoxDrawing
UnknownDungeon1TextPointers: ; 74d0f (1d:4d0f)
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
diff --git a/scripts/unknowndungeon2.asm b/scripts/unknowndungeon2.asm
index c8249b27..f3cbb6a5 100755
--- a/scripts/unknowndungeon2.asm
+++ b/scripts/unknowndungeon2.asm
@@ -2,6 +2,6 @@ UnknownDungeon2Script: ; 45e0b (11:5e0b)
jp EnableAutoTextBoxDrawing
UnknownDungeon2TextPointers: ; 45e0e (11:5e0e)
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
diff --git a/scripts/unknowndungeon3.asm b/scripts/unknowndungeon3.asm
index d2078916..42459766 100755
--- a/scripts/unknowndungeon3.asm
+++ b/scripts/unknowndungeon3.asm
@@ -14,30 +14,30 @@ UnknownDungeon3ScriptPointers: ; 45f03 (11:5f03)
UnknownDungeon3TextPointers: ; 45f09 (11:5f09)
dw UnknownDungeon3Text1
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
UnknownDungeon3TrainerHeaders: ; 45f0f (11:5f0f)
UnknownDungeon3TrainerHeader0: ; 45f0f (11:5f0f)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_UNKNOWN_DUNGEON_3_TRAINER_0
db ($0 << 4) ; trainer's view range
- dw wd85f ; flag's byte
- dw UnknownDungeon3MewtwoText ; 0x5f26 TextBeforeBattle
- dw UnknownDungeon3MewtwoText ; 0x5f26 TextAfterBattle
- dw UnknownDungeon3MewtwoText ; 0x5f26 TextEndBattle
- dw UnknownDungeon3MewtwoText ; 0x5f26 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_UNKNOWN_DUNGEON_3_TRAINER_0
+ dw UnknownDungeon3MewtwoText ; TextBeforeBattle
+ dw UnknownDungeon3MewtwoText ; TextAfterBattle
+ dw UnknownDungeon3MewtwoText ; TextEndBattle
+ dw UnknownDungeon3MewtwoText ; TextEndBattle
db $ff
UnknownDungeon3Text1: ; 45f1c (11:5f1c)
- db $08 ; asm
+ TX_ASM
ld hl, UnknownDungeon3TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
UnknownDungeon3MewtwoText: ; 45f26 (11:5f26)
TX_FAR _UnknownDungeon3MewtwoText
- db $8
+ TX_ASM
ld a, MEWTWO
call PlayCry
call WaitForSoundToFinish
diff --git a/scripts/vermilioncity.asm b/scripts/vermilioncity.asm
index 1214b27c..a203323f 100755
--- a/scripts/vermilioncity.asm
+++ b/scripts/vermilioncity.asm
@@ -17,15 +17,14 @@ VermilionCityScript_197c0: ; 197c0 (6:57c0)
call Random
ld a, [$ffd4]
and $e
- ld [wd743], a
+ ld [wFirstLockTrashCanIndex], a
ret
VermilionCityScript_197cb: ; 197cb (6:57cb)
- ld hl, wd803
- bit 2, [hl]
+ CheckEventHL EVENT_SS_ANNE_LEFT
ret z
- bit 3, [hl]
- set 3, [hl]
+ CheckEventReuseHL EVENT_WALKED_PAST_GUARD_AFTER_SS_ANNE_LEFT
+ SetEventReuseHL EVENT_WALKED_PAST_GUARD_AFTER_SS_ANNE_LEFT
ret nz
ld a, $2
ld [W_VERMILIONCITYCURSCRIPT], a
@@ -40,7 +39,7 @@ VermilionCityScriptPointers: ; 197dc (6:57dc)
VermilionCityScript0: ; 197e6 (6:57e6)
ld a, [wSpriteStateData1 + 9]
- and a
+ and a ; cp SPRITE_FACING_DOWN
ret nz
ld hl, CoordsData_19823
call ArePlayerCoordsInArray
@@ -49,18 +48,17 @@ VermilionCityScript0: ; 197e6 (6:57e6)
ld [hJoyHeld], a
ld [wcf0d], a
ld a, $3
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld a, [wd803]
- bit 2, a
- jr nz, .asm_19810 ; 0x19804 $a
- ld b, $3f
- predef IsItemInBag_
+ CheckEvent EVENT_SS_ANNE_LEFT
+ jr nz, .asm_19810
+ ld b, S_S__TICKET
+ predef GetQuantityOfItemInBag
ld a, b
and a
ret nz
.asm_19810
- ld a, $40
+ ld a, D_UP
ld [wSimulatedJoypadStatesEnd], a
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
@@ -84,10 +82,10 @@ VermilionCityScript4: ; 19826 (6:5826)
VermilionCityScript2: ; 19833 (6:5833)
ld a, $ff
ld [wJoyIgnore], a
- ld a, $40
+ ld a, D_UP
ld [wSimulatedJoypadStatesEnd], a
- ld [wccd4], a
- ld a, $2
+ ld [wSimulatedJoypadStatesEnd + 1], a
+ ld a, 2
ld [wSimulatedJoypadStatesIndex], a
call StartSimulatingJoypadStates
ld a, $3
@@ -109,7 +107,7 @@ VermilionCityScript1: ; 1985f (6:585f)
ld a, [wSimulatedJoypadStatesIndex]
and a
ret nz
- ld c, $a
+ ld c, 10
call DelayFrames
ld a, $0
ld [W_VERMILIONCITYCURSCRIPT], a
@@ -135,17 +133,16 @@ VermilionCityText1: ; 19889 (6:5889)
db "@"
VermilionCityText2: ; 1988e (6:588e)
- db $08 ; asm
- ld a, [wd803]
- bit 2, a
- jr nz, .asm_359bd ; 0x19894
+ TX_ASM
+ CheckEvent EVENT_SS_ANNE_LEFT
+ jr nz, .asm_1989e
ld hl, VermilionCityText_198a7
call PrintText
- jr .asm_735d9 ; 0x1989c
-.asm_359bd ; 0x1989e
+ jr .asm_198a4
+.asm_1989e
ld hl, VermilionCityText_198ac
call PrintText
-.asm_735d9 ; 0x198a4
+.asm_198a4
jp TextScriptEnd
VermilionCityText_198a7: ; 198a7 (6:58a7)
@@ -157,41 +154,40 @@ VermilionCityText_198ac: ; 198ac (6:58ac)
db "@"
VermilionCityText3: ; 198b1 (6:58b1)
- db $08 ; asm
- ld a, [wd803]
- bit 2, a
- jr nz, .asm_3e0e9 ; 0x198b7
+ TX_ASM
+ CheckEvent EVENT_SS_ANNE_LEFT
+ jr nz, .asm_198f6
ld a, [wSpriteStateData1 + 9]
- cp $c
- jr z, .asm_07af3 ; 0x198be
+ cp SPRITE_FACING_RIGHT
+ jr z, .asm_198c8
ld hl, VermilionCityCoords1
call ArePlayerCoordsInArray
- jr nc, .asm_57b73 ; 0x198c6
-.asm_07af3 ; 0x198c8
+ jr nc, .asm_198d0
+.asm_198c8
ld hl, SSAnneWelcomeText4
call PrintText
- jr .asm_79bd1 ; 0x198ce
-.asm_57b73 ; 0x198d0
+ jr .asm_198fc
+.asm_198d0
ld hl, SSAnneWelcomeText9
call PrintText
ld b, S_S__TICKET
- predef IsItemInBag_
+ predef GetQuantityOfItemInBag
ld a, b
and a
- jr nz, .asm_0419b ; 0x198df
+ jr nz, .asm_198e9
ld hl, SSAnneNoTicketText
call PrintText
- jr .asm_79bd1 ; 0x198e7
-.asm_0419b ; 0x198e9
+ jr .asm_198fc
+.asm_198e9
ld hl, SSAnneFlashedTicketText
call PrintText
ld a, $4
ld [W_VERMILIONCITYCURSCRIPT], a
- jr .asm_79bd1 ; 0x198f4
-.asm_3e0e9 ; 0x198f6
+ jr .asm_198fc
+.asm_198f6
ld hl, SSAnneNotHereText
call PrintText
-.asm_79bd1 ; 0x198fc
+.asm_198fc
jp TextScriptEnd
VermilionCityCoords1: ; 198ff (6:58ff)
@@ -225,11 +221,11 @@ VermilionCityText4: ; 1991d (6:591d)
VermilionCityText5: ; 19922 (6:5922)
TX_FAR _VermilionCityText5
- db $08 ; asm
+ TX_ASM
ld a, MACHOP
call PlayCry
call WaitForSoundToFinish
- ld hl, VermilionCityText14 ; $5933
+ ld hl, VermilionCityText14
ret
VermilionCityText14: ; 19933 (6:5933)
diff --git a/scripts/vermiliondock.asm b/scripts/vermiliondock.asm
index 7b23c41e..78ada7cf 100755
--- a/scripts/vermiliondock.asm
+++ b/scripts/vermiliondock.asm
@@ -1,21 +1,20 @@
VermilionDockScript: ; 1db52 (7:5b52)
call EnableAutoTextBoxDrawing
- ld hl, wd803
- bit 4, [hl]
- jr nz, .asm_1db8d ; 0x1db5a $31
- bit 0, [hl]
+ CheckEventHL EVENT_STARTED_WALKING_OUT_OF_DOCK
+ jr nz, .asm_1db8d
+ CheckEventReuseHL EVENT_GOT_HM01
ret z
ld a, [wDestinationWarpID]
cp $1
ret nz
- bit 2, [hl]
+ CheckEventReuseHL EVENT_SS_ANNE_LEFT
jp z, VermilionDock_1db9b
- set 4, [hl]
+ SetEventReuseHL EVENT_STARTED_WALKING_OUT_OF_DOCK
call Delay3
ld hl, wd730
set 7, [hl]
ld hl, wSimulatedJoypadStatesEnd
- ld a, $40
+ ld a, D_UP
ld [hli], a
ld [hli], a
ld [hl], a
@@ -28,20 +27,20 @@ VermilionDockScript: ; 1db52 (7:5b52)
ld [wJoyIgnore], a
ret
.asm_1db8d
- bit 5, [hl]
+ CheckEventAfterBranchReuseHL EVENT_WALKED_OUT_OF_DOCK, EVENT_STARTED_WALKING_OUT_OF_DOCK
ret nz
ld a, [wSimulatedJoypadStatesIndex]
and a
ret nz
ld [wJoyIgnore], a
- set 5, [hl]
+ SetEventReuseHL EVENT_WALKED_OUT_OF_DOCK
ret
VermilionDock_1db9b: ; 1db9b (7:5b9b)
- set 2, [hl]
+ SetEventForceReuseHL EVENT_SS_ANNE_LEFT
ld a, $ff
ld [wJoyIgnore], a
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
ld c, BANK(Music_Surfing)
ld a, MUSIC_SURFING
@@ -49,30 +48,30 @@ VermilionDock_1db9b: ; 1db9b (7:5b9b)
callba LoadSmokeTileFourTimes
xor a
ld [wSpriteStateData1 + 2], a
- ld c, $78
+ ld c, 120
call DelayFrames
ld b, $9c
call CopyScreenTileBufferToVRAM
- hlCoord 0, 10
- ld bc, $0078
- ld a, $14
+ coord hl, 0, 10
+ ld bc, SCREEN_WIDTH * 6
+ ld a, $14 ; water tile
call FillMemory
- ld a, $1
- ld [$ffba], a
+ ld a, 1
+ ld [H_AUTOBGTRANSFERENABLED], a
call Delay3
xor a
- ld [$ffba], a
- ld [wWhichTrade], a
- ld [$ff49], a
- ld a, $58
- ld [wTrainerEngageDistance], a
+ ld [H_AUTOBGTRANSFERENABLED], a
+ ld [wSSAnneSmokeDriftAmount], a
+ ld [rOBP1], a
+ ld a, 88
+ ld [wSSAnneSmokeX], a
ld hl, wMapViewVRAMPointer
ld c, [hl]
inc hl
ld b, [hl]
push bc
push hl
- ld a, (SFX_02_54 - SFX_Headers_02) / 3
+ ld a, SFX_SS_ANNE_HORN
call PlaySoundWaitForCurrent
ld a, $ff
ld [wUpdateSpritesEnabled], a
@@ -88,26 +87,26 @@ VermilionDock_1db9b: ; 1db9b (7:5b9b)
push hl
push de
call ScheduleEastColumnRedraw
- call VermilionDock_1dc59
+ call VermilionDock_EmitSmokePuff
pop de
ld b, $10
.asm_1dc11
- call VermilionDock_1dc42
+ call VermilionDock_AnimSmokePuffDriftRight
ld c, $8
.asm_1dc16
call VermilionDock_1dc7c
dec c
- jr nz, .asm_1dc16 ; 0x1dc1a $fa
+ jr nz, .asm_1dc16
inc d
dec b
- jr nz, .asm_1dc11 ; 0x1dc1e $f1
+ jr nz, .asm_1dc11
pop bc
dec e
- jr nz, .asm_1dbfa ; 0x1dc22 $d6
+ jr nz, .asm_1dbfa
xor a
- ld [$ff4a], a
+ ld [rWY], a
ld [hWY], a
- call VermilionDock_1dc94
+ call VermilionDock_EraseSSAnne
ld a, $90
ld [hWY], a
ld a, $1
@@ -122,33 +121,34 @@ VermilionDock_1db9b: ; 1db9b (7:5b9b)
dec [hl]
ret
-VermilionDock_1dc42: ; 1dc42 (7:5c42)
+VermilionDock_AnimSmokePuffDriftRight: ; 1dc42 (7:5c42)
push bc
push de
ld hl, wOAMBuffer + $11
- ld a, [wWhichTrade]
+ ld a, [wSSAnneSmokeDriftAmount]
swap a
ld c, a
- ld de, $0004
-.asm_1dc50
+ ld de, 4
+.loop
inc [hl]
inc [hl]
add hl, de
dec c
- jr nz, .asm_1dc50 ; 0x1dc54 $fa
+ jr nz, .loop
pop de
pop bc
ret
-VermilionDock_1dc59: ; 1dc59 (7:5c59)
- ld a, [wTrainerEngageDistance]
- sub $10
- ld [wTrainerEngageDistance], a
+VermilionDock_EmitSmokePuff: ; 1dc59 (7:5c59)
+; new smoke puff above the S.S. Anne's front smokestack
+ ld a, [wSSAnneSmokeX]
+ sub 16
+ ld [wSSAnneSmokeX], a
ld c, a
- ld b, $64
- ld a, [wWhichTrade]
+ ld b, 100 ; Y
+ ld a, [wSSAnneSmokeDriftAmount]
inc a
- ld [wWhichTrade], a
+ ld [wSSAnneSmokeDriftAmount], a
ld a, $1
ld de, VermilionDockOAMBlock
call WriteOAMBlock
@@ -167,35 +167,43 @@ VermilionDock_1dc7c: ; 1dc7c (7:5c7c)
ld h, $0
ld l, $80
.asm_1dc86
- ld a, [$ff44]
+ ld a, [rLY]
cp l
- jr nz, .asm_1dc86 ; 0x1dc89 $fb
+ jr nz, .asm_1dc86
ld a, h
- ld [$ff43], a
+ ld [rSCX], a
.asm_1dc8e
- ld a, [$ff44]
+ ld a, [rLY]
cp h
- jr z, .asm_1dc8e ; 0x1dc91 $fb
+ jr z, .asm_1dc8e
ret
-VermilionDock_1dc94: ; 1dc94 (7:5c94)
- ld hl, wcc5b
- ld bc, $00b4
- ld a, $14
+VermilionDock_EraseSSAnne: ; 1dc94 (7:5c94)
+; Fill the area the S.S. Anne occupies in BG map 0 with water tiles.
+ ld hl, wVermilionDockTileMapBuffer
+ ld bc, (5 * BG_MAP_WIDTH) + SCREEN_WIDTH
+ ld a, $14 ; water tile
call FillMemory
- ld hl, vBGMap0 + 10 * 32
- ld de, wcc5b
- ld bc, $000c
+ ld hl, vBGMap0 + 10 * BG_MAP_WIDTH
+ ld de, wVermilionDockTileMapBuffer
+ ld bc, (6 * BG_MAP_WIDTH) / 16
call CopyVideoData
- ld hl, wOverworldMap + 10 + 7 * VERMILION_DOCK_WIDTH ; 10, 7
- ld a, $d
+
+; Replace the blocks of the lower half of the ship with water blocks. This
+; leaves the upper half alone, but that doesn't matter because replacing any of
+; the blocks is unnecessary because the blocks the ship occupies are south of
+; the player and won't be redrawn when the player automatically walks north and
+; exits the map. This code could be removed without affecting anything.
+ overworldMapCoord hl, 5, 2, VERMILION_DOCK_WIDTH
+ ld a, $d ; water block
ld [hli], a
ld [hli], a
ld [hli], a
ld [hl], a
- ld a, (SFX_02_54 - SFX_Headers_02) / 3
+
+ ld a, SFX_SS_ANNE_HORN
call PlaySound
- ld c, $78
+ ld c, 120
call DelayFrames
ret
diff --git a/scripts/vermiliongym.asm b/scripts/vermiliongym.asm
index 6178dafb..78a38aec 100755
--- a/scripts/vermiliongym.asm
+++ b/scripts/vermiliongym.asm
@@ -17,8 +17,8 @@ VermilionGymScript: ; 5ca26 (17:4a26)
ret
VermilionGymScript_5ca4c: ; 5ca4c (17:4a4c)
- ld hl, Gym3CityName ; $4a55
- ld de, Gym3LeaderName ; $4a64
+ ld hl, Gym3CityName
+ ld de, Gym3LeaderName
jp LoadGymLeaderAndCityName
Gym3CityName: ; 5ca55 (17:4a55)
@@ -28,18 +28,17 @@ Gym3LeaderName: ; 5ca64 (17:4a64)
db "LT.SURGE@"
VermilionGymScript_5ca6d: ; 5ca6d (17:4a6d)
- ld a, [wd773]
- bit 0, a
+ CheckEvent EVENT_2ND_LOCK_OPENED
jr nz, .asm_5ca78
ld a, $24
jr .asm_5ca7f
.asm_5ca78
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ ld a, SFX_GO_INSIDE
call PlaySound
ld a, $5
.asm_5ca7f
- ld [wd09f], a
- ld bc, $202
+ ld [wNewTileBlockID], a
+ lb bc, 2, 2
predef_jump ReplaceTileBlock
VermilionGymScript_5ca8a: ; 5ca8a (17:4a8a)
@@ -56,7 +55,7 @@ VermilionGymScriptPointers: ; 5ca95 (17:4a95)
dw VermilionGymScript3
VermilionGymScript3: ; 5ca9d (17:4a9d)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, VermilionGymScript_5ca8a
ld a, $f0
@@ -64,33 +63,29 @@ VermilionGymScript3: ; 5ca9d (17:4a9d)
VermilionGymScript_5caaa: ; 5caaa (17:4aaa)
ld a, $6
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd773
- set 7, [hl]
- ld bc, (TM_24 << 8) | 1
+ SetEvent EVENT_BEAT_LT_SURGE
+ lb bc, TM_24, 1
call GiveItem
jr nc, .BagFull
ld a, $7
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd773
- set 6, [hl]
+ SetEvent EVENT_GOT_TM24
jr .asm_5cad3
.BagFull
ld a, $8
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
.asm_5cad3
ld hl, W_OBTAINEDBADGES
set 2, [hl]
- ld hl, wd72a
+ ld hl, wBeatGymFlags
set 2, [hl]
; deactivate gym trainers
- ld a, [wd773]
- or %00011100
- ld [wd773], a
+ SetEventRange EVENT_BEAT_VERMILION_GYM_TRAINER_0, EVENT_BEAT_VERMILION_GYM_TRAINER_2
jp VermilionGymScript_5ca8a
@@ -106,49 +101,48 @@ VermilionGymTextPointers: ; 5cae8 (17:4ae8)
VermilionGymTrainerHeaders: ; 5caf8 (17:4af8)
VermilionGymTrainerHeader0: ; 5caf8 (17:4af8)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VERMILION_GYM_TRAINER_0
db ($3 << 4) ; trainer's view range
- dw wd773 ; flag's byte
- dw VermilionGymBattleText1 ; 0x4b9a TextBeforeBattle
- dw VermilionGymAfterBattleText1 ; 0x4ba4 TextAfterBattle
- dw VermilionGymEndBattleText1 ; 0x4b9f TextEndBattle
- dw VermilionGymEndBattleText1 ; 0x4b9f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VERMILION_GYM_TRAINER_0
+ dw VermilionGymBattleText1 ; TextBeforeBattle
+ dw VermilionGymAfterBattleText1 ; TextAfterBattle
+ dw VermilionGymEndBattleText1 ; TextEndBattle
+ dw VermilionGymEndBattleText1 ; TextEndBattle
VermilionGymTrainerHeader1: ; 5cb04 (17:4b04)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VERMILION_GYM_TRAINER_1
db ($2 << 4) ; trainer's view range
- dw wd773 ; flag's byte
- dw VermilionGymBattleText2 ; 0x4bb3 TextBeforeBattle
- dw VermilionGymAfterBattleText2 ; 0x4bbd TextAfterBattle
- dw VermilionGymEndBattleText2 ; 0x4bb8 TextEndBattle
- dw VermilionGymEndBattleText2 ; 0x4bb8 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VERMILION_GYM_TRAINER_1
+ dw VermilionGymBattleText2 ; TextBeforeBattle
+ dw VermilionGymAfterBattleText2 ; TextAfterBattle
+ dw VermilionGymEndBattleText2 ; TextEndBattle
+ dw VermilionGymEndBattleText2 ; TextEndBattle
VermilionGymTrainerHeader2: ; 5cb10 (17:4b10)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VERMILION_GYM_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd773 ; flag's byte
- dw VermilionGymBattleText3 ; 0x4bcc TextBeforeBattle
- dw VermilionGymAfterBattleText3 ; 0x4bd6 TextAfterBattle
- dw VermilionGymEndBattleText3 ; 0x4bd1 TextEndBattle
- dw VermilionGymEndBattleText3 ; 0x4bd1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VERMILION_GYM_TRAINER_2
+ dw VermilionGymBattleText3 ; TextBeforeBattle
+ dw VermilionGymAfterBattleText3 ; TextAfterBattle
+ dw VermilionGymEndBattleText3 ; TextEndBattle
+ dw VermilionGymEndBattleText3 ; TextEndBattle
db $ff
VermilionGymText1: ; 5cb1d (17:4b1d)
- db $08 ; asm
- ld a, [wd773]
- bit 7, a
- jr z, .asm_7cc29 ; 0x5cb23
- bit 6, a
- jr nz, .asm_41203 ; 0x5cb27
+ TX_ASM
+ CheckEvent EVENT_BEAT_LT_SURGE
+ jr z, .asm_5cb39
+ CheckEventReuseA EVENT_GOT_TM24
+ jr nz, .asm_5cb31
call z, VermilionGymScript_5caaa
call DisableWaitingAfterTextDisplay
- jr .asm_23621 ; 0x5cb2f
-.asm_41203 ; 0x5cb31
+ jr .asm_5cb6a
+.asm_5cb31
ld hl, VermilionGymText_5cb72
call PrintText
- jr .asm_23621 ; 0x5cb37
-.asm_7cc29 ; 0x5cb39
+ jr .asm_5cb6a
+.asm_5cb39
ld hl, VermilionGymText_5cb6d
call PrintText
ld hl, wd72d
@@ -157,18 +151,18 @@ VermilionGymText1: ; 5cb1d (17:4b1d)
ld hl, ReceivedThunderbadgeText
ld de, ReceivedThunderbadgeText
call SaveEndBattleTextPointers
- ldh a, [$8c]
+ ld a, [H_SPRITEINDEX]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
ld a, $3
ld [W_GYMLEADERNO], a
xor a
- ldh [$b4], a
+ ld [hJoyHeld], a
ld a, $3
ld [W_VERMILIONGYMCURSCRIPT], a
ld [W_CURMAPSCRIPT], a
-.asm_23621 ; 0x5cb6a
+.asm_5cb6a
jp TextScriptEnd
VermilionGymText_5cb6d: ; 5cb6d (17:4b6d)
@@ -198,7 +192,7 @@ ReceivedThunderbadgeText: ; 5cb8b (17:4b8b)
db "@"
VermilionGymText2: ; 5cb90 (17:4b90)
- db $08 ; asm
+ TX_ASM
ld hl, VermilionGymTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -216,7 +210,7 @@ VermilionGymAfterBattleText1: ; 5cba4 (17:4ba4)
db "@"
VermilionGymText3: ; 5cba9 (17:4ba9)
- db $08 ; asm
+ TX_ASM
ld hl, VermilionGymTrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -234,7 +228,7 @@ VermilionGymAfterBattleText2: ; 5cbbd (17:4bbd)
db "@"
VermilionGymText4: ; 5cbc2 (17:4bc2)
- db $08 ; asm
+ TX_ASM
ld hl, VermilionGymTrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -252,17 +246,17 @@ VermilionGymAfterBattleText3: ; 5cbd6 (17:4bd6)
db "@"
VermilionGymText5: ; 5cbdb (17:4bdb)
- db $08 ; asm
- ld a, [wd72a]
+ TX_ASM
+ ld a, [wBeatGymFlags]
bit 2, a
- jr nz, .asm_13b67 ; 0x5cbe1
+ jr nz, .asm_5cbeb
ld hl, VermilionGymText_5cbf4
call PrintText
- jr .asm_c2b38 ; 0x5cbe9
-.asm_13b67 ; 0x5cbeb
+ jr .asm_5cbf1
+.asm_5cbeb
ld hl, VermilionGymText_5cbf9
call PrintText
-.asm_c2b38 ; 0x5cbf1
+.asm_5cbf1
jp TextScriptEnd
VermilionGymText_5cbf4: ; 5cbf4 (17:4bf4)
diff --git a/scripts/vermilionhouse1.asm b/scripts/vermilionhouse1.asm
index 4ead1af7..bfb3da5f 100755
--- a/scripts/vermilionhouse1.asm
+++ b/scripts/vermilionhouse1.asm
@@ -13,7 +13,7 @@ VermilionHouse1Text1: ; 1db06 (7:5b06)
VermilionHouse1Text2: ; 1db0b (7:5b0b)
TX_FAR _VermilionHouse1Text2
- db $08 ; asm
+ TX_ASM
ld a, PIDGEY
call PlayCry
call WaitForSoundToFinish
diff --git a/scripts/vermilionhouse2.asm b/scripts/vermilionhouse2.asm
index 7c06c6e9..f166ebb8 100755
--- a/scripts/vermilionhouse2.asm
+++ b/scripts/vermilionhouse2.asm
@@ -5,7 +5,7 @@ VermilionHouse2TextPointers: ; 56073 (15:6073)
dw VermilionHouse2Text1
VermilionHouse2Text1: ; 56075 (15:6075)
- db $08 ; asm
+ TX_ASM
ld a, [wd728]
bit 3, a
jr nz, .asm_03ef5
@@ -15,7 +15,7 @@ VermilionHouse2Text1: ; 56075 (15:6075)
ld a, [wCurrentMenuItem]
and a
jr nz, .asm_eb1b7
- ld bc, (OLD_ROD << 8) | 1
+ lb bc, OLD_ROD, 1
call GiveItem
jr nc, .BagFull
ld hl, wd728
@@ -39,9 +39,9 @@ VermilionHouse2Text_560b1: ; 560b1 (15:60b1)
db "@"
VermilionHouse2Text_560b6: ; 560b6 (15:60b6)
- TX_FAR _VermilionHouse2Text_560b6 ; 0x9c554
+ TX_FAR _VermilionHouse2Text_560b6
db $0B
- TX_FAR _VermilionHouse2Text_560bb ; 0x9c5a4
+ TX_FAR _VermilionHouse2Text_560bb
db "@"
VermilionHouse2Text_560c0: ; 560c0 (15:60c0)
diff --git a/scripts/vermilionhouse3.asm b/scripts/vermilionhouse3.asm
index 08e2e395..478979da 100755
--- a/scripts/vermilionhouse3.asm
+++ b/scripts/vermilionhouse3.asm
@@ -5,7 +5,7 @@ VermilionHouse3TextPointers: ; 19c15 (6:5c15)
dw VermilionHouse3Text1
VermilionHouse3Text1: ; 19c17 (6:5c17)
- db $08 ; asm
+ TX_ASM
ld a, $4
ld [wWhichTrade], a
predef DoInGameTradeDialogue
diff --git a/scripts/victoryroad1.asm b/scripts/victoryroad1.asm
index b6d2bf3e..11f5d5db 100755
--- a/scripts/victoryroad1.asm
+++ b/scripts/victoryroad1.asm
@@ -11,12 +11,11 @@ VictoryRoad1Script: ; 5da0a (17:5a0a)
ld [W_VICTORYROAD1CURSCRIPT], a
ret
.next
- ld a, [wd869]
- bit 7, a
+ CheckEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
ret z
ld a, $1d
- ld [wd09f], a
- ld bc, $604
+ ld [wNewTileBlockID], a
+ lb bc, 6, 4
predef_jump ReplaceTileBlock
VictoryRoad1ScriptPointers: ; 5da3a (17:5a3a)
@@ -25,16 +24,14 @@ VictoryRoad1ScriptPointers: ; 5da3a (17:5a3a)
dw EndTrainerBattle
VictoryRoad1Script0: ; 5da40 (17:5a40)
- ld a, [wd869]
- bit 7, a
+ CheckEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
jp nz, CheckFightingMapTrainers
- ld hl, CoordsData_5da5c ; $5a5c
+ ld hl, CoordsData_5da5c
call CheckBoulderCoords
jp nc, CheckFightingMapTrainers
ld hl, wd126
set 5, [hl]
- ld hl, wd869
- set 7, [hl]
+ SetEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
ret
CoordsData_5da5c: ; 5da5c (17:5a5c)
@@ -43,41 +40,41 @@ CoordsData_5da5c: ; 5da5c (17:5a5c)
VictoryRoad1TextPointers: ; 5da5f (17:5a5f)
dw VictoryRoad1Text1
dw VictoryRoad1Text2
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
dw BoulderText
dw BoulderText
dw BoulderText
VictoryRoad1TrainerHeaders: ; 5da6d (17:5a6d)
VictoryRoad1TrainerHeader0: ; 5da6d (17:5a6d)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_1_TRAINER_0
db ($2 << 4) ; trainer's view range
- dw wd869 ; flag's byte
- dw VictoryRoad1BattleText1 ; 0x5a9a TextBeforeBattle
- dw VictoryRoad1AfterBattleText1 ; 0x5aa4 TextAfterBattle
- dw VictoryRoad1EndBattleText1 ; 0x5a9f TextEndBattle
- dw VictoryRoad1EndBattleText1 ; 0x5a9f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_1_TRAINER_0
+ dw VictoryRoad1BattleText1 ; TextBeforeBattle
+ dw VictoryRoad1AfterBattleText1 ; TextAfterBattle
+ dw VictoryRoad1EndBattleText1 ; TextEndBattle
+ dw VictoryRoad1EndBattleText1 ; TextEndBattle
VictoryRoad1TrainerHeader1: ; 5da79 (17:5a79)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_1_TRAINER_1
db ($2 << 4) ; trainer's view range
- dw wd869 ; flag's byte
- dw VictoryRoad1BattleText2 ; 0x5aa9 TextBeforeBattle
- dw VictoryRoad1AfterBattleText2 ; 0x5ab3 TextAfterBattle
- dw VictoryRoad1EndBattleText2 ; 0x5aae TextEndBattle
- dw VictoryRoad1EndBattleText2 ; 0x5aae TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_1_TRAINER_1
+ dw VictoryRoad1BattleText2 ; TextBeforeBattle
+ dw VictoryRoad1AfterBattleText2 ; TextAfterBattle
+ dw VictoryRoad1EndBattleText2 ; TextEndBattle
+ dw VictoryRoad1EndBattleText2 ; TextEndBattle
db $ff
VictoryRoad1Text1: ; 5da86 (17:5a86)
- db $08 ; asm
+ TX_ASM
ld hl, VictoryRoad1TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
VictoryRoad1Text2: ; 5da90 (17:5a90)
- db $08 ; asm
+ TX_ASM
ld hl, VictoryRoad1TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/victoryroad2.asm b/scripts/victoryroad2.asm
index 4aab61ca..cb956b1c 100755
--- a/scripts/victoryroad2.asm
+++ b/scripts/victoryroad2.asm
@@ -16,26 +16,24 @@ VictoryRoad2Script: ; 5179d (14:579d)
ret
VictoryRoad2Script_517c4: ; 517c4 (14:57c4)
- ld hl, wd869
- res 7, [hl]
+ ResetEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
VictoryRoad2Script_517c9: ; 517c9 (14:57c9)
- ld a, [wd7ee]
- bit 0, a
+ CheckEvent EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
jr z, .asm_517da
push af
ld a, $15
- ld bc, $403
+ lb bc, 4, 3
call VictoryRoad2Script_517e2
pop af
.asm_517da
bit 7, a
ret z
ld a, $1d
- ld bc, $70b
+ lb bc, 7, 11
VictoryRoad2Script_517e2: ; 517e2 (14:57e2)
- ld [wd09f], a
+ ld [wNewTileBlockID], a
predef ReplaceTileBlock
ret
@@ -45,20 +43,20 @@ VictoryRoad2ScriptPointers: ; 517eb (14:57eb)
dw EndTrainerBattle
VictoryRoad2Script0: ; 517f1 (14:57f1)
- ld hl, CoordsData_51816 ; $5816
+ ld hl, CoordsData_51816
call CheckBoulderCoords
jp nc, CheckFightingMapTrainers
- ld hl, wd7ee
- ld a, [wWhichTrade] ; wWhichTrade
+ EventFlagAddress hl, EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
+ ld a, [wCoordIndex]
cp $2
jr z, .asm_5180b
- bit 0, [hl]
- set 0, [hl]
+ CheckEventReuseHL EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
+ SetEventReuseHL EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
ret nz
jr .asm_51810
.asm_5180b
- bit 7, [hl]
- set 7, [hl]
+ CheckEventAfterBranchReuseHL EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH2, EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
+ SetEventReuseHL EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH2
ret nz
.asm_51810
ld hl, wd126
@@ -77,110 +75,110 @@ VictoryRoad2TextPointers: ; 5181b (14:581b)
dw VictoryRoad2Text4
dw VictoryRoad2Text5
dw VictoryRoad2Text6
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
dw BoulderText
dw BoulderText
dw BoulderText
VictoryRoad2TrainerHeaders: ; 51835 (14:5835)
VictoryRoad2TrainerHeader0: ; 51835 (14:5835)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd7ee ; flag's byte
- dw VictoryRoad2BattleText1 ; 0x58ca TextBeforeBattle
- dw VictoryRoad2AfterBattleText1 ; 0x58d4 TextAfterBattle
- dw VictoryRoad2EndBattleText1 ; 0x58cf TextEndBattle
- dw VictoryRoad2EndBattleText1 ; 0x58cf TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_0
+ dw VictoryRoad2BattleText1 ; TextBeforeBattle
+ dw VictoryRoad2AfterBattleText1 ; TextAfterBattle
+ dw VictoryRoad2EndBattleText1 ; TextEndBattle
+ dw VictoryRoad2EndBattleText1 ; TextEndBattle
VictoryRoad2TrainerHeader2: ; 51841 (14:5841)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_2
db ($3 << 4) ; trainer's view range
- dw wd7ee ; flag's byte
- dw VictoryRoad2BattleText2 ; 0x58d9 TextBeforeBattle
- dw VictoryRoad2AfterBattleText2 ; 0x58e3 TextAfterBattle
- dw VictoryRoad2EndBattleText2 ; 0x58de TextEndBattle
- dw VictoryRoad2EndBattleText2 ; 0x58de TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_2
+ dw VictoryRoad2BattleText2 ; TextBeforeBattle
+ dw VictoryRoad2AfterBattleText2 ; TextAfterBattle
+ dw VictoryRoad2EndBattleText2 ; TextEndBattle
+ dw VictoryRoad2EndBattleText2 ; TextEndBattle
VictoryRoad2TrainerHeader3: ; 5184d (14:584d)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_3
db ($3 << 4) ; trainer's view range
- dw wd7ee ; flag's byte
- dw VictoryRoad2BattleText3 ; 0x58e8 TextBeforeBattle
- dw VictoryRoad2AfterBattleText3 ; 0x58f2 TextAfterBattle
- dw VictoryRoad2EndBattleText3 ; 0x58ed TextEndBattle
- dw VictoryRoad2EndBattleText3 ; 0x58ed TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_3
+ dw VictoryRoad2BattleText3 ; TextBeforeBattle
+ dw VictoryRoad2AfterBattleText3 ; TextAfterBattle
+ dw VictoryRoad2EndBattleText3 ; TextEndBattle
+ dw VictoryRoad2EndBattleText3 ; TextEndBattle
VictoryRoad2TrainerHeader4: ; 51859 (14:5859)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_4
db ($1 << 4) ; trainer's view range
- dw wd7ee ; flag's byte
- dw VictoryRoad2BattleText4 ; 0x58f7 TextBeforeBattle
- dw VictoryRoad2AfterBattleText4 ; 0x5901 TextAfterBattle
- dw VictoryRoad2EndBattleText4 ; 0x58fc TextEndBattle
- dw VictoryRoad2EndBattleText4 ; 0x58fc TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_4
+ dw VictoryRoad2BattleText4 ; TextBeforeBattle
+ dw VictoryRoad2AfterBattleText4 ; TextAfterBattle
+ dw VictoryRoad2EndBattleText4 ; TextEndBattle
+ dw VictoryRoad2EndBattleText4 ; TextEndBattle
VictoryRoad2TrainerHeader5: ; 51865 (14:5865)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_5
db ($3 << 4) ; trainer's view range
- dw wd7ee ; flag's byte
- dw VictoryRoad2BattleText5 ; 0x5906 TextBeforeBattle
- dw VictoryRoad2AfterBattleText5 ; 0x5910 TextAfterBattle
- dw VictoryRoad2EndBattleText5 ; 0x590b TextEndBattle
- dw VictoryRoad2EndBattleText5 ; 0x590b TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_5
+ dw VictoryRoad2BattleText5 ; TextBeforeBattle
+ dw VictoryRoad2AfterBattleText5 ; TextAfterBattle
+ dw VictoryRoad2EndBattleText5 ; TextEndBattle
+ dw VictoryRoad2EndBattleText5 ; TextEndBattle
VictoryRoad2TrainerHeader6: ; 51871 (14:5871)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_6
db ($0 << 4) ; trainer's view range
- dw wd7ee ; flag's byte
- dw VictoryRoad2BattleText6 ; 0x58ba TextBeforeBattle
- dw VictoryRoad2BattleText6 ; 0x58ba TextAfterBattle
- dw VictoryRoad2BattleText6 ; 0x58ba TextEndBattle
- dw VictoryRoad2BattleText6 ; 0x58ba TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_6
+ dw VictoryRoad2BattleText6 ; TextBeforeBattle
+ dw VictoryRoad2BattleText6 ; TextAfterBattle
+ dw VictoryRoad2BattleText6 ; TextEndBattle
+ dw VictoryRoad2BattleText6 ; TextEndBattle
db $ff
VictoryRoad2Text1: ; 5187e (14:587e)
- db $08 ; asm
+ TX_ASM
ld hl, VictoryRoad2TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
VictoryRoad2Text2: ; 51888 (14:5888)
- db $08 ; asm
+ TX_ASM
ld hl, VictoryRoad2TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
VictoryRoad2Text3: ; 51892 (14:5892)
- db $08 ; asm
+ TX_ASM
ld hl, VictoryRoad2TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
VictoryRoad2Text4: ; 5189c (14:589c)
- db $08 ; asm
+ TX_ASM
ld hl, VictoryRoad2TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
VictoryRoad2Text5: ; 518a6 (14:58a6)
- db $08 ; asm
+ TX_ASM
ld hl, VictoryRoad2TrainerHeader5
call TalkToTrainer
jp TextScriptEnd
VictoryRoad2Text6: ; 518b0 (14:58b0)
- db $08 ; asm
+ TX_ASM
ld hl, VictoryRoad2TrainerHeader6
call TalkToTrainer
jp TextScriptEnd
VictoryRoad2BattleText6: ; 518ba (14:58ba)
TX_FAR _VictoryRoad2BattleText6
- db $8
+ TX_ASM
ld a, MOLTRES
call PlayCry
call WaitForSoundToFinish
diff --git a/scripts/victoryroad3.asm b/scripts/victoryroad3.asm
index 01269a3f..22e6813a 100755
--- a/scripts/victoryroad3.asm
+++ b/scripts/victoryroad3.asm
@@ -13,12 +13,11 @@ VictoryRoad3Script_44996: ; 44996 (11:4996)
bit 5, [hl]
res 5, [hl]
ret z
- ld hl, wd813
- bit 0, [hl]
+ CheckEventHL EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH1
ret z
ld a, $1d
- ld [wd09f], a
- ld bc, $503
+ ld [wNewTileBlockID], a
+ lb bc, 5, 3
predef_jump ReplaceTileBlock
VictoryRoad3ScriptPointers: ; 449b1 (11:49b1)
@@ -31,27 +30,24 @@ VictoryRoad3Script0: ; 449b7 (11:49b7)
bit 7, [hl]
res 7, [hl]
jp z, .asm_449fe
- ld hl, .coordsData_449f9 ; $49f9
+ ld hl, .coordsData_449f9
call CheckBoulderCoords
jp nc, .asm_449fe
- ld a, [wWhichTrade] ; wWhichTrade
+ ld a, [wCoordIndex]
cp $1
jr nz, .asm_449dc
ld hl, wd126
set 5, [hl]
- ld hl, wd813
- set 0, [hl]
+ SetEvent EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH1
ret
.asm_449dc
- ld hl, wd813
- bit 6, [hl]
- set 6, [hl]
+ CheckAndSetEvent EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH2
jr nz, .asm_449fe
ld a, HS_VICTORY_ROAD_3_BOULDER
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_VICTORY_ROAD_2_BOULDER
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef_jump ShowObject
.coordsData_449f9: ; 449f9 (11:49f9)
@@ -60,11 +56,11 @@ VictoryRoad3Script0: ; 449b7 (11:49b7)
db $FF
.asm_449fe
- ld a, $c2
+ ld a, VICTORY_ROAD_2
ld [wDungeonWarpDestinationMap], a
- ld hl, .coordsData_449f9 ; $49f9
- call Func_46981
- ld a, [wWhichTrade] ; wWhichTrade
+ ld hl, .coordsData_449f9
+ call IsPlayerOnDungeonWarp
+ ld a, [wCoordIndex]
cp $1
jr nz, .asm_44a1b
ld hl, wd72d
@@ -83,8 +79,8 @@ VictoryRoad3TextPointers: ; 44a24 (11:4a24)
dw VictoryRoad3Text2
dw VictoryRoad3Text3
dw VictoryRoad3Text4
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
dw BoulderText
dw BoulderText
dw BoulderText
@@ -92,63 +88,63 @@ VictoryRoad3TextPointers: ; 44a24 (11:4a24)
VictoryRoad3TrainerHeaders: ; 44a38 (11:4a38)
VictoryRoad3TrainerHeader0: ; 44a38 (11:4a38)
- db $1 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_3_TRAINER_0
db ($1 << 4) ; trainer's view range
- dw wd813 ; flag's byte
- dw VictoryRoad3BattleText2 ; 0x4a91 TextBeforeBattle
- dw VictoryRoad3AfterBattleText2 ; 0x4a9b TextAfterBattle
- dw VictoryRoad3EndBattleText2 ; 0x4a96 TextEndBattle
- dw VictoryRoad3EndBattleText2 ; 0x4a96 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_3_TRAINER_0
+ dw VictoryRoad3BattleText2 ; TextBeforeBattle
+ dw VictoryRoad3AfterBattleText2 ; TextAfterBattle
+ dw VictoryRoad3EndBattleText2 ; TextEndBattle
+ dw VictoryRoad3EndBattleText2 ; TextEndBattle
VictoryRoad3TrainerHeader2: ; 44a44 (11:4a44)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_3_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd813 ; flag's byte
- dw VictoryRoad3BattleText3 ; 0x4aa0 TextBeforeBattle
- dw VictoryRoad3AfterBattleText3 ; 0x4aaa TextAfterBattle
- dw VictoryRoad3EndBattleText3 ; 0x4aa5 TextEndBattle
- dw VictoryRoad3EndBattleText3 ; 0x4aa5 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_3_TRAINER_2
+ dw VictoryRoad3BattleText3 ; TextBeforeBattle
+ dw VictoryRoad3AfterBattleText3 ; TextAfterBattle
+ dw VictoryRoad3EndBattleText3 ; TextEndBattle
+ dw VictoryRoad3EndBattleText3 ; TextEndBattle
VictoryRoad3TrainerHeader3: ; 44a50 (11:4a50)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_3_TRAINER_3
db ($4 << 4) ; trainer's view range
- dw wd813 ; flag's byte
- dw VictoryRoad3BattleText4 ; 0x4aaf TextBeforeBattle
- dw VictoryRoad3AfterBattleText4 ; 0x4ab9 TextAfterBattle
- dw VictoryRoad3EndBattleText4 ; 0x4ab4 TextEndBattle
- dw VictoryRoad3EndBattleText4 ; 0x4ab4 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_3_TRAINER_3
+ dw VictoryRoad3BattleText4 ; TextBeforeBattle
+ dw VictoryRoad3AfterBattleText4 ; TextAfterBattle
+ dw VictoryRoad3EndBattleText4 ; TextEndBattle
+ dw VictoryRoad3EndBattleText4 ; TextEndBattle
VictoryRoad3TrainerHeader4: ; 44a5c (11:4a5c)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_3_TRAINER_4
db ($4 << 4) ; trainer's view range
- dw wd813 ; flag's byte
- dw VictoryRoad3BattleText5 ; 0x4abe TextBeforeBattle
- dw VictoryRoad3AfterBattleText5 ; 0x4ac8 TextAfterBattle
- dw VictoryRoad3EndBattleText5 ; 0x4ac3 TextEndBattle
- dw VictoryRoad3EndBattleText5 ; 0x4ac3 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_3_TRAINER_4
+ dw VictoryRoad3BattleText5 ; TextBeforeBattle
+ dw VictoryRoad3AfterBattleText5 ; TextAfterBattle
+ dw VictoryRoad3EndBattleText5 ; TextEndBattle
+ dw VictoryRoad3EndBattleText5 ; TextEndBattle
db $ff
VictoryRoad3Text1: ; 44a69 (11:4a69)
- db $08 ; asm
+ TX_ASM
ld hl, VictoryRoad3TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
VictoryRoad3Text2: ; 44a73 (11:4a73)
- db $08 ; asm
+ TX_ASM
ld hl, VictoryRoad3TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
VictoryRoad3Text3: ; 44a7d (11:4a7d)
- db $08 ; asm
+ TX_ASM
ld hl, VictoryRoad3TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
VictoryRoad3Text4: ; 44a87 (11:4a87)
- db $08 ; asm
+ TX_ASM
ld hl, VictoryRoad3TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/viridiancity.asm b/scripts/viridiancity.asm
index d0b2b4ae..79ad444f 100755
--- a/scripts/viridiancity.asm
+++ b/scripts/viridiancity.asm
@@ -15,14 +15,12 @@ ViridianCityScript0: ; 19005 (6:5005)
jp ViridianCityScript_1903d
ViridianCityScript_1900b: ; 1900b (6:500b)
- ld a, [wd74c]
- bit 0, a
+ CheckEvent EVENT_VIRIDIAN_GYM_OPEN
ret nz
ld a, [W_OBTAINEDBADGES]
cp %01111111
- jr nz, .asm_1901e ; 0x19016 $6
- ld hl, wd74c
- set 0, [hl]
+ jr nz, .asm_1901e
+ SetEvent EVENT_VIRIDIAN_GYM_OPEN
ret
.asm_1901e
ld a, [W_YCOORD]
@@ -32,7 +30,7 @@ ViridianCityScript_1900b: ; 1900b (6:500b)
cp $20
ret nz
ld a, $e
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [hJoyHeld], a
@@ -42,8 +40,7 @@ ViridianCityScript_1900b: ; 1900b (6:500b)
ret
ViridianCityScript_1903d: ; 1903d (6:503d)
- ld a, [wd74b]
- bit 5, a
+ CheckEvent EVENT_GOT_POKEDEX
ret nz
ld a, [W_YCOORD]
cp $9
@@ -52,7 +49,7 @@ ViridianCityScript_1903d: ; 1903d (6:503d)
cp $13
ret nz
ld a, $5
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [hJoyHeld], a
@@ -98,7 +95,7 @@ ViridianCityScript2: ; 1908f (6:508f)
xor a
ld [wJoyIgnore], a
ld a, $f
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [W_BATTLETYPE], a
@@ -120,7 +117,7 @@ ViridianCityScript_190cf: ; 190cf (6:50cf)
call StartSimulatingJoypadStates
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
- ld a, $80
+ ld a, D_DOWN
ld [wSimulatedJoypadStatesEnd], a
xor a
ld [wSpriteStateData1 + 9], a
@@ -149,16 +146,15 @@ ViridianCityText1: ; 19102 (6:5102)
db "@"
ViridianCityText2: ; 19107 (6:5107)
- db $08 ; asm
+ TX_ASM
ld a, [W_OBTAINEDBADGES]
cp %01111111
ld hl, ViridianCityText_19127
- jr z, .asm_ae9fe ; 0x19110
- ld a, [wd751]
- bit 1, a
- jr nz, .asm_ae9fe ; 0x19117
+ jr z, .asm_ae9fe
+ CheckEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
+ jr nz, .asm_ae9fe
ld hl, ViridianCityText_19122
-.asm_ae9fe ; 0x1911c
+.asm_ae9fe
call PrintText
jp TextScriptEnd
@@ -171,20 +167,20 @@ ViridianCityText_19127: ; 19127 (6:5127)
db "@"
ViridianCityText3: ; 1912c (6:512c)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianCityText_1914d
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr nz, .asm_6dfea ; 0x1913a
+ jr nz, .asm_6dfea
ld hl, ViridianCityText_19157
call PrintText
- jr .asm_d611f ; 0x19142
-.asm_6dfea ; 0x19144
+ jr .asm_d611f
+.asm_6dfea
ld hl, ViridianCityText_19152
call PrintText
-.asm_d611f ; 0x1914a
+.asm_d611f
jp TextScriptEnd
ViridianCityText_1914d: ; 1914d (6:514d)
@@ -200,17 +196,16 @@ ViridianCityText_19157: ; 19157 (6:5157)
db "@"
ViridianCityText4: ; 1915c (6:515c)
- db $08 ; asm
- ld a, [wd74b]
- bit 5, a
- jr nz, .asm_83894 ; 0x19162
+ TX_ASM
+ CheckEvent EVENT_GOT_POKEDEX
+ jr nz, .asm_83894
ld hl, ViridianCityText_19175
call PrintText
- jr .asm_700a6 ; 0x1916a
-.asm_83894 ; 0x1916c
+ jr .asm_700a6
+.asm_83894
ld hl, ViridianCityText_1917a
call PrintText
-.asm_700a6 ; 0x19172
+.asm_700a6
jp TextScriptEnd
ViridianCityText_19175: ; 19175 (6:5175)
@@ -222,7 +217,7 @@ ViridianCityText_1917a: ; 1917a (6:517a)
db "@"
ViridianCityText5: ; 1917f (6:517f)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianCityText_19191
call PrintText
call ViridianCityScript_190cf
@@ -235,28 +230,26 @@ ViridianCityText_19191: ; 19191 (6:5191)
db "@"
ViridianCityText6: ; 19196 (6:5196)
- db $08 ; asm
- ld a, [wd74c]
- bit 1, a
- jr nz, .asm_4e5a0 ; 0x1919c
+ TX_ASM
+ CheckEvent EVENT_GOT_TM42
+ jr nz, .asm_4e5a0
ld hl, ViridianCityText_191ca
call PrintText
- ld bc, (TM_42 << 8) | 1
+ lb bc, TM_42, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedTM42Text
call PrintText
- ld hl, wd74c
- set 1, [hl]
- jr .asm_3c73c ; 0x191b7
+ SetEvent EVENT_GOT_TM42
+ jr .asm_3c73c
.BagFull
ld hl, TM42NoRoomText
call PrintText
- jr .asm_3c73c ; 0x191bf
-.asm_4e5a0 ; 0x191c1
+ jr .asm_3c73c
+.asm_4e5a0
ld hl, TM42Explanation
call PrintText
-.asm_3c73c ; 0x191c7
+.asm_3c73c
jp TextScriptEnd
ViridianCityText_191ca: ; 191ca (6:51ca)
@@ -276,24 +269,24 @@ TM42NoRoomText: ; 191da (6:51da)
db "@"
ViridianCityText7: ; 191df (6:51df)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianCityText_1920a
call PrintText
- ld c, $2
+ ld c, 2
call DelayFrames
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr z, .asm_42f68 ; 0x191f2
+ jr z, .asm_42f68
ld hl, ViridianCityText_1920f
call PrintText
ld a, $1
ld [W_VIRIDIANCITYCURSCRIPT], a
- jr .asm_2413a ; 0x191ff
-.asm_42f68 ; 0x19201
+ jr .asm_2413a
+.asm_42f68
ld hl, ViridianCityText_19214
call PrintText
-.asm_2413a ; 0x19207
+.asm_2413a
jp TextScriptEnd
ViridianCityText_1920a: ; 1920a (6:520a)
diff --git a/scripts/viridianforest.asm b/scripts/viridianforest.asm
index 4ec1c0aa..892eeef2 100755
--- a/scripts/viridianforest.asm
+++ b/scripts/viridianforest.asm
@@ -17,9 +17,9 @@ ViridianForestTextPointers: ; 61126 (18:5126)
dw ViridianForestText2
dw ViridianForestText3
dw ViridianForestText4
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
dw ViridianForestText8
dw ViridianForestText9
dw ViridianForestText10
@@ -30,31 +30,31 @@ ViridianForestTextPointers: ; 61126 (18:5126)
ViridianForestTrainerHeaders: ; 61142 (18:5142)
ViridianForestTrainerHeader0: ; 61142 (18:5142)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd7f3 ; flag's byte
- dw ViridianForestBattleText1 ; 0x518a TextBeforeBattle
- dw ViridianForestAfterBattleText1 ; 0x5194 TextAfterBattle
- dw ViridianForestEndBattleText1 ; 0x518f TextEndBattle
- dw ViridianForestEndBattleText1 ; 0x518f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_0
+ dw ViridianForestBattleText1 ; TextBeforeBattle
+ dw ViridianForestAfterBattleText1 ; TextAfterBattle
+ dw ViridianForestEndBattleText1 ; TextEndBattle
+ dw ViridianForestEndBattleText1 ; TextEndBattle
ViridianForestTrainerHeader1: ; 6114e (18:514e)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_1
db ($4 << 4) ; trainer's view range
- dw wd7f3 ; flag's byte
- dw ViridianForestBattleText2 ; 0x5199 TextBeforeBattle
- dw ViridianForestAfterBattleText2 ; 0x51a3 TextAfterBattle
- dw ViridianForestEndBattleText2 ; 0x519e TextEndBattle
- dw ViridianForestEndBattleText2 ; 0x519e TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_1
+ dw ViridianForestBattleText2 ; TextBeforeBattle
+ dw ViridianForestAfterBattleText2 ; TextAfterBattle
+ dw ViridianForestEndBattleText2 ; TextEndBattle
+ dw ViridianForestEndBattleText2 ; TextEndBattle
ViridianForestTrainerHeader2: ; 6115a (18:515a)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_2
db ($1 << 4) ; trainer's view range
- dw wd7f3 ; flag's byte
- dw ViridianForestBattleText3 ; 0x51a8 TextBeforeBattle
- dw ViridianForestAfterBattleText3 ; 0x51b2 TextAfterBattle
- dw ViridianForestEndBattleText3 ; 0x51ad TextEndBattle
- dw ViridianForestEndBattleText3 ; 0x51ad TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_2
+ dw ViridianForestBattleText3 ; TextBeforeBattle
+ dw ViridianForestAfterBattleText3 ; TextAfterBattle
+ dw ViridianForestEndBattleText3 ; TextEndBattle
+ dw ViridianForestEndBattleText3 ; TextEndBattle
db $ff
@@ -63,19 +63,19 @@ ViridianForestText1: ; 61167 (18:5167)
db "@"
ViridianForestText2: ; 6116c (18:516c)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianForestTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
ViridianForestText3: ; 61176 (18:5176)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianForestTrainerHeader1
call TalkToTrainer
jp TextScriptEnd
ViridianForestText4: ; 61180 (18:5180)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianForestTrainerHeader2
call TalkToTrainer
jp TextScriptEnd
diff --git a/scripts/viridiangym.asm b/scripts/viridiangym.asm
index 6ced7d82..6cded55d 100755
--- a/scripts/viridiangym.asm
+++ b/scripts/viridiangym.asm
@@ -30,9 +30,9 @@ ViridianGymScriptPointers: ; 748e1 (1d:48e1)
dw ViridianGymScript4
ViridianGymScript0: ; 748eb (1d:48eb)
- ld a, [W_YCOORD] ; wd361
+ ld a, [W_YCOORD]
ld b, a
- ld a, [W_XCOORD] ; wd362
+ ld a, [W_XCOORD]
ld c, a
ld hl, ViridianGymArrowTilePlayerMovement
call DecodeArrowMovementRLE
@@ -41,7 +41,7 @@ ViridianGymScript0: ; 748eb (1d:48eb)
call StartSimulatingJoypadStates
ld hl, wd736
set 7, [hl]
- ld a, (SFX_02_52 - SFX_Headers_02) / 3
+ ld a, SFX_ARROW_TILES
call PlaySound
ld a, $ff
ld [wJoyIgnore], a
@@ -80,45 +80,41 @@ ViridianGymArrowTilePlayerMovement: ; 74916 (1d:4916)
db $FF
;format: direction, count
-;right: $10
-;left: $20
-;up: $40
-;down: $80
ViridianGymArrowMovement1: ; 74947 (1d:4947)
- db $40,$09,$FF
+ db D_UP,$09,$FF
ViridianGymArrowMovement2: ; 7494a (1d:494a)
- db $20,$08,$FF
+ db D_LEFT,$08,$FF
ViridianGymArrowMovement3: ; 7494d (1d:494d)
- db $80,$09,$FF
+ db D_DOWN,$09,$FF
ViridianGymArrowMovement4: ; 74950 (1d:4950)
- db $10,$06,$FF
+ db D_RIGHT,$06,$FF
ViridianGymArrowMovement5: ; 74953 (1d:4953)
- db $80,$02,$FF
+ db D_DOWN,$02,$FF
ViridianGymArrowMovement6: ; 74956 (1d:4956)
- db $80,$07,$FF
+ db D_DOWN,$07,$FF
ViridianGymArrowMovement7: ; 74959 (1d:4959)
- db $10,$08,$FF
+ db D_RIGHT,$08,$FF
ViridianGymArrowMovement8: ; 7495c (1d:495c)
- db $10,$09,$FF
+ db D_RIGHT,$09,$FF
ViridianGymArrowMovement9: ; 7495f (1d:495f)
- db $40,$08,$FF
+ db D_UP,$08,$FF
ViridianGymArrowMovement10: ; 74962 (1d:4962)
- db $40,$06,$FF
+ db D_UP,$06,$FF
ViridianGymArrowMovement11: ; 74965 (1d:4965)
- db $20,$06,$FF
+ db D_LEFT,$06,$FF
ViridianGymArrowMovement12: ; 74968 (1d:4968)
- db $20,$0C,$FF
+ db D_LEFT,$0C,$FF
ViridianGymScript4: ; 7496b (1d:496b)
ld a, [wSimulatedJoypadStatesIndex]
@@ -132,55 +128,44 @@ ViridianGymScript4: ; 7496b (1d:496b)
ld [W_CURMAPSCRIPT], a
ret
.asm_74980
- ld b, BANK(LoadSpinnerArrowTiles)
- ld hl, LoadSpinnerArrowTiles
- jp Bankswitch
+ jpba LoadSpinnerArrowTiles
ViridianGymScript3: ; 74988 (1d:4988)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+ ld a, [W_ISINBATTLE]
cp $ff
jp z, ViridianGymScript_748d6
ld a, $f0
ld [wJoyIgnore], a
ViridianGymScript3_74995: ; 74995 (1d:4995)
ld a, $c
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd751
- set 1, [hl]
- ld bc, (TM_27 << 8) | 1
+ SetEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
+ lb bc, TM_27, 1
call GiveItem
jr nc, .BagFull
ld a, $d
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld hl, wd751
- set 0, [hl]
+ SetEvent EVENT_GOT_TM27
jr .asm_749be
.BagFull
ld a, $e
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
.asm_749be
ld hl, W_OBTAINEDBADGES
set 7, [hl]
- ld hl, wd72a
+ ld hl, wBeatGymFlags
set 7, [hl]
; deactivate gym trainers
- ld a, [wd751]
- or %11111100
- ld [wd751], a
- ld a, [wd752]
- or %00000011
- ld [wd752], a
+ SetEventRange EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0, EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7
ld a, HS_ROUTE_22_RIVAL_2
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
- ld hl, wd7eb
- set 1, [hl]
- set 7, [hl]
+ SetEvents EVENT_2ND_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
jp ViridianGymScript_748d6
ViridianGymTextPointers: ; 749ec (1d:49ec)
@@ -194,110 +179,109 @@ ViridianGymTextPointers: ; 749ec (1d:49ec)
dw ViridianGymText8
dw ViridianGymText9
dw ViridianGymText10
- dw Predef5CText
+ dw PickUpItemText
dw ViridianGymText12
dw ViridianGymText13
dw ViridianGymText14
ViridianGymTrainerHeaders: ; 74a08 (1d:4a08)
ViridianGymTrainerHeader0: ; 74a08 (1d:4a08)
- db $2 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd751 ; flag's byte
- dw ViridianGymBattleText1 ; 0x4afd TextBeforeBattle
- dw ViridianGymAfterBattleText1 ; 0x4b07 TextAfterBattle
- dw ViridianGymEndBattleText1 ; 0x4b02 TextEndBattle
- dw ViridianGymEndBattleText1 ; 0x4b02 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0
+ dw ViridianGymBattleText1 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText1 ; TextAfterBattle
+ dw ViridianGymEndBattleText1 ; TextEndBattle
+ dw ViridianGymEndBattleText1 ; TextEndBattle
ViridianGymTrainerHeader1: ; 74a14 (1d:4a14)
- db $3 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_1
db ($4 << 4) ; trainer's view range
- dw wd751 ; flag's byte
- dw ViridianGymBattleText2 ; 0x4b16 TextBeforeBattle
- dw ViridianGymAfterBattleText2 ; 0x4b20 TextAfterBattle
- dw ViridianGymEndBattleText2 ; 0x4b1b TextEndBattle
- dw ViridianGymEndBattleText2 ; 0x4b1b TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_1
+ dw ViridianGymBattleText2 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText2 ; TextAfterBattle
+ dw ViridianGymEndBattleText2 ; TextEndBattle
+ dw ViridianGymEndBattleText2 ; TextEndBattle
ViridianGymTrainerHeader2: ; 74a20 (1d:4a20)
- db $4 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd751 ; flag's byte
- dw ViridianGymBattleText3 ; 0x4b2f TextBeforeBattle
- dw ViridianGymAfterBattleText3 ; 0x4b39 TextAfterBattle
- dw ViridianGymEndBattleText3 ; 0x4b34 TextEndBattle
- dw ViridianGymEndBattleText3 ; 0x4b34 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_2
+ dw ViridianGymBattleText3 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText3 ; TextAfterBattle
+ dw ViridianGymEndBattleText3 ; TextEndBattle
+ dw ViridianGymEndBattleText3 ; TextEndBattle
ViridianGymTrainerHeader3: ; 74a2c (1d:4a2c)
- db $5 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_3
db ($2 << 4) ; trainer's view range
- dw wd751 ; flag's byte
- dw ViridianGymBattleText4 ; 0x4b48 TextBeforeBattle
- dw ViridianGymAfterBattleText4 ; 0x4b52 TextAfterBattle
- dw ViridianGymEndBattleText4 ; 0x4b4d TextEndBattle
- dw ViridianGymEndBattleText4 ; 0x4b4d TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_3
+ dw ViridianGymBattleText4 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText4 ; TextAfterBattle
+ dw ViridianGymEndBattleText4 ; TextEndBattle
+ dw ViridianGymEndBattleText4 ; TextEndBattle
ViridianGymTrainerHeader4: ; 74a38 (1d:4a38)
- db $6 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_4
db ($3 << 4) ; trainer's view range
- dw wd751 ; flag's byte
- dw ViridianGymBattleText5 ; 0x4b61 TextBeforeBattle
- dw ViridianGymAfterBattleText5 ; 0x4b6b TextAfterBattle
- dw ViridianGymEndBattleText5 ; 0x4b66 TextEndBattle
- dw ViridianGymEndBattleText5 ; 0x4b66 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_4
+ dw ViridianGymBattleText5 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText5 ; TextAfterBattle
+ dw ViridianGymEndBattleText5 ; TextEndBattle
+ dw ViridianGymEndBattleText5 ; TextEndBattle
ViridianGymTrainerHeader5: ; 74a44 (1d:4a44)
- db $7 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_5
db ($4 << 4) ; trainer's view range
- dw wd751 ; flag's byte
- dw ViridianGymBattleText6 ; 0x4b7a TextBeforeBattle
- dw ViridianGymAfterBattleText6 ; 0x4b84 TextAfterBattle
- dw ViridianGymEndBattleText6 ; 0x4b7f TextEndBattle
- dw ViridianGymEndBattleText6 ; 0x4b7f TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_5
+ dw ViridianGymBattleText6 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText6 ; TextAfterBattle
+ dw ViridianGymEndBattleText6 ; TextEndBattle
+ dw ViridianGymEndBattleText6 ; TextEndBattle
ViridianGymTrainerHeader6: ; 74a50 (1d:4a50)
- db $8 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_6, 1
db ($3 << 4) ; trainer's view range
- dw wd751 ; flag's byte
- dw ViridianGymBattleText7 ; 0x4b93 TextBeforeBattle
- dw ViridianGymAfterBattleText7 ; 0x4b9d TextAfterBattle
- dw ViridianGymEndBattleText7 ; 0x4b98 TextEndBattle
- dw ViridianGymEndBattleText7 ; 0x4b98 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_6, 1
+ dw ViridianGymBattleText7 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText7 ; TextAfterBattle
+ dw ViridianGymEndBattleText7 ; TextEndBattle
+ dw ViridianGymEndBattleText7 ; TextEndBattle
ViridianGymTrainerHeader7: ; 74a5c (1d:4a5c)
- db $9 ; flag's bit
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7, 1
db ($4 << 4) ; trainer's view range
- dw wd751 ; flag's byte
- dw ViridianGymBattleText8 ; 0x4bac TextBeforeBattle
- dw ViridianGymAfterBattleText8 ; 0x4bb6 TextAfterBattle
- dw ViridianGymEndBattleText8 ; 0x4bb1 TextEndBattle
- dw ViridianGymEndBattleText8 ; 0x4bb1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7, 1
+ dw ViridianGymBattleText8 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText8 ; TextAfterBattle
+ dw ViridianGymEndBattleText8 ; TextEndBattle
+ dw ViridianGymEndBattleText8 ; TextEndBattle
db $ff
ViridianGymText1: ; 74a69 (1d:4a69)
- db $08 ; asm
- ld a, [wd751]
- bit 1, a
- jr z, .asm_6de66 ; 0x74a6f
- bit 0, a
- jr nz, .asm_9fc95 ; 0x74a73
+ TX_ASM
+ CheckEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
+ jr z, .asm_6de66
+ CheckEventReuseA EVENT_GOT_TM27
+ jr nz, .asm_9fc95
call z, ViridianGymScript3_74995
call DisableWaitingAfterTextDisplay
- jr .asm_6dff7 ; 0x74a7b
-.asm_9fc95 ; 0x74a7d
+ jr .asm_6dff7
+.asm_9fc95
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, ViridianGymText_74ad9
call PrintText
call GBFadeOutToBlack
ld a, HS_VIRIDIAN_GYM_GIOVANNI
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
call UpdateSprites
call Delay3
call GBFadeInFromBlack
- jr .asm_6dff7 ; 0x74a9e
-.asm_6de66 ; 0x74aa0
+ jr .asm_6dff7
+.asm_6de66
ld hl, ViridianGymText_74ace
call PrintText
ld hl, wd72d
@@ -306,7 +290,7 @@ ViridianGymText1: ; 74a69 (1d:4a69)
ld hl, ViridianGymText_74ad3
ld de, ViridianGymText_74ad3
call SaveEndBattleTextPointers
- ldh a, [$8c]
+ ld a, [H_SPRITEINDEX]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
@@ -314,7 +298,7 @@ ViridianGymText1: ; 74a69 (1d:4a69)
ld [W_GYMLEADERNO], a
ld a, $3
ld [W_VIRIDIANGYMCURSCRIPT], a
-.asm_6dff7 ; 0x74acb
+.asm_6dff7
jp TextScriptEnd
ViridianGymText_74ace: ; 74ace (1d:4ace)
@@ -346,7 +330,7 @@ ViridianGymText14: ; 74aee (1d:4aee)
db "@"
ViridianGymText2: ; 74af3 (1d:4af3)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianGymTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
@@ -364,7 +348,7 @@ ViridianGymAfterBattleText1: ; 74b07 (1d:4b07)
db "@"
ViridianGymText3: ; 74b0c (1d:4b0c)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianGymTrainerHeader1
call TalkToTrainer
jp TextScriptEnd
@@ -382,7 +366,7 @@ ViridianGymAfterBattleText2: ; 74b20 (1d:4b20)
db "@"
ViridianGymText4: ; 74b25 (1d:4b25)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianGymTrainerHeader2
call TalkToTrainer
jp TextScriptEnd
@@ -400,7 +384,7 @@ ViridianGymAfterBattleText3: ; 74b39 (1d:4b39)
db "@"
ViridianGymText5: ; 74b3e (1d:4b3e)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianGymTrainerHeader3
call TalkToTrainer
jp TextScriptEnd
@@ -418,7 +402,7 @@ ViridianGymAfterBattleText4: ; 74b52 (1d:4b52)
db "@"
ViridianGymText6: ; 74b57 (1d:4b57)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianGymTrainerHeader4
call TalkToTrainer
jp TextScriptEnd
@@ -436,7 +420,7 @@ ViridianGymAfterBattleText5: ; 74b6b (1d:4b6b)
db "@"
ViridianGymText7: ; 74b70 (1d:4b70)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianGymTrainerHeader5
call TalkToTrainer
jp TextScriptEnd
@@ -454,7 +438,7 @@ ViridianGymAfterBattleText6: ; 74b84 (1d:4b84)
db "@"
ViridianGymText8: ; 74b89 (1d:4b89)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianGymTrainerHeader6
call TalkToTrainer
jp TextScriptEnd
@@ -472,7 +456,7 @@ ViridianGymAfterBattleText7: ; 74b9d (1d:4b9d)
db "@"
ViridianGymText9: ; 74ba2 (1d:4ba2)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianGymTrainerHeader7
call TalkToTrainer
jp TextScriptEnd
@@ -490,17 +474,16 @@ ViridianGymAfterBattleText8: ; 74bb6 (1d:4bb6)
db "@"
ViridianGymText10: ; 74bbb (1d:4bbb)
- db $08 ; asm
- ld a, [wd751]
- bit 1, a
- jr nz, .asm_1abd1 ; 0x74bc1
+ TX_ASM
+ CheckEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
+ jr nz, .asm_1abd1
ld hl, ViridianGymText_74bd4
call PrintText
- jr .asm_6064d ; 0x74bc9
-.asm_1abd1 ; 0x74bcb
+ jr .asm_6064d
+.asm_1abd1
ld hl, ViridianGymText_74bd9
call PrintText
-.asm_6064d ; 0x74bd1
+.asm_6064d
jp TextScriptEnd
ViridianGymText_74bd4: ; 74bd4 (1d:4bd4)
diff --git a/scripts/viridianhouse.asm b/scripts/viridianhouse.asm
index ab8b6786..61920489 100755
--- a/scripts/viridianhouse.asm
+++ b/scripts/viridianhouse.asm
@@ -16,7 +16,7 @@ ViridianHouseText2: ; 1d59a (7:559a)
db "@"
ViridianHouseText3: ; 1d59f (7:559f)
- db $08 ; asm
+ TX_ASM
ld hl, ViridianHouseText_1d5b1
call PrintText
ld a, SPEAROW
diff --git a/scripts/viridianmart.asm b/scripts/viridianmart.asm
index d33dfe81..5cb6eaea 100755
--- a/scripts/viridianmart.asm
+++ b/scripts/viridianmart.asm
@@ -6,13 +6,12 @@ ViridianMartScript: ; 1d46e (7:546e)
jp CallFunctionInTable
ViridianMartScript_1d47d: ; 1d47d (7:547d)
- ld a, [wd74e]
- bit 0, a
- jr nz, .asm_1d489 ; 0x1d482 $5
- ld hl, ViridianMartTextPointers ; $54e0
- jr .asm_1d48c ; 0x1d487 $3
+ CheckEvent EVENT_OAK_GOT_PARCEL
+ jr nz, .asm_1d489
+ ld hl, ViridianMartTextPointers
+ jr .asm_1d48c
.asm_1d489
- ld hl, ViridianMartTextPointers + $a ; $54ea ; starts at ViridianMartText6
+ ld hl, ViridianMartTextPointers + $a ; starts at ViridianMartText6
.asm_1d48c
ld a, l
ld [W_MAPTEXTPTR], a
@@ -28,7 +27,7 @@ ViridianMartScriptPointers: ; 1d495 (7:5495)
ViridianMartScript0: ; 1d49b (7:549b)
call UpdateSprites
ld a, $4
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld hl, wSimulatedJoypadStatesEnd
ld de, RLEMovement1d4bb
@@ -41,8 +40,8 @@ ViridianMartScript0: ; 1d49b (7:549b)
ret
RLEMovement1d4bb: ; 1d4bb (7:54bb)
- db $20, $01
- db $40, $02
+ db D_LEFT, $01
+ db D_UP, $02
db $ff
ViridianMartScript1: ; 1d4c0 (7:54c0)
@@ -51,12 +50,11 @@ ViridianMartScript1: ; 1d4c0 (7:54c0)
ret nz
call Delay3
ld a, $5
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld bc, (OAKS_PARCEL << 8) + 1
+ lb bc, OAKS_PARCEL, 1
call GiveItem
- ld hl, wd74e
- set 1, [hl]
+ SetEvent EVENT_GOT_OAKS_PARCEL
ld a, $2
ld [W_VIRIDIANMARKETCURSCRIPT], a
; fallthrough