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

Thanks to Frrf for helping me fix the broken code I initially sent in. This commit refines the mode so that the Oak Lab cutscene is finished and the party picking process is all concrete. Also, given Surge is a fight, the S.S. Anne Pikachu rival can have Raichu, surely... Also, the UnusedNames files were, in fact, needed...otherwise, the item names get all corrupted. Probably left some code behind. So we officially have a new funky mode!
159 lines
2.7 KiB
NASM
159 lines
2.7 KiB
NASM
; This function is a debugging feature to give the player Tsunekazu Ishihara's
|
|
; favorite Pokemon. This is indicated by the overpowered Exeggutor, which
|
|
; Ishihara (president of Creatures Inc.) said was his favorite Pokemon in an ABC
|
|
; interview on February 8, 2000.
|
|
; "Exeggutor is my favorite. That's because I was always using this character
|
|
; while I was debugging the program."
|
|
; http://www.ign.com/articles/2000/02/09/abc-news-pokamon-chat-transcript
|
|
|
|
SetIshiharaTeam:
|
|
ld de, IshiharaTeam
|
|
.loop
|
|
ld a, [de]
|
|
cp -1
|
|
ret z
|
|
ld [wcf91], a
|
|
inc de
|
|
ld a, [de]
|
|
ld [wCurEnemyLVL], a
|
|
inc de
|
|
call AddPartyMon
|
|
jr .loop
|
|
|
|
IshiharaTeam:
|
|
db SCREAM_TAIL, 90
|
|
IF DEF(_DEBUG)
|
|
db RAICHU, 16
|
|
ENDC
|
|
db -1 ; end
|
|
|
|
DebugStart:
|
|
IF DEF(_DEBUG)
|
|
xor a ; PLAYER_PARTY_DATA
|
|
ld [wMonDataLocation], a
|
|
|
|
; Fly anywhere.
|
|
dec a ; $ff
|
|
ld [wTownVisitedFlag], a
|
|
ld [wTownVisitedFlag + 1], a
|
|
|
|
; Get all badges except Earth Badge.
|
|
ld a, ~(1 << BIT_EARTHBADGE)
|
|
ld [wObtainedBadges], a
|
|
|
|
call SetIshiharaTeam
|
|
|
|
; Exeggutor gets four HM moves.
|
|
ld hl, wPartyMon1Moves
|
|
ld a, FLY
|
|
ld [hli], a
|
|
ld a, CUT
|
|
ld [hli], a
|
|
ld a, SURF
|
|
ld [hli], a
|
|
ld a, STRENGTH
|
|
ld [hl], a
|
|
ld hl, wPartyMon1PP
|
|
ld a, 15
|
|
ld [hli], a
|
|
ld a, 30
|
|
ld [hli], a
|
|
ld a, 15
|
|
ld [hli], a
|
|
ld [hl], a
|
|
|
|
; Jolteon gets Thunderbolt.
|
|
ld hl, wPartyMon3Moves + 3
|
|
ld a, THUNDERBOLT
|
|
ld [hl], a
|
|
ld hl, wPartyMon3PP + 3
|
|
ld a, 15
|
|
ld [hl], a
|
|
|
|
; Articuno gets Fly.
|
|
ld hl, wPartyMon5Moves
|
|
ld a, FLY
|
|
ld [hl], a
|
|
ld hl, wPartyMon5PP
|
|
ld a, 15
|
|
ld [hl], a
|
|
|
|
; Kadabra gets Flash and Teleport
|
|
ld hl, wPartyMon6Moves + 2
|
|
ld a, FLASH
|
|
ld [hl], a
|
|
ld hl, wPartyMon6PP + 2
|
|
ld a, 15
|
|
ld [hl], a
|
|
ld a, TELEPORT
|
|
ld [hl], a
|
|
|
|
; Get some debug items.
|
|
ld hl, wNumBagItems
|
|
ld de, DebugItemsList
|
|
.items_loop
|
|
ld a, [de]
|
|
cp -1
|
|
jr z, .items_end
|
|
ld [wcf91], a
|
|
inc de
|
|
ld a, [de]
|
|
inc de
|
|
ld [wItemQuantity], a
|
|
call AddItemToInventory
|
|
jr .items_loop
|
|
.items_end
|
|
|
|
; Complete the Pokédex.
|
|
ld hl, wPokedexOwned
|
|
call DebugSetPokedexEntries
|
|
ld hl, wPokedexSeen
|
|
call DebugSetPokedexEntries
|
|
SetEvent EVENT_GOT_POKEDEX
|
|
|
|
; Rival chose Squirtle,
|
|
; Player chose Charmander.
|
|
ld hl, wRivalStarter
|
|
ld a, STARTER2
|
|
ld [hli], a
|
|
inc hl ; hl = wPlayerStarter
|
|
ld a, STARTER1
|
|
ld [hl], a
|
|
|
|
ret
|
|
|
|
DebugSetPokedexEntries:
|
|
ld b, wPokedexOwnedEnd - wPokedexOwned
|
|
ld a, %11111111
|
|
.loop
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .loop
|
|
ld [hl], %01111111
|
|
ret
|
|
|
|
DebugItemsList:
|
|
db BICYCLE, 1
|
|
db FULL_RESTORE, 99
|
|
db MAX_REPEL, 99
|
|
db RARE_CANDY, 99
|
|
db MASTER_BALL, 99
|
|
db ULTRA_BALL, 99
|
|
db GREAT_BALL, 99
|
|
db SECRET_KEY, 1
|
|
db CARD_KEY, 1
|
|
db S_S_TICKET, 1
|
|
db CITRINE_PASS, 1
|
|
db SUPER_ROD, 1
|
|
db COIN_CASE, 1
|
|
db POKE_FLUTE, 1
|
|
db SILPH_SCOPE, 1
|
|
db OLDSEACHART, 1
|
|
db -1 ; end
|
|
|
|
DebugUnusedList:
|
|
db -1 ; end
|
|
ELSE
|
|
ret
|
|
ENDC
|