Shiny Pokedex Fix + Personal Gripe (#79)

* Tossing balls lag back to Crystal levels

* reversed order of text speed options

* fixed shiny palette on pokedex new entry

* fixed shiny palette on pokedex new entry + gamecorner

* added fix to celadon too

---------

Co-authored-by: Thorn Avery <thorn@avery.garden>
This commit is contained in:
thornAvery 2025-09-04 19:48:15 +10:00 committed by GitHub
parent ebaeaa8ca7
commit b632b469c2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 55 additions and 7 deletions

View file

@ -69,6 +69,7 @@ SpecialsPointers::
add_special UpdateSprites ; bank 0
add_special UpdatePlayerSprite ; bank 0
add_special GameCornerPrizeMonCheckDex
add_special GameCornerPrizeMonShowDex
add_special UnusedSetSeenMon ; unused
add_special WaitSFX ; bank 0
add_special PlayMapMusic ; bank 0

View file

@ -236,11 +236,20 @@ SetPlayerPalette:
ret
GameCornerPrizeMonCheckDex:
xor a
ld [wPokedexShinyToggle], a
ld [wWasMonCaught], a
ld a, [wScriptVar]
call CheckCaughtMon
ret nz
ld a, [wScriptVar]
call SetSeenAndCaughtMon
ld a, 1
ld [wWasMonCaught], a
ret
GameCornerPrizeMonShowDex:
ld a, [wWasMonCaught]
cp 0
ret z
call FadeToMenu
ld a, [wScriptVar]
ld [wNamedObjectIndex], a

View file

@ -532,6 +532,15 @@ PokeBallEffect:
ld a, [wEnemyMonSpecies]
ld [wTempSpecies], a
farcall BattleCheckEnemyShininess
jp c, .shiny
xor a
jp .shinycont
.shiny
xor a
inc a
.shinycont
ld [wPokedexShinyToggle], a
predef NewPokedexEntry
.skip_pokedex

View file

@ -114,9 +114,9 @@ GetOptionPointer:
Options_TextSpeed:
call GetTextSpeed
ldh a, [hJoyPressed]
bit D_LEFT_F, a
jr nz, .LeftPressed
bit D_RIGHT_F, a
jr nz, .RightPressed
bit D_LEFT_F, a
jr z, .NonePressed
ld a, c ; right pressed
cp OPT_TEXT_SPEED_NONE
@ -128,7 +128,7 @@ Options_TextSpeed:
ld a, e
jr .Save
.LeftPressed:
.RightPressed:
ld a, c
and a
jr nz, .Decrease

View file

@ -210,6 +210,22 @@ endr
inc de
ld a, c
ld [de], a
; Set Shininess for New Dex Entry
dec de
ld b, d
ld c, e
farcall CheckShininess
jp c, .shiny
xor a
jp .shinycont
.shiny
xor a
inc a
.shinycont
ld [wPokedexShinyToggle], a
; Unclobber de
inc de
inc de
; Initialize PP.

View file

@ -154,6 +154,8 @@ CeladonGameCornerPrizeRoomPokemonVendor:
loadmonindex 1, PIKACHU
special GameCornerPrizeMonCheckDex
givepoke PIKACHU, 25
loadmonindex 1, PIKACHU
special GameCornerPrizeMonShowDex
takecoins CELADONGAMECORNERPRIZEROOM_PIKACHU_COINS
sjump .loop
@ -172,6 +174,8 @@ CeladonGameCornerPrizeRoomPokemonVendor:
loadmonindex 2, PORYGON
special GameCornerPrizeMonCheckDex
givepoke PORYGON, 15
loadmonindex 2, PORYGON
special GameCornerPrizeMonShowDex
takecoins CELADONGAMECORNERPRIZEROOM_PORYGON_COINS
sjump .loop
@ -190,6 +194,8 @@ CeladonGameCornerPrizeRoomPokemonVendor:
loadmonindex 3, LARVITAR
special GameCornerPrizeMonCheckDex
givepoke LARVITAR, 40
loadmonindex 3, LARVITAR
special GameCornerPrizeMonShowDex
takecoins CELADONGAMECORNERPRIZEROOM_LARVITAR_COINS
sjump .loop

View file

@ -190,6 +190,8 @@ GoldenrodGameCornerPrizeMonVendorScript:
loadmonindex 1, ABRA
special GameCornerPrizeMonCheckDex
givepoke ABRA, 5
loadmonindex 1, ABRA
special GameCornerPrizeMonShowDex
takecoins GOLDENRODGAMECORNER_ABRA_COINS
sjump .loop
@ -208,6 +210,8 @@ GoldenrodGameCornerPrizeMonVendorScript:
loadmonindex 2, CUBONE
special GameCornerPrizeMonCheckDex
givepoke CUBONE, 15
loadmonindex 2, CUBONE
special GameCornerPrizeMonShowDex
takecoins GOLDENRODGAMECORNER_CUBONE_COINS
sjump .loop
@ -226,6 +230,8 @@ GoldenrodGameCornerPrizeMonVendorScript:
loadmonindex 3, WOBBUFFET
special GameCornerPrizeMonCheckDex
givepoke WOBBUFFET, 15
loadmonindex 3, WOBBUFFET
special GameCornerPrizeMonShowDex
takecoins GOLDENRODGAMECORNER_WOBBUFFET_COINS
sjump .loop

View file

@ -739,6 +739,7 @@ wPokedexDisplayNumber:: dw
wDexLastSeenIndex:: db ; index into wPokedexSeen containing the last non-zero value
wDexLastSeenValue:: db ; value at index
wDexTempCounter:: dw
wWasMonCaught:: db ; for use with givepoke
wPokedexDataEnd::
wPrevDexEntry:: dw