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/silphco4.asm | |
parent | 4e4e72d02a5a202daea3a73363d2a4c3ba34e724 (diff) |
Pull map scripts out of main.asm
Diffstat (limited to 'scripts/silphco4.asm')
-rwxr-xr-x | scripts/silphco4.asm | 201 |
1 files changed, 201 insertions, 0 deletions
diff --git a/scripts/silphco4.asm b/scripts/silphco4.asm new file mode 100755 index 00000000..1777ff8c --- /dev/null +++ b/scripts/silphco4.asm @@ -0,0 +1,201 @@ +SilphCo4Script: ; 19d0b (6:5d0b) + call SilphCo4Script_19d21 + call EnableAutoTextBoxDrawing + ld hl, SilphCo4TrainerHeaders + ld de, SilphCo4ScriptPointers + ld a, [W_SILPHCO4CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SILPHCO4CURSCRIPT], a + ret + +SilphCo4Script_19d21: ; 19d21 (6:5d21) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, SilphCo4Data19d58 + call SilphCo4Script_19d5d + call SilphCo4Script_19d89 + ld a, [$d82a] + bit 0, a + jr nz, .asm_19d48 + push af + ld a, $54 + ld [$d09f], a + ld bc, $0602 + ld a, $17 + call Predef + pop af +.asm_19d48 + bit 1, a + ret nz + ld a, $54 + ld [$d09f], a + ld bc, $0406 + ld a, $17 + jp Predef + +SilphCo4Data19d58: ; 19d58 (6:5d58) + db $06, $02, $04, $06, $ff + +SilphCo4Script_19d5d: ; 19d5d (6:5d5d) + push hl + ld hl, $d73f + ld a, [hli] + ld b, a + ld a, [hl] + ld c, a + xor a + ld [$ffe0], a + pop hl +.asm_19d69 + ld a, [hli] + cp $ff + jr z, .asm_19d85 ; 0x19d6c $17 + push hl + ld hl, $ffe0 + inc [hl] + pop hl + cp b + jr z, .asm_19d7a ; 0x19d75 $3 + inc hl + jr .asm_19d69 ; 0x19d78 $ef +.asm_19d7a + ld a, [hli] + cp c + jr nz, .asm_19d69 ; 0x19d7c $eb + ld hl, $d73f + xor a + ld [hli], a + ld [hl], a + ret +.asm_19d85 + xor a + ld [$ffe0], a + ret + +SilphCo4Script_19d89: ; 19d89 (6:5d89) + ld hl, $d82a + ld a, [$ffe0] + and a + ret z + cp $1 + jr nz, .asm_19d97 ; 0x19d92 $3 + set 0, [hl] + ret +.asm_19d97 + set 1, [hl] + ret + +SilphCo4ScriptPointers: ; 19d9a (6:5d9a) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SilphCo4TextPointers: ; 19da0 (6:5da0) + dw SilphCo4Text1 + dw SilphCo4Text2 + dw SilphCo4Text3 + dw SilphCo4Text4 + dw Predef5CText + dw Predef5CText + dw Predef5CText + +SilphCo4TrainerHeaders: ; 19dae (6:5dae) +SilphCo4TrainerHeader0: ; 19dae (6:5dae) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d829 ; flag's byte + dw SilphCo4BattleText2 ; 0x5df4 TextBeforeBattle + dw SilphCo4AfterBattleText2 ; 0x5dfe TextAfterBattle + dw SilphCo4EndBattleText2 ; 0x5df9 TextEndBattle + dw SilphCo4EndBattleText2 ; 0x5df9 TextEndBattle + +SilphCo4TrainerHeader2: ; 19dba (6:5dba) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d829 ; flag's byte + dw SilphCo4BattleText3 ; 0x5e0d TextBeforeBattle + dw SilphCo4AfterBattleText3 ; 0x5e17 TextAfterBattle + dw SilphCo4EndBattleText3 ; 0x5e12 TextEndBattle + dw SilphCo4EndBattleText3 ; 0x5e12 TextEndBattle + +SilphCo4TrainerHeader3: ; 19dc6 (6:5dc6) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d829 ; flag's byte + dw SilphCo4BattleText4 ; 0x5e26 TextBeforeBattle + dw SilphCo4AfterBattleText4 ; 0x5e30 TextAfterBattle + dw SilphCo4EndBattleText4 ; 0x5e2b TextEndBattle + dw SilphCo4EndBattleText4 ; 0x5e2b TextEndBattle + + db $ff + +SilphCo4Text1: ; 19dd3 (6:5dd3) + db $08 ; asm + ld hl, SilphCo4Text_19de0 + ld de, SilphCo4Text_19de5 + call SilphCo6Script_1a22f + jp TextScriptEnd + +SilphCo4Text_19de0: ; 19de0 (6:5de0) + TX_FAR _SilphCo4Text_19de0 + db "@" + +SilphCo4Text_19de5: ; 19de5 (6:5de5) + TX_FAR _SilphCo4Text_19de5 + db "@" + +SilphCo4Text2: ; 19dea (6:5dea) + db $08 ; asm + ld hl, SilphCo4TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SilphCo4BattleText2: ; 19df4 (6:5df4) + TX_FAR _SilphCo4BattleText2 + db "@" + +SilphCo4EndBattleText2: ; 19df9 (6:5df9) + TX_FAR _SilphCo4EndBattleText2 + db "@" + +SilphCo4AfterBattleText2: ; 19dfe (6:5dfe) + TX_FAR _SilphCo4AfterBattleText2 + db "@" + +SilphCo4Text3: ; 19e03 (6:5e03) + db $08 ; asm + ld hl, SilphCo4TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +SilphCo4BattleText3: ; 19e0d (6:5e0d) + TX_FAR _SilphCo4BattleText3 + db "@" + +SilphCo4EndBattleText3: ; 19e12 (6:5e12) + TX_FAR _SilphCo4EndBattleText3 + db "@" + +SilphCo4AfterBattleText3: ; 19e17 (6:5e17) + TX_FAR _SilphCo4AfterBattleText3 + db "@" + +SilphCo4Text4: ; 19e1c (6:5e1c) + db $08 ; asm + ld hl, SilphCo4TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +SilphCo4BattleText4: ; 19e26 (6:5e26) + TX_FAR _SilphCo4BattleText4 + db "@" + +SilphCo4EndBattleText4: ; 19e2b (6:5e2b) + TX_FAR _SilphCo4EndBattleText4 + db "@" + +SilphCo4AfterBattleText4: ; 19e30 (6:5e30) + TX_FAR _SilphCo4AfterBattleText4 + db "@" |