summaryrefslogtreecommitdiff
path: root/scripts/fightingdojo.asm
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/fightingdojo.asm')
-rwxr-xr-xscripts/fightingdojo.asm234
1 files changed, 111 insertions, 123 deletions
diff --git a/scripts/fightingdojo.asm b/scripts/fightingdojo.asm
index e26da1b1..fa0cdca2 100755
--- a/scripts/fightingdojo.asm
+++ b/scripts/fightingdojo.asm
@@ -1,90 +1,86 @@
-FightingDojoScript: ; 5cd5d (17:4d5d)
+FightingDojoScript:
call EnableAutoTextBoxDrawing
- ld hl, FightingDojoTrainerHeaders
+ ld hl, FightingDojoTrainerHeader0
ld de, FightingDojoScriptPointers
- ld a, [W_FIGHTINGDOJOCURSCRIPT]
+ ld a, [wFightingDojoCurScript]
call ExecuteCurMapScriptInTable
- ld [W_FIGHTINGDOJOCURSCRIPT], a
+ ld [wFightingDojoCurScript], a
ret
-FightingDojoScript_5cd70: ; 5cd70 (17:4d70)
+FightingDojoScript_5cd70:
xor a
ld [wJoyIgnore], a
- ld [W_FIGHTINGDOJOCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
+ ld [wFightingDojoCurScript], a
+ ld [wCurMapScript], a
ret
-FightingDojoScriptPointers: ; 5cd7b (17:4d7b)
+FightingDojoScriptPointers:
dw FightingDojoScript1
dw DisplayEnemyTrainerTextAndStartBattle
dw EndTrainerBattle
dw FightingDojoScript3
-FightingDojoScript1: ; 5cd83 (17:4d83)
- ld a, [wd7b1]
- bit 0, a
+FightingDojoScript1:
+ 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
ld [wcf0d], a
- ld a, [W_YCOORD]
+ ld a, [wYCoord]
cp $3
ret nz
- ld a, [W_XCOORD]
+ ld a, [wXCoord]
cp $4
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
-FightingDojoScript3: ; 5cdc6 (17:4dc6)
- ld a, [W_ISINBATTLE]
+FightingDojoScript3:
+ ld a, [wIsInBattle]
cp $ff
jp z, FightingDojoScript_5cd70
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
- ld [W_FIGHTINGDOJOCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
+ ld [wFightingDojoCurScript], a
+ ld [wCurMapScript], a
ret
-FightingDojoTextPointers: ; 5ce03 (17:4e03)
+FightingDojoTextPointers:
dw FightingDojoText1
dw FightingDojoText2
dw FightingDojoText3
@@ -94,51 +90,49 @@ FightingDojoTextPointers: ; 5ce03 (17:4e03)
dw FightingDojoText7
dw FightingDojoText8
-FightingDojoTrainerHeaders: ; 5ce13 (17:4e13)
-FightingDojoTrainerHeader0: ; 5ce13 (17:4e13)
- db $2 ; flag's bit
+FightingDojoTrainerHeader0:
+ 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
-
-FightingDojoTrainerHeader1: ; 5ce1f (17:4e1f)
- db $3 ; flag's bit
+ dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_0
+ dw FightingDojoBattleText1 ; TextBeforeBattle
+ dw FightingDojoAfterBattleText1 ; TextAfterBattle
+ dw FightingDojoEndBattleText1 ; TextEndBattle
+ dw FightingDojoEndBattleText1 ; TextEndBattle
+
+FightingDojoTrainerHeader1:
+ 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
-
-FightingDojoTrainerHeader2: ; 5ce2b (17:4e2b)
- db $4 ; flag's bit
+ dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_1
+ dw FightingDojoBattleText2 ; TextBeforeBattle
+ dw FightingDojoAfterBattleText2 ; TextAfterBattle
+ dw FightingDojoEndBattleText2 ; TextEndBattle
+ dw FightingDojoEndBattleText2 ; TextEndBattle
+
+FightingDojoTrainerHeader2:
+ 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
-
-FightingDojoTrainerHeader3: ; 5ce37 (17:4e37)
- db $5 ; flag's bit
+ dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_2
+ dw FightingDojoBattleText3 ; TextBeforeBattle
+ dw FightingDojoAfterBattleText3 ; TextAfterBattle
+ dw FightingDojoEndBattleText3 ; TextEndBattle
+ dw FightingDojoEndBattleText3 ; TextEndBattle
+
+FightingDojoTrainerHeader3:
+ 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
+FightingDojoText1:
+ 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,117 +142,116 @@ 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
+ ld [wFightingDojoCurScript], a
+ ld [wCurMapScript], a
+ 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)
+FightingDojoText_5ce8e:
TX_FAR _FightingDojoText_5ce8e
db "@"
-FightingDojoText_5ce93: ; 5ce93 (17:4e93)
+FightingDojoText_5ce93:
TX_FAR _FightingDojoText_5ce93
db "@"
-FightingDojoText8: ; 5ce98 (17:4e98)
+FightingDojoText8:
TX_FAR _FightingDojoText_5ce98
db "@"
-FightingDojoText_5ce9d: ; 5ce9d (17:4e9d)
+FightingDojoText_5ce9d:
TX_FAR _FightingDojoText_5ce9d
db "@"
-FightingDojoText2: ; 5cea2 (17:4ea2)
- db $08 ; asm
+FightingDojoText2:
+ TX_ASM
ld hl, FightingDojoTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
-FightingDojoBattleText1: ; 5ceac (17:4eac)
+FightingDojoBattleText1:
TX_FAR _FightingDojoBattleText1
db "@"
-FightingDojoEndBattleText1: ; 5ceb1 (17:4eb1)
+FightingDojoEndBattleText1:
TX_FAR _FightingDojoEndBattleText1
db "@"
-FightingDojoAfterBattleText1: ; 5ceb6 (17:4eb6)
+FightingDojoAfterBattleText1:
TX_FAR _FightingDojoAfterBattleText1
db "@"
-FightingDojoText3: ; 5cebb (17:4ebb)
- db $08 ; asm
+FightingDojoText3:
+ TX_ASM
ld hl, FightingDojoTrainerHeader1
call TalkToTrainer
jp TextScriptEnd
-FightingDojoBattleText2: ; 5cec5 (17:4ec5)
+FightingDojoBattleText2:
TX_FAR _FightingDojoBattleText2
db "@"
-FightingDojoEndBattleText2: ; 5ceca (17:4eca)
+FightingDojoEndBattleText2:
TX_FAR _FightingDojoEndBattleText2
db "@"
-FightingDojoAfterBattleText2: ; 5cecf (17:4ecf)
+FightingDojoAfterBattleText2:
TX_FAR _FightingDojoAfterBattleText2
db "@"
-FightingDojoText4: ; 5ced4 (17:4ed4)
- db $08 ; asm
+FightingDojoText4:
+ TX_ASM
ld hl, FightingDojoTrainerHeader2
call TalkToTrainer
jp TextScriptEnd
-FightingDojoBattleText3: ; 5cede (17:4ede)
+FightingDojoBattleText3:
TX_FAR _FightingDojoBattleText3
db "@"
-FightingDojoEndBattleText3: ; 5cee3 (17:4ee3)
+FightingDojoEndBattleText3:
TX_FAR _FightingDojoEndBattleText3
db "@"
-FightingDojoAfterBattleText3: ; 5cee8 (17:4ee8)
+FightingDojoAfterBattleText3:
TX_FAR _FightingDojoAfterBattleText3
db "@"
-FightingDojoText5: ; 5ceed (17:4eed)
- db $08 ; asm
+FightingDojoText5:
+ TX_ASM
ld hl, FightingDojoTrainerHeader3
call TalkToTrainer
jp TextScriptEnd
-FightingDojoBattleText4: ; 5cef7 (17:4ef7)
+FightingDojoBattleText4:
TX_FAR _FightingDojoBattleText4
db "@"
-FightingDojoEndBattleText4: ; 5cefc (17:4efc)
+FightingDojoEndBattleText4:
TX_FAR _FightingDojoEndBattleText4
db "@"
-FightingDojoAfterBattleText4: ; 5cf01 (17:4f01)
+FightingDojoAfterBattleText4:
TX_FAR _FightingDojoAfterBattleText4
db "@"
-FightingDojoText6: ; 5cf06 (17:4f06)
+FightingDojoText6:
; 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,23 +273,20 @@ 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
-WantHitmonleeText: ; 5cf49 (17:4f49)
+WantHitmonleeText:
TX_FAR _WantHitmonleeText
db "@"
-FightingDojoText7: ; 5cf4e (17:4f4e)
+FightingDojoText7:
; 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,21 +305,19 @@ 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
-WantHitmonchanText: ; 5cf91 (17:4f91)
+WantHitmonchanText:
TX_FAR _WantHitmonchanText
db "@"
-OtherHitmonText: ; 5cf96 (17:4f96)
+OtherHitmonText:
TX_FAR _OtherHitmonText
db "@"