diff options
author | U-Fish-PC\Daniel <corrnondacqb@yahoo.com> | 2014-05-18 14:19:10 -0400 |
---|---|---|
committer | U-Fish-PC\Daniel <corrnondacqb@yahoo.com> | 2014-05-18 14:19:10 -0400 |
commit | 24c01b09bb2b617812bd826d1cf9ab5e3ec6a023 (patch) | |
tree | 07d2ed81b23de081f2003d9f8d50170344dd5ada /scripts/fuchsiagym.asm | |
parent | 4e4e72d02a5a202daea3a73363d2a4c3ba34e724 (diff) |
Pull map scripts out of main.asm
Diffstat (limited to 'scripts/fuchsiagym.asm')
-rwxr-xr-x | scripts/fuchsiagym.asm | 336 |
1 files changed, 336 insertions, 0 deletions
diff --git a/scripts/fuchsiagym.asm b/scripts/fuchsiagym.asm new file mode 100755 index 00000000..789c2367 --- /dev/null +++ b/scripts/fuchsiagym.asm @@ -0,0 +1,336 @@ +FuchsiaGymScript: ; 7543d (1d:543d) + call FuchsiaGymScript_75453 + call EnableAutoTextBoxDrawing + ld hl, FuchsiaGymTrainerHeaders + ld de, FuchsiaGymScriptPointers + ld a, [W_FUCHSIAGYMCURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_FUCHSIAGYMCURSCRIPT], a + ret + +FuchsiaGymScript_75453: ; 75453 (1d:5453) + ld hl, $D126 + bit 6, [hl] + res 6, [hl] + ret z + ld hl, Gym5CityName + ld de, Gym5LeaderName + call LoadGymLeaderAndCityName + ret + +Gym5CityName: ; 75465 (1d:5465) + db "FUCHSIA CITY@" +Gym5LeaderName: ; 75472 (1d:5472) + db "KOGA@" + +FuchsiaGymScript_75477: ; 75477 (1d:5477) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_FUCHSIAGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +FuchsiaGymScriptPointers: ; 75482 (1d:5482) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + dw FuchsiaGymScript3 + +FuchsiaGymScript3: ; 7548a (1d:548a) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, FuchsiaGymScript_75477 + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a +FuchsiaGymScript3_75497: ; 75497 (1d:5497) + ld a, $9 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d792 + set 1, [hl] + ld bc, (TM_06 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld a, $a + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d792 + set 0, [hl] + jr .asm_754c0 +.BagFull + ld a, $b + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID +.asm_754c0 + ld hl, W_OBTAINEDBADGES + set 4, [hl] + ld hl, $d72a + set 4, [hl] + + ; deactivate gym trainers + ld a, [$d792] + or %11111100 + ld [$d792], a + + jp FuchsiaGymScript_75477 + +FuchsiaGymTextPointers: ; 754d5 (1d:54d5) + dw FuchsiaGymText1 + dw FuchsiaGymText2 + dw FuchsiaGymText3 + dw FuchsiaGymText4 + dw FuchsiaGymText5 + dw FuchsiaGymText6 + dw FuchsiaGymText7 + dw FuchsiaGymText8 + dw FuchsiaGymText9 + dw FuchsiaGymText10 + dw FuchsiaGymText11 + +FuchsiaGymTrainerHeaders: ; 754eb (1d:54eb) +FuchsiaGymTrainerHeader0: ; 754eb (1d:54eb) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d792 ; flag's byte + dw FuchsiaGymBattleText1 ; 0x55ae TextBeforeBattle + dw FuchsiaGymAfterBattleText1 ; 0x55b8 TextAfterBattle + dw FuchsiaGymEndBattleText1 ; 0x55b3 TextEndBattle + dw FuchsiaGymEndBattleText1 ; 0x55b3 TextEndBattle + +FuchsiaGymTrainerHeader2: ; 754f7 (1d:54f7) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d792 ; flag's byte + dw FuchsiaGymBattleText2 ; 0x55c7 TextBeforeBattle + dw FuchsiaGymAfterBattleText2 ; 0x55d1 TextAfterBattle + dw FuchsiaGymEndBattleText2 ; 0x55cc TextEndBattle + dw FuchsiaGymEndBattleText2 ; 0x55cc TextEndBattle + +FuchsiaGymTrainerHeader3: ; 75503 (1d:5503) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d792 ; flag's byte + dw FuchsiaGymBattleText3 ; 0x55e0 TextBeforeBattle + dw FuchsiaGymAfterBattleText3 ; 0x55ea TextAfterBattle + dw FuchsiaGymEndBattleText3 ; 0x55e5 TextEndBattle + dw FuchsiaGymEndBattleText3 ; 0x55e5 TextEndBattle + +FuchsiaGymTrainerHeader4: ; 7550f (1d:550f) + db $5 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d792 ; flag's byte + dw FuchsiaGymBattleText4 ; 0x55f9 TextBeforeBattle + dw FuchsiaGymAfterBattleText4 ; 0x5603 TextAfterBattle + dw FuchsiaGymEndBattleText4 ; 0x55fe TextEndBattle + dw FuchsiaGymEndBattleText4 ; 0x55fe TextEndBattle + +FuchsiaGymTrainerHeader5: ; 7551b (1d:551b) + db $6 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d792 ; flag's byte + dw FuchsiaGymBattleText5 ; 0x5612 TextBeforeBattle + dw FuchsiaGymAfterBattleText5 ; 0x561c TextAfterBattle + dw FuchsiaGymEndBattleText5 ; 0x5617 TextEndBattle + dw FuchsiaGymEndBattleText5 ; 0x5617 TextEndBattle + +FuchsiaGymTrainerHeader6: ; 75527 (1d:5527) + db $7 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d792 ; flag's byte + dw FuchsiaGymBattleText6 ; 0x562b TextBeforeBattle + dw FuchsiaGymAfterBattleText6 ; 0x5635 TextAfterBattle + dw FuchsiaGymEndBattleText6 ; 0x5630 TextEndBattle + dw FuchsiaGymEndBattleText6 ; 0x5630 TextEndBattle + + db $ff + +FuchsiaGymText1: ; 75534 (1d:5534) + db $08 ; asm + ld a, [$d792] + bit 1, a + jr z, .asm_181b6 ; 0x7553a + bit 0, a + jr nz, .asm_adc3b ; 0x7553e + call z, FuchsiaGymScript3_75497 + call DisableWaitingAfterTextDisplay + jr .asm_e84c6 ; 0x75546 +.asm_adc3b ; 0x75548 + ld hl, UnnamedText_7558b + call PrintText + jr .asm_e84c6 ; 0x7554e +.asm_181b6 ; 0x75550 + ld hl, UnnamedText_75581 + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, UnnamedText_75586 + ld de, UnnamedText_75586 + call PreBattleSaveRegisters + ldh a, [$8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + ld a, $5 + ld [$d05c], a + xor a + ldh [$b4], a + ld a, $3 + ld [W_FUCHSIAGYMCURSCRIPT], a +.asm_e84c6 ; 0x7557e + jp TextScriptEnd + +UnnamedText_75581: ; 75581 (1d:5581) + TX_FAR _UnnamedText_75581 + db "@" + +UnnamedText_75586: ; 75586 (1d:5586) + TX_FAR _UnnamedText_75586 + db "@" + +UnnamedText_7558b: ; 7558b (1d:558b) + TX_FAR _UnnamedText_7558b + db "@" + +FuchsiaGymText9: ; 75590 (1d:5590) + TX_FAR _UnnamedText_75590 + db "@" + +FuchsiaGymText10: ; 75595 (1d:5595) + TX_FAR _ReceivedTM06Text + db $11 + +TM06ExplanationText: ; 7559a (1d:559a) + TX_FAR _TM06ExplanationText + db "@" + +FuchsiaGymText11: ; 7559f (1d:559f) + TX_FAR _TM06NoRoomText + db "@" + +FuchsiaGymText2: ; 755a4 (1d:55a4) + db $08 ; asm + ld hl, FuchsiaGymTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +FuchsiaGymBattleText1: ; 755ae (1d:55ae) + TX_FAR _FuchsiaGymBattleText1 + db "@" + +FuchsiaGymEndBattleText1: ; 755b3 (1d:55b3) + TX_FAR _FuchsiaGymEndBattleText1 + db "@" + +FuchsiaGymAfterBattleText1: ; 755b8 (1d:55b8) + TX_FAR _FuchsiaGymAfterBattleText1 + db "@" + +FuchsiaGymText3: ; 755bd (1d:55bd) + db $08 ; asm + ld hl, FuchsiaGymTrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +FuchsiaGymBattleText2: ; 755c7 (1d:55c7) + TX_FAR _FuchsiaGymBattleText2 + db "@" + +FuchsiaGymEndBattleText2: ; 755cc (1d:55cc) + TX_FAR _FuchsiaGymEndBattleText2 + db "@" + +FuchsiaGymAfterBattleText2: ; 755d1 (1d:55d1) + TX_FAR _FuchsiaGymAfterBattleText2 + db "@" + +FuchsiaGymText4: ; 755d6 (1d:55d6) + db $08 ; asm + ld hl, FuchsiaGymTrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +FuchsiaGymBattleText3: ; 755e0 (1d:55e0) + TX_FAR _FuchsiaGymBattleText3 + db "@" + +FuchsiaGymEndBattleText3: ; 755e5 (1d:55e5) + TX_FAR _FuchsiaGymEndBattleText3 + db "@" + +FuchsiaGymAfterBattleText3: ; 755ea (1d:55ea) + TX_FAR _FuchsiaGymAfterBattleText3 + db "@" + +FuchsiaGymText5: ; 755ef (1d:55ef) + db $08 ; asm + ld hl, FuchsiaGymTrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +FuchsiaGymBattleText4: ; 755f9 (1d:55f9) + TX_FAR _FuchsiaGymBattleText4 + db "@" + +FuchsiaGymEndBattleText4: ; 755fe (1d:55fe) + TX_FAR _FuchsiaGymEndBattleText4 + db "@" + +FuchsiaGymAfterBattleText4: ; 75603 (1d:5603) + TX_FAR _FuchsiaGymAfterBattleText4 + db "@" + +FuchsiaGymText6: ; 75608 (1d:5608) + db $08 ; asm + ld hl, FuchsiaGymTrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +FuchsiaGymBattleText5: ; 75612 (1d:5612) + TX_FAR _FuchsiaGymBattleText5 + db "@" + +FuchsiaGymEndBattleText5: ; 75617 (1d:5617) + TX_FAR _FuchsiaGymEndBattleText5 + db "@" + +FuchsiaGymAfterBattleText5: ; 7561c (1d:561c) + TX_FAR _FuchsiaGymAfterBattleText5 + db "@" + +FuchsiaGymText7: ; 75621 (1d:5621) + db $08 ; asm + ld hl, FuchsiaGymTrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +FuchsiaGymBattleText6: ; 7562b (1d:562b) + TX_FAR _FuchsiaGymBattleText6 + db "@" + +FuchsiaGymEndBattleText6: ; 75630 (1d:5630) + TX_FAR _FuchsiaGymEndBattleText6 + db "@" + +FuchsiaGymAfterBattleText6: ; 75635 (1d:5635) + TX_FAR _FuchsiaGymAfterBattleText6 + db "@" + +FuchsiaGymText8: ; 7563a (1d:563a) + db $08 ; asm + ld a, [$d792] + bit 1, a + ld hl, UnnamedText_75653 + jr nz, .asm_50671 ; 0x75643 + ld hl, UnnamedText_7564e +.asm_50671 ; 0x75648 + call PrintText + jp TextScriptEnd + +UnnamedText_7564e: ; 7564e (1d:564e) + TX_FAR _UnnamedText_7564e + db "@" + +UnnamedText_75653: ; 75653 (1d:5653) + TX_FAR _UnnamedText_75653 + db "@" |