mirror of
https://github.com/thornAvery/kep-hack.git
synced 2025-09-17 02:40:50 +12:00

This adds Victory4 in its original form over Mt. Moon Square's music, which could possibly have the initial jingle removed. I noticed the GSC version was being used, which wasn't ideal. Mt. Moon Square's map is added, with accessibility where the Crater's originally was (for now). One warp on the south part of the map doesn't go anywhere (actually it's a glitch city). The shop and Clefairy event aren't done yet. The Mt. Moon Crater Guard has been removed with the pretence of re-adding him on the Square map once it's finished. I'm trying out having the text in the raw script file without farcalling, which seems to be more optimal than doing it the way the devs originally did it. The Battle Tent does this too.
128 lines
2.6 KiB
NASM
128 lines
2.6 KiB
NASM
HallOfFame_Script:
|
|
call EnableAutoTextBoxDrawing
|
|
ld hl, HallOfFame_ScriptPointers
|
|
ld a, [wHallOfFameCurScript]
|
|
jp CallFunctionInTable
|
|
|
|
HallofFameRoomScript_5a4aa:
|
|
xor a
|
|
ld [wJoyIgnore], a
|
|
ld [wHallOfFameCurScript], a
|
|
ret
|
|
|
|
HallOfFame_ScriptPointers:
|
|
dw HallofFameRoomScript0
|
|
dw HallofFameRoomScript1
|
|
dw HallofFameRoomScript2
|
|
dw HallofFameRoomScript3
|
|
|
|
HallofFameRoomScript3:
|
|
ret
|
|
|
|
HallofFameRoomScript2:
|
|
call Delay3
|
|
ld a, [wLetterPrintingDelayFlags]
|
|
push af
|
|
xor a
|
|
ld [wJoyIgnore], a
|
|
predef HallOfFamePC
|
|
pop af
|
|
ld [wLetterPrintingDelayFlags], a
|
|
ld hl, wFlags_D733
|
|
res 1, [hl]
|
|
inc hl
|
|
set 0, [hl]
|
|
xor a
|
|
ld hl, wLoreleisRoomCurScript
|
|
ld [hli], a ; wLoreleisRoomCurScript
|
|
ld [hli], a ; wBrunosRoomCurScript
|
|
ld [hl], a ; wAgathasRoomCurScript
|
|
ld [wLancesRoomCurScript], a
|
|
ld [wHallOfFameCurScript], a
|
|
; Elite 4 events
|
|
ResetEventRange INDIGO_PLATEAU_EVENTS_START, INDIGO_PLATEAU_EVENTS_END, 1
|
|
xor a
|
|
ld [wHallOfFameCurScript], a
|
|
ld a, PALLET_TOWN
|
|
ld [wLastBlackoutMap], a
|
|
farcall SaveSAVtoSRAM
|
|
ld b, 5
|
|
.delayLoop
|
|
ld c, 600 / 5
|
|
call DelayFrames
|
|
dec b
|
|
jr nz, .delayLoop
|
|
call WaitForTextScrollButtonPress
|
|
jp Init
|
|
|
|
HallofFameRoomScript0:
|
|
ld a, $ff
|
|
ld [wJoyIgnore], a
|
|
ld hl, wSimulatedJoypadStatesEnd
|
|
ld de, RLEMovement5a528
|
|
call DecodeRLEList
|
|
dec a
|
|
ld [wSimulatedJoypadStatesIndex], a
|
|
call StartSimulatingJoypadStates
|
|
ld a, $1
|
|
ld [wHallOfFameCurScript], a
|
|
ret
|
|
|
|
RLEMovement5a528:
|
|
db D_UP, 5
|
|
db -1 ; end
|
|
|
|
HallofFameRoomScript1:
|
|
ld a, [wSimulatedJoypadStatesIndex]
|
|
and a
|
|
ret nz
|
|
ld a, PLAYER_DIR_RIGHT
|
|
ld [wPlayerMovingDirection], a
|
|
ld a, $1
|
|
ldh [hSpriteIndex], a
|
|
call SetSpriteMovementBytesToFF
|
|
ld a, SPRITE_FACING_LEFT
|
|
ldh [hSpriteFacingDirection], a
|
|
call SetSpriteFacingDirectionAndDelay
|
|
call Delay3
|
|
xor a
|
|
ld [wJoyIgnore], a
|
|
inc a ; PLAYER_DIR_RIGHT
|
|
ld [wPlayerMovingDirection], a
|
|
ld a, $1
|
|
ldh [hSpriteIndexOrTextID], a
|
|
call DisplayTextID
|
|
ld a, $ff
|
|
ld [wJoyIgnore], a ; TODO: Make this less awful. See: Giovanni in Silph
|
|
ld a, HS_CERULEAN_CAVE_GUY
|
|
ld [wMissableObjectIndex], a
|
|
predef HideObject
|
|
;ld a, HS_MT_MOON_CRATER_GUARD
|
|
;ld [wMissableObjectIndex], a
|
|
;predef HideObject
|
|
ld a, HS_ROUTE_1_OAK
|
|
ld [wMissableObjectIndex], a
|
|
predef ShowObject
|
|
ld a, HS_BILLS_NIDORINO
|
|
ld [wMissableObjectIndex], a
|
|
predef HideObject
|
|
ld a, HS_MANSION_GUARD
|
|
ld [wMissableObjectIndex], a
|
|
predef HideObject
|
|
ld a, HS_YUJIROU
|
|
ld [wMissableObjectIndex], a
|
|
predef HideObject
|
|
ld a, HS_YUJIROU_REMATCH
|
|
ld [wMissableObjectIndex], a
|
|
predef ShowObject
|
|
ld a, $2
|
|
ld [wHallOfFameCurScript], a
|
|
ret
|
|
|
|
HallOfFame_TextPointers:
|
|
dw HallofFameRoomText1
|
|
|
|
HallofFameRoomText1:
|
|
text_far _HallofFameRoomText1
|
|
text_end
|