mirror of
https://github.com/pret/pokered.git
synced 2024-10-23 06:58:24 +00:00
79 lines
1.5 KiB
NASM
79 lines
1.5 KiB
NASM
SafariZoneCheck::
|
|
CheckEventHL EVENT_IN_SAFARI_ZONE ; if we are not in the Safari Zone,
|
|
jr z, SafariZoneGameStillGoing ; don't bother printing game over text
|
|
ld a, [wNumSafariBalls]
|
|
and a
|
|
jr z, SafariZoneGameOver
|
|
jr SafariZoneGameStillGoing
|
|
|
|
SafariZoneCheckSteps::
|
|
ld a, [wSafariSteps]
|
|
ld b, a
|
|
ld a, [wSafariSteps + 1]
|
|
ld c, a
|
|
or b
|
|
jr z, SafariZoneGameOver
|
|
dec bc
|
|
ld a, b
|
|
ld [wSafariSteps], a
|
|
ld a, c
|
|
ld [wSafariSteps + 1], a
|
|
SafariZoneGameStillGoing:
|
|
xor a
|
|
ld [wSafariZoneGameOver], a
|
|
ret
|
|
|
|
SafariZoneGameOver:
|
|
call EnableAutoTextBoxDrawing
|
|
xor a
|
|
ld [wAudioFadeOutControl], a
|
|
dec a ; SFX_STOP_ALL_MUSIC
|
|
call PlaySound
|
|
ld c, BANK(SFX_Safari_Zone_PA)
|
|
ld a, SFX_SAFARI_ZONE_PA
|
|
call PlayMusic
|
|
.waitForMusicToPlay
|
|
ld a, [wChannelSoundIDs + Ch5]
|
|
cp SFX_SAFARI_ZONE_PA
|
|
jr nz, .waitForMusicToPlay
|
|
ld a, TEXT_SAFARI_GAME_OVER
|
|
ldh [hSpriteIndexOrTextID], a
|
|
call DisplayTextID
|
|
xor a
|
|
ld [wPlayerMovingDirection], a
|
|
ld a, SAFARI_ZONE_GATE
|
|
ldh [hWarpDestinationMap], a
|
|
ld a, $3
|
|
ld [wDestinationWarpID], a
|
|
ld a, $5
|
|
ld [wSafariZoneGateCurScript], a
|
|
SetEvent EVENT_SAFARI_GAME_OVER
|
|
ld a, 1
|
|
ld [wSafariZoneGameOver], a
|
|
ret
|
|
|
|
PrintSafariGameOverText::
|
|
xor a
|
|
ld [wJoyIgnore], a
|
|
ld hl, SafariGameOverText
|
|
jp PrintText
|
|
|
|
SafariGameOverText:
|
|
text_asm
|
|
ld a, [wNumSafariBalls]
|
|
and a
|
|
jr z, .noMoreSafariBalls
|
|
ld hl, TimesUpText
|
|
call PrintText
|
|
.noMoreSafariBalls
|
|
ld hl, GameOverText
|
|
call PrintText
|
|
jp TextScriptEnd
|
|
|
|
TimesUpText:
|
|
text_far _TimesUpText
|
|
text_end
|
|
|
|
GameOverText:
|
|
text_far _GameOverText
|
|
text_end
|