pokered/scripts/SilphCo5F.asm

222 lines
4.7 KiB
NASM
Raw Normal View History

SilphCo5F_Script:
2014-05-18 18:19:10 +00:00
call SilphCo5Script_19f4d
call EnableAutoTextBoxDrawing
ld hl, SilphCo5TrainerHeader0
ld de, SilphCo5F_ScriptPointers
ld a, [wSilphCo5FCurScript]
2014-05-18 18:19:10 +00:00
call ExecuteCurMapScriptInTable
ld [wSilphCo5FCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
SilphCo5Script_19f4d:
2016-01-03 19:17:10 +00:00
ld hl, wCurrentMapScriptFlags
2014-05-18 18:19:10 +00:00
bit 5, [hl]
res 5, [hl]
ret z
2015-08-05 21:20:29 +00:00
ld hl, SilphCo5GateCoords
2014-05-18 18:19:10 +00:00
call SilphCo4Script_19d5d
call SilphCo5Script_19f9e
2015-07-21 17:36:03 +00:00
CheckEvent EVENT_SILPH_CO_5_UNLOCKED_DOOR1
jr nz, .asm_19f74
2014-05-18 18:19:10 +00:00
push af
ld a, $5f
2015-07-24 21:39:45 +00:00
ld [wNewTileBlockID], a
2015-08-05 21:20:29 +00:00
lb bc, 2, 3
2014-09-14 18:29:18 +00:00
predef ReplaceTileBlock
2014-05-18 18:19:10 +00:00
pop af
.asm_19f74
2015-07-21 17:36:03 +00:00
CheckEventAfterBranchReuseA EVENT_SILPH_CO_5_UNLOCKED_DOOR2, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
jr nz, .asm_19f87
2014-05-18 18:19:10 +00:00
push af
ld a, $5f
2015-07-24 21:39:45 +00:00
ld [wNewTileBlockID], a
2015-08-05 21:20:29 +00:00
lb bc, 6, 3
2014-09-14 18:29:18 +00:00
predef ReplaceTileBlock
2014-05-18 18:19:10 +00:00
pop af
.asm_19f87
2015-07-21 17:36:03 +00:00
CheckEventAfterBranchReuseA EVENT_SILPH_CO_5_UNLOCKED_DOOR3, EVENT_SILPH_CO_5_UNLOCKED_DOOR2
2014-05-18 18:19:10 +00:00
ret nz
ld a, $5f
2015-07-24 21:39:45 +00:00
ld [wNewTileBlockID], a
2015-08-05 21:20:29 +00:00
lb bc, 5, 7
2014-09-14 18:29:18 +00:00
predef_jump ReplaceTileBlock
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5GateCoords:
2015-08-05 21:20:29 +00:00
db $02,$03
db $06,$03
db $05,$07
db $FF
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5Script_19f9e:
2015-07-21 17:36:03 +00:00
EventFlagAddress hl, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
ld a, [hUnlockedSilphCoDoors]
2014-05-18 18:19:10 +00:00
and a
ret z
cp $1
2015-07-21 01:32:02 +00:00
jr nz, .next1
2015-07-21 17:36:03 +00:00
SetEventReuseHL EVENT_SILPH_CO_5_UNLOCKED_DOOR1
2014-05-18 18:19:10 +00:00
ret
2015-07-21 01:32:02 +00:00
.next1
2014-05-18 18:19:10 +00:00
cp $2
2015-07-21 01:32:02 +00:00
jr nz, .next2
2015-07-21 17:36:03 +00:00
SetEventAfterBranchReuseHL EVENT_SILPH_CO_5_UNLOCKED_DOOR2, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
2014-05-18 18:19:10 +00:00
ret
2015-07-21 01:32:02 +00:00
.next2
2015-07-21 17:36:03 +00:00
SetEventAfterBranchReuseHL EVENT_SILPH_CO_5_UNLOCKED_DOOR3, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
2014-05-18 18:19:10 +00:00
ret
SilphCo5F_ScriptPointers:
2014-05-18 18:19:10 +00:00
dw CheckFightingMapTrainers
2014-09-14 18:29:18 +00:00
dw DisplayEnemyTrainerTextAndStartBattle
2014-05-18 18:19:10 +00:00
dw EndTrainerBattle
SilphCo5F_TextPointers:
2014-05-18 18:19:10 +00:00
dw SilphCo5Text1
dw SilphCo5Text2
dw SilphCo5Text3
dw SilphCo5Text4
dw SilphCo5Text5
2015-07-18 15:17:29 +00:00
dw PickUpItemText
dw PickUpItemText
dw PickUpItemText
2014-05-18 18:19:10 +00:00
dw SilphCo5Text9
dw SilphCo5Text10
dw SilphCo5Text11
SilphCo5TrainerHeader0:
2015-07-21 01:32:02 +00:00
dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_0
2014-05-18 18:19:10 +00:00
db ($1 << 4) ; trainer's view range
2015-07-21 01:32:02 +00:00
dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_0
dw SilphCo5BattleText2 ; TextBeforeBattle
dw SilphCo5AfterBattleText2 ; TextAfterBattle
dw SilphCo5EndBattleText2 ; TextEndBattle
dw SilphCo5EndBattleText2 ; TextEndBattle
2014-05-18 18:19:10 +00:00
SilphCo5TrainerHeader1:
dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_1
2014-05-18 18:19:10 +00:00
db ($2 << 4) ; trainer's view range
dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_1
dw SilphCo5BattleText3 ; TextBeforeBattle
dw SilphCo5AfterBattleText3 ; TextAfterBattle
dw SilphCo5EndBattleText3 ; TextEndBattle
dw SilphCo5EndBattleText3 ; TextEndBattle
2014-05-18 18:19:10 +00:00
SilphCo5TrainerHeader2:
dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_2
2014-05-18 18:19:10 +00:00
db ($4 << 4) ; trainer's view range
dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_2
dw SilphCo5BattleText4 ; TextBeforeBattle
dw SilphCo5AfterBattleText4 ; TextAfterBattle
dw SilphCo5EndBattleText4 ; TextEndBattle
dw SilphCo5EndBattleText4 ; TextEndBattle
2014-05-18 18:19:10 +00:00
SilphCo5TrainerHeader3:
dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_3
2014-05-18 18:19:10 +00:00
db ($3 << 4) ; trainer's view range
dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_3
dw SilphCo5BattleText5 ; TextBeforeBattle
dw SilphCo5AfterBattleText5 ; TextAfterBattle
dw SilphCo5EndBattleText5 ; TextEndBattle
dw SilphCo5EndBattleText5 ; TextEndBattle
2014-05-18 18:19:10 +00:00
db $ff
2016-06-12 00:24:04 +00:00
SilphCo5Text1:
text_asm
2014-05-18 18:19:10 +00:00
ld hl, SilphCo5Text_1a010
ld de, SilphCo5Text_1a015
call SilphCo6Script_1a22f
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
SilphCo5Text_1a010:
text_far _SilphCo5Text_1a010
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5Text_1a015:
text_far _SilphCo5Text_1a015
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5Text2:
text_asm
ld hl, SilphCo5TrainerHeader0
2014-05-18 18:19:10 +00:00
call TalkToTrainer
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
SilphCo5BattleText2:
text_far _SilphCo5BattleText2
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5EndBattleText2:
text_far _SilphCo5EndBattleText2
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5AfterBattleText2:
text_far _SilphCo5AfterBattleText2
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5Text3:
text_asm
ld hl, SilphCo5TrainerHeader1
2014-05-18 18:19:10 +00:00
call TalkToTrainer
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
SilphCo5BattleText3:
text_far _SilphCo5BattleText3
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5EndBattleText3:
text_far _SilphCo5EndBattleText3
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5AfterBattleText3:
text_far _SilphCo5AfterBattleText3
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5Text4:
text_asm
ld hl, SilphCo5TrainerHeader2
2014-05-18 18:19:10 +00:00
call TalkToTrainer
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
SilphCo5BattleText4:
text_far _SilphCo5BattleText4
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5EndBattleText4:
text_far _SilphCo5EndBattleText4
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5AfterBattleText4:
text_far _SilphCo5AfterBattleText4
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5Text5:
text_asm
ld hl, SilphCo5TrainerHeader3
2014-05-18 18:19:10 +00:00
call TalkToTrainer
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
SilphCo5BattleText5:
text_far _SilphCo5BattleText5
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5EndBattleText5:
text_far _SilphCo5EndBattleText5
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5AfterBattleText5:
text_far _SilphCo5AfterBattleText5
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5Text9:
text_far _SilphCo5Text9
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5Text10:
text_far _SilphCo5Text10
text_end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
SilphCo5Text11:
text_far _SilphCo5Text11
text_end