summaryrefslogtreecommitdiff
path: root/scripts/celadongym.asm
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/celadongym.asm')
-rwxr-xr-xscripts/celadongym.asm298
1 files changed, 145 insertions, 153 deletions
diff --git a/scripts/celadongym.asm b/scripts/celadongym.asm
index b1b1060c..ae7e6846 100755
--- a/scripts/celadongym.asm
+++ b/scripts/celadongym.asm
@@ -1,82 +1,76 @@
-CeladonGymScript: ; 4890a (12:490a)
- ld hl, wd126
+CeladonGymScript:
+ ld hl, wCurrentMapScriptFlags
bit 6, [hl]
res 6, [hl]
call nz, CeladonGymScript_48927
call EnableAutoTextBoxDrawing
- ld hl, CeladonGymTrainerHeaders
+ ld hl, CeladonGymTrainerHeader0
ld de, CeladonGymScriptPointers
- ld a, [W_CELADONGYMCURSCRIPT]
+ ld a, [wCeladonGymCurScript]
call ExecuteCurMapScriptInTable
- ld [W_CELADONGYMCURSCRIPT], a
+ ld [wCeladonGymCurScript], a
ret
-CeladonGymScript_48927: ; 48927 (12:4927)
- ld hl, Gym4CityName ; $4930
- ld de, Gym4LeaderName ; $493d
+CeladonGymScript_48927:
+ ld hl, Gym4CityName
+ ld de, Gym4LeaderName
jp LoadGymLeaderAndCityName
-Gym4CityName: ; 48930 (12:4930)
+Gym4CityName:
db "CELADON CITY@"
-Gym4LeaderName: ; 4893d (12:493d)
+Gym4LeaderName:
db "ERIKA@"
-CeladonGymText_48943: ; 48943 (12:4943)
+CeladonGymText_48943:
xor a
ld [wJoyIgnore], a
- ld [W_CELADONGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
+ ld [wCeladonGymCurScript], a
+ ld [wCurMapScript], a
ret
-CeladonGymScriptPointers: ; 4894e (12:494e)
+CeladonGymScriptPointers:
dw CheckFightingMapTrainers
dw DisplayEnemyTrainerTextAndStartBattle
dw EndTrainerBattle
dw CeladonGymScript3
-CeladonGymScript3: ; 48956 (12:4956)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+CeladonGymScript3:
+ ld a, [wIsInBattle]
cp $ff
jp z, CeladonGymText_48943
ld a, $f0
ld [wJoyIgnore], a
-CeladonGymText_48963: ; 48963 (12:4963)
+CeladonGymText_48963:
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
+ ld hl, wObtainedBadges
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_6
jp CeladonGymText_48943
-CeladonGymTextPointers: ; 489a6 (12:49a6)
+CeladonGymTextPointers:
dw CeladonGymText1
dw CeladonGymText2
dw CeladonGymText3
@@ -89,87 +83,85 @@ CeladonGymTextPointers: ; 489a6 (12:49a6)
dw TM21Text
dw TM21NoRoomText
-CeladonGymTrainerHeaders: ; 489bc (12:49bc)
-CeladonGymTrainerHeader0: ; 489bc (12:49bc)
- db $2 ; flag's bit
+CeladonGymTrainerHeader0:
+ 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
-
-CeladonGymTrainerHeader2: ; 489c8 (12:49c8)
- db $3 ; flag's bit
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_0
+ dw CeladonGymBattleText2 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText2 ; TextAfterBattle
+ dw CeladonGymEndBattleText2 ; TextEndBattle
+ dw CeladonGymEndBattleText2 ; TextEndBattle
+
+CeladonGymTrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_1
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
-
-CeladonGymTrainerHeader3: ; 489d4 (12:49d4)
- db $4 ; flag's bit
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_1
+ dw CeladonGymBattleText3 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText3 ; TextAfterBattle
+ dw CeladonGymEndBattleText3 ; TextEndBattle
+ dw CeladonGymEndBattleText3 ; TextEndBattle
+
+CeladonGymTrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_2
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
-
-CeladonGymTrainerHeader4: ; 489e0 (12:49e0)
- db $5 ; flag's bit
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_2
+ dw CeladonGymBattleText4 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText4 ; TextAfterBattle
+ dw CeladonGymEndBattleText4 ; TextEndBattle
+ dw CeladonGymEndBattleText4 ; TextEndBattle
+
+CeladonGymTrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_3
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
-
-CeladonGymTrainerHeader5: ; 489ec (12:49ec)
- db $6 ; flag's bit
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_3
+ dw CeladonGymBattleText5 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText5 ; TextAfterBattle
+ dw CeladonGymEndBattleText5 ; TextEndBattle
+ dw CeladonGymEndBattleText5 ; TextEndBattle
+
+CeladonGymTrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_4
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
-
-CeladonGymTrainerHeader6: ; 489f8 (12:49f8)
- db $7 ; flag's bit
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_4
+ dw CeladonGymBattleText6 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText6 ; TextAfterBattle
+ dw CeladonGymEndBattleText6 ; TextEndBattle
+ dw CeladonGymEndBattleText6 ; TextEndBattle
+
+CeladonGymTrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_5
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
-
-CeladonGymTrainerHeader7: ; 48a04 (12:4a04)
- db $8 ; flag's bit
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_5
+ dw CeladonGymBattleText7 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText7 ; TextAfterBattle
+ dw CeladonGymEndBattleText7 ; TextEndBattle
+ dw CeladonGymEndBattleText7 ; TextEndBattle
+
+CeladonGymTrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_6, 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_6, 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
+CeladonGymText1:
+ 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,166 +170,166 @@ 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
ld a, $4
- ld [W_GYMLEADERNO], a
+ ld [wGymLeaderNo], a
ld a, $3
- ld [W_CELADONGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
-.asm_96252 ; 0x48a5b
+ ld [wCeladonGymCurScript], a
+ ld [wCurMapScript], a
+.asm_48a5b
jp TextScriptEnd
-CeladonGymText_48a5e: ; 48a5e (12:4a5e)
+CeladonGymText_48a5e:
TX_FAR _CeladonGymText_48a5e
db "@"
-CeladonGymText_48a63: ; 48a63 (12:4a63)
+CeladonGymText_48a63:
TX_FAR _CeladonGymText_48a63
db "@"
-CeladonGymText_48a68: ; 48a68 (12:4a68)
+CeladonGymText_48a68:
TX_FAR _CeladonGymText_48a68
db "@"
-CeladonGymText9: ; 48a6d (12:4a6d)
+CeladonGymText9:
TX_FAR _CeladonGymText9
db "@"
-TM21Text: ; 48a72 (12:4a72)
+TM21Text:
TX_FAR _ReceivedTM21Text
- db $0B
+ TX_SFX_ITEM_1
TX_FAR _TM21ExplanationText
db "@"
-TM21NoRoomText: ; 48a7c (12:4a7c)
+TM21NoRoomText:
TX_FAR _TM21NoRoomText
db "@"
-CeladonGymText2: ; 48a81 (12:4a81)
- db $08 ; asm
+CeladonGymText2:
+ TX_ASM
ld hl, CeladonGymTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
-CeladonGymBattleText2: ; 48a8b (12:4a8b)
+CeladonGymBattleText2:
TX_FAR _CeladonGymBattleText2
db "@"
-CeladonGymEndBattleText2: ; 48a90 (12:4a90)
+CeladonGymEndBattleText2:
TX_FAR _CeladonGymEndBattleText2
db "@"
-CeladonGymAfterBattleText2: ; 48a95 (12:4a95)
+CeladonGymAfterBattleText2:
TX_FAR _CeladonGymAfterBattleText2
db "@"
-CeladonGymText3: ; 48a9a (12:4a9a)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader2
+CeladonGymText3:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader1
call TalkToTrainer
jp TextScriptEnd
-CeladonGymBattleText3: ; 48aa4 (12:4aa4)
+CeladonGymBattleText3:
TX_FAR _CeladonGymBattleText3
db "@"
-CeladonGymEndBattleText3: ; 48aa9 (12:4aa9)
+CeladonGymEndBattleText3:
TX_FAR _CeladonGymEndBattleText3
db "@"
-CeladonGymAfterBattleText3: ; 48aae (12:4aae)
+CeladonGymAfterBattleText3:
TX_FAR _CeladonGymAfterBattleText3
db "@"
-CeladonGymText4: ; 48ab3 (12:4ab3)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader3
+CeladonGymText4:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader2
call TalkToTrainer
jp TextScriptEnd
-CeladonGymBattleText4: ; 48abd (12:4abd)
+CeladonGymBattleText4:
TX_FAR _CeladonGymBattleText4
db "@"
-CeladonGymEndBattleText4: ; 48ac2 (12:4ac2)
+CeladonGymEndBattleText4:
TX_FAR _CeladonGymEndBattleText4
db "@"
-CeladonGymAfterBattleText4: ; 48ac7 (12:4ac7)
+CeladonGymAfterBattleText4:
TX_FAR _CeladonGymAfterBattleText4
db "@"
-CeladonGymText5: ; 48acc (12:4acc)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader4
+CeladonGymText5:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader3
call TalkToTrainer
jp TextScriptEnd
-CeladonGymBattleText5: ; 48ad6 (12:4ad6)
+CeladonGymBattleText5:
TX_FAR _CeladonGymBattleText5
db "@"
-CeladonGymEndBattleText5: ; 48adb (12:4adb)
+CeladonGymEndBattleText5:
TX_FAR _CeladonGymEndBattleText5
db "@"
-CeladonGymAfterBattleText5: ; 48ae0 (12:4ae0)
+CeladonGymAfterBattleText5:
TX_FAR _CeladonGymAfterBattleText5
db "@"
-CeladonGymText6: ; 48ae5 (12:4ae5)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader5
+CeladonGymText6:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader4
call TalkToTrainer
jp TextScriptEnd
-CeladonGymBattleText6: ; 48aef (12:4aef)
+CeladonGymBattleText6:
TX_FAR _CeladonGymBattleText6
db "@"
-CeladonGymEndBattleText6: ; 48af4 (12:4af4)
+CeladonGymEndBattleText6:
TX_FAR _CeladonGymEndBattleText6
db "@"
-CeladonGymAfterBattleText6: ; 48af9 (12:4af9)
+CeladonGymAfterBattleText6:
TX_FAR _CeladonGymAfterBattleText6
db "@"
-CeladonGymText7: ; 48afe (12:4afe)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader6
+CeladonGymText7:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader5
call TalkToTrainer
jp TextScriptEnd
-CeladonGymBattleText7: ; 48b08 (12:4b08)
+CeladonGymBattleText7:
TX_FAR _CeladonGymBattleText7
db "@"
-CeladonGymEndBattleText7: ; 48b0d (12:4b0d)
+CeladonGymEndBattleText7:
TX_FAR _CeladonGymEndBattleText7
db "@"
-CeladonGymAfterBattleText7: ; 48b12 (12:4b12)
+CeladonGymAfterBattleText7:
TX_FAR _CeladonGymAfterBattleText7
db "@"
-CeladonGymText8: ; 48b17 (12:4b17)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader7
+CeladonGymText8:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader6
call TalkToTrainer
jp TextScriptEnd
-CeladonGymBattleText8: ; 48b21 (12:4b21)
+CeladonGymBattleText8:
TX_FAR _CeladonGymBattleText8
db "@"
-CeladonGymEndBattleText8: ; 48b26 (12:4b26)
+CeladonGymEndBattleText8:
TX_FAR _CeladonGymEndBattleText8
db "@"
-CeladonGymAfterBattleText8: ; 48b2b (12:4b2b)
+CeladonGymAfterBattleText8:
TX_FAR _CeladonGymAfterBattleText8
db "@"