summaryrefslogtreecommitdiff
path: root/scripts/victoryroad3.asm
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/victoryroad3.asm')
-rwxr-xr-xscripts/victoryroad3.asm205
1 files changed, 205 insertions, 0 deletions
diff --git a/scripts/victoryroad3.asm b/scripts/victoryroad3.asm
new file mode 100755
index 00000000..f2e08ca4
--- /dev/null
+++ b/scripts/victoryroad3.asm
@@ -0,0 +1,205 @@
+VictoryRoad3Script: ; 44980 (11:4980)
+ call VictoryRoad3Script_44996
+ call EnableAutoTextBoxDrawing
+ ld hl, VictoryRoad3TrainerHeaders
+ ld de, VictoryRoad3ScriptPointers
+ ld a, [W_VICTORYROAD3CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_VICTORYROAD3CURSCRIPT], a
+ ret
+
+VictoryRoad3Script_44996: ; 44996 (11:4996)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, $d813
+ bit 0, [hl]
+ ret z
+ ld a, $1d
+ ld [$d09f], a
+ ld bc, $503
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+VictoryRoad3ScriptPointers: ; 449b1 (11:49b1)
+ dw VictoryRoad3Script0
+ dw Func_324c
+ dw EndTrainerBattle
+
+VictoryRoad3Script0: ; 449b7 (11:49b7)
+ ld hl, wFlags_0xcd60
+ bit 7, [hl]
+ res 7, [hl]
+ jp z, .asm_449fe
+ ld hl, .coordsData_449f9 ; $49f9
+ call CheckBoulderCoords
+ jp nc, .asm_449fe
+ ld a, [wWhichTrade] ; $cd3d
+ cp $1
+ jr nz, .asm_449dc
+ ld hl, $d126
+ set 5, [hl]
+ ld hl, $d813
+ set 0, [hl]
+ ret
+.asm_449dc
+ ld hl, $d813
+ bit 6, [hl]
+ set 6, [hl]
+ jr nz, .asm_449fe
+ ld a, $7a
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ ld a, $60
+ ld [$cc4d], a
+ ld a, $15
+ jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
+
+.coordsData_449f9: ; 449f9 (11:49f9)
+ db $05,$03
+ db $0F,$17
+ db $FF
+
+.asm_449fe
+ ld a, $c2
+ ld [$d71d], a
+ ld hl, .coordsData_449f9 ; $49f9
+ call Func_46981
+ ld a, [wWhichTrade] ; $cd3d
+ cp $1
+ jr nz, .asm_44a1b
+ ld hl, $d72d
+ res 4, [hl]
+ ld hl, $d732
+ res 4, [hl]
+ ret
+.asm_44a1b
+ ld a, [$d72d]
+ bit 4, a
+ jp z, CheckFightingMapTrainers
+ ret
+
+VictoryRoad3TextPointers: ; 44a24 (11:4a24)
+ dw VictoryRoad3Text1
+ dw VictoryRoad3Text2
+ dw VictoryRoad3Text3
+ dw VictoryRoad3Text4
+ dw Predef5CText
+ dw Predef5CText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+
+VictoryRoad3TrainerHeaders: ; 44a38 (11:4a38)
+VictoryRoad3TrainerHeader0: ; 44a38 (11:4a38)
+ db $1 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d813 ; flag's byte
+ dw VictoryRoad3BattleText2 ; 0x4a91 TextBeforeBattle
+ dw VictoryRoad3AfterBattleText2 ; 0x4a9b TextAfterBattle
+ dw VictoryRoad3EndBattleText2 ; 0x4a96 TextEndBattle
+ dw VictoryRoad3EndBattleText2 ; 0x4a96 TextEndBattle
+
+VictoryRoad3TrainerHeader2: ; 44a44 (11:4a44)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d813 ; flag's byte
+ dw VictoryRoad3BattleText3 ; 0x4aa0 TextBeforeBattle
+ dw VictoryRoad3AfterBattleText3 ; 0x4aaa TextAfterBattle
+ dw VictoryRoad3EndBattleText3 ; 0x4aa5 TextEndBattle
+ dw VictoryRoad3EndBattleText3 ; 0x4aa5 TextEndBattle
+
+VictoryRoad3TrainerHeader3: ; 44a50 (11:4a50)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d813 ; flag's byte
+ dw VictoryRoad3BattleText4 ; 0x4aaf TextBeforeBattle
+ dw VictoryRoad3AfterBattleText4 ; 0x4ab9 TextAfterBattle
+ dw VictoryRoad3EndBattleText4 ; 0x4ab4 TextEndBattle
+ dw VictoryRoad3EndBattleText4 ; 0x4ab4 TextEndBattle
+
+VictoryRoad3TrainerHeader4: ; 44a5c (11:4a5c)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d813 ; flag's byte
+ dw VictoryRoad3BattleText5 ; 0x4abe TextBeforeBattle
+ dw VictoryRoad3AfterBattleText5 ; 0x4ac8 TextAfterBattle
+ dw VictoryRoad3EndBattleText5 ; 0x4ac3 TextEndBattle
+ dw VictoryRoad3EndBattleText5 ; 0x4ac3 TextEndBattle
+
+ db $ff
+
+VictoryRoad3Text1: ; 44a69 (11:4a69)
+ db $08 ; asm
+ ld hl, VictoryRoad3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad3Text2: ; 44a73 (11:4a73)
+ db $08 ; asm
+ ld hl, VictoryRoad3TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad3Text3: ; 44a7d (11:4a7d)
+ db $08 ; asm
+ ld hl, VictoryRoad3TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad3Text4: ; 44a87 (11:4a87)
+ db $08 ; asm
+ ld hl, VictoryRoad3TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad3BattleText2: ; 44a91 (11:4a91)
+ TX_FAR _VictoryRoad3BattleText2
+ db "@"
+
+VictoryRoad3EndBattleText2: ; 44a96 (11:4a96)
+ TX_FAR _VictoryRoad3EndBattleText2
+ db "@"
+
+VictoryRoad3AfterBattleText2: ; 44a9b (11:4a9b)
+ TX_FAR _VictoryRoad3AfterBattleText2
+ db "@"
+
+VictoryRoad3BattleText3: ; 44aa0 (11:4aa0)
+ TX_FAR _VictoryRoad3BattleText3
+ db "@"
+
+VictoryRoad3EndBattleText3: ; 44aa5 (11:4aa5)
+ TX_FAR _VictoryRoad3EndBattleText3
+ db "@"
+
+VictoryRoad3AfterBattleText3: ; 44aaa (11:4aaa)
+ TX_FAR _VictoryRoad3AfterBattleText3
+ db "@"
+
+VictoryRoad3BattleText4: ; 44aaf (11:4aaf)
+ TX_FAR _VictoryRoad3BattleText4
+ db "@"
+
+VictoryRoad3EndBattleText4: ; 44ab4 (11:4ab4)
+ TX_FAR _VictoryRoad3EndBattleText4
+ db "@"
+
+VictoryRoad3AfterBattleText4: ; 44ab9 (11:4ab9)
+ TX_FAR _VictoryRoad3AfterBattleText4
+ db "@"
+
+VictoryRoad3BattleText5: ; 44abe (11:4abe)
+ TX_FAR _VictoryRoad3BattleText5
+ db "@"
+
+VictoryRoad3EndBattleText5: ; 44ac3 (11:4ac3)
+ TX_FAR _VictoryRoad3EndBattleText5
+ db "@"
+
+VictoryRoad3AfterBattleText5: ; 44ac8 (11:4ac8)
+ TX_FAR _VictoryRoad3AfterBattleText5
+ db "@"