mirror of
https://github.com/thornAvery/kep-hack.git
synced 2025-09-16 18:30:50 +12:00

This adds the first half of an event where you will find the Galarian Birds. It is not finished yet. It currently bugs out when Galarian Zapdos tries to run away and I don't know why. Frame-by-frame, it seems to be when the player has to move. I've tried different things to make this less bad, but they don't work. Here's how it's meant to go: 1) Articuno flies away (done) 2) Zapdos barges past the player like Silver does in GSC (bugs out) 3) Moltres moves in front of the player and engages (not done) If anyone has a better way to do this, please let me know! Minor changes; - Connection for Brunswick-Citrine looks nicer - Celeste has a few changes to make the event run easier.
96 lines
2.2 KiB
NASM
96 lines
2.2 KiB
NASM
BrunswickTrail_Script:
|
|
call EnableAutoTextBoxDrawing
|
|
ld hl, BrunswickTrailTrainerHeaders
|
|
ld de, BrunswickTrail_ScriptPointers
|
|
ld a, [wBrunswickTrailCurScript]
|
|
call ExecuteCurMapScriptInTable
|
|
ld [wBrunswickTrailCurScript], a
|
|
ret
|
|
|
|
BrunswickTrail_ScriptPointers:
|
|
dw CheckFightingMapTrainers
|
|
dw DisplayEnemyTrainerTextAndStartBattle
|
|
dw EndTrainerBattle
|
|
|
|
BrunswickTrail_TextPointers:
|
|
dw FakeTreeEvent
|
|
dw ZapdosGuy
|
|
dw GalarianZapdosText
|
|
|
|
BrunswickTrailTrainerHeaders:
|
|
def_trainers
|
|
CactusTrainerHeader:
|
|
trainer EVENT_BEAT_CACTUS, 0, CactusBattleText, CactusBattleText, CactusBattleText
|
|
GalarianZapdosTrainerHeader:
|
|
trainer EVENT_BEAT_ZAPDOSG, 0, GalarianZapdosBattleText, GalarianZapdosBattleText, GalarianZapdosBattleText
|
|
db -1 ; end
|
|
|
|
ZapdosGuy:
|
|
text_far _ZapdosGuy
|
|
text_end
|
|
|
|
FakeTreeNoCut:
|
|
text_far _FakeTreeNoCut
|
|
text_end
|
|
|
|
FakeTreePrompt:
|
|
text_far _FakeTreePrompt
|
|
text_end
|
|
|
|
; Ok, so here's how it is.
|
|
; I tried to make the text work more efficiently here, but nothing worked.
|
|
; One bug literally took me back to the fucking title screen and at that point I gave up.
|
|
; I wanted to have some text before the CUT check. It did not work. It was terrifying.
|
|
; So instead I have two different versions of the same text, despite some being the same.
|
|
; It is inefficient, but it works. There's a lot to see in this life, and I'm not wasting it in Notepad++.
|
|
FakeTreeEvent:
|
|
text_asm
|
|
; ld d, CUT
|
|
; farcall HasPartyMove
|
|
; jr z, .NoCut
|
|
; jr nz, .HasCut
|
|
;.HasCut
|
|
ld hl, FakeTreePrompt
|
|
call PrintText
|
|
call YesNoChoice
|
|
ld a, [wCurrentMenuItem]
|
|
and a
|
|
jr nz, .refused
|
|
|
|
ld a, SFX_CUT
|
|
call PlaySound
|
|
|
|
ld hl, CactusTrainerHeader
|
|
call TalkToTrainer
|
|
jp TextScriptEnd ; I have tried a lot of things and it's not disappearing AAA
|
|
;.NoCut
|
|
; ld hl, FakeTreeNoCut ; Why do you have to be this way? I scream, for I do not know.
|
|
; call PrintText
|
|
; ret
|
|
.refused
|
|
jp TextScriptEnd
|
|
|
|
CactusBattleText:
|
|
text_far _FakeTreeAttack
|
|
text_asm
|
|
ld a, CACTUS
|
|
call PlayCry
|
|
call WaitForSoundToFinish
|
|
jp TextScriptEnd
|
|
|
|
GalarianZapdosText:
|
|
text_asm
|
|
ld hl, GalarianZapdosTrainerHeader
|
|
call TalkToTrainer
|
|
jp TextScriptEnd
|
|
|
|
GalarianZapdosBattleText:
|
|
text_far _GalarianZapdosBattleText
|
|
text_asm
|
|
ld a, ZAPDOS_G
|
|
call PlayCry
|
|
call WaitForSoundToFinish
|
|
jp TextScriptEnd
|
|
|
|
text_end ; unused
|