kep-hack/scripts/GarnetCavernB1F.asm
Llinos Evans 8979403c5d Groundwork for Galarcuno in Garnet Cavern
This sets up most of the content necessary for Galarian Articuno's event. In SwSh, it has 2 copies, so I'm doing that here too.

Right now, the fight doesn't work properly and the copies don't hide properly. Otherwise, it's roughly how we want it to be.
2023-06-18 17:18:38 +01:00

100 lines
1.9 KiB
NASM

GarnetCavernB1F_Script:
call EnableAutoTextBoxDrawing
ld hl, GarnetCavernB1FTrainerHeaders
ld de, GarnetCavernB1F_ScriptPointers
ld a, [wGarnetCavernB1FCurScript]
call ExecuteCurMapScriptInTable
ld [wGarnetCavernB1FCurScript], a
ret
GarnetCavernB1F_ScriptPointers:
dw CheckFightingMapTrainers
dw DisplayEnemyTrainerTextAndStartBattle
dw EndTrainerBattle
GarnetCavernB1F_TextPointers:
dw ArticunoGText
dw PickUpItemText
dw PickUpItemText
dw ArticunoGCopy1
dw ArticunoGCopy2
GarnetCavernB1FTrainerHeaders:
def_trainers
ArticunoGTrainerHeader:
trainer EVENT_BEAT_ARTICUNO_G, 0, ArticunoGBattleText, ArticunoGBattleText, ArticunoGBattleText
db -1 ; end
ArticunoGText:
ld a, HS_ARTICUNO_G_COPY_1
ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_ARTICUNO_G_COPY_2
ld [wMissableObjectIndex], a
predef HideObject
text_asm
ld hl, ArticunoGTrainerHeader
call TalkToTrainer
jp TextScriptEnd
ArticunoGBattleText:
text_far _BirdBattleText
text_asm
ld a, ARTICUNO_G
call PlayCry
call WaitForSoundToFinish
jp TextScriptEnd
ArticunoGCopy1:
text_far _BirdBattleText
text_asm
ld a, ARTICUNO_G
call PlayCry
call WaitForSoundToFinish
ld a, $ff
ld [wJoyIgnore], a
call GBFadeOutToBlack
ld a, SFX_TELEPORT_ENTER_1
call PlaySound
ld a, HS_ARTICUNO_G_COPY_1
ld [wMissableObjectIndex], a
predef HideObject
call UpdateSprites
call Delay3
call GBFadeInFromBlack
ld a, 0
ld [wJoyIgnore], a
ld hl, ArticunoGCopyText
call PrintText
jp TextScriptEnd
ArticunoGCopy2:
text_far _BirdBattleText
text_asm
ld a, ARTICUNO_G
call PlayCry
call WaitForSoundToFinish
ld a, $ff
ld [wJoyIgnore], a
call GBFadeOutToBlack
ld a, SFX_TELEPORT_ENTER_1
call PlaySound
ld a, HS_ARTICUNO_G_COPY_2
ld [wMissableObjectIndex], a
predef HideObject
call UpdateSprites
call Delay3
call GBFadeInFromBlack
ld a, 0
ld [wJoyIgnore], a
ld hl, ArticunoGCopyText
call PrintText
jp TextScriptEnd
ArticunoGCopyText:
text "It was a copy!"
done
text_end