Pikachu/Eevee Mode Part 2

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!
This commit is contained in:
May Evans 2023-03-28 19:07:51 +01:00
parent 73784d619a
commit eb46fbdaf6
14 changed files with 104 additions and 79 deletions

View file

@ -75,6 +75,7 @@ QoL Enhancements
==== ====
- All 217 (current) Pokemon can be obtained without the use of trading or glitches, including Mew! - All 217 (current) Pokemon can be obtained without the use of trading or glitches, including Mew!
- New Pokedex entries for most Pokemon are available, sourced from the original 1996 Pokedex book by Creatures Inc., restoring a ton of old Kanto lore. Thanks to [Dr. Lava and Nob Ogasawara](http://lavacutcontent.com/1996-creatures-pokedex-translation-1/) for their incredible work translating and writing about it! - New Pokedex entries for most Pokemon are available, sourced from the original 1996 Pokedex book by Creatures Inc., restoring a ton of old Kanto lore. Thanks to [Dr. Lava and Nob Ogasawara](http://lavacutcontent.com/1996-creatures-pokedex-translation-1/) for their incredible work translating and writing about it!
- Pikachu and Eevee are now starters, featuring fully functional Rival lineups. If you pick Pikachu, he picks Eevee, and if you pick Eevee, he picks Pikachu!
- Item Descriptions are available! - Item Descriptions are available!
- Press A beside surfable water, strength boulders or cut trees to use the HMs without needing to go into the Party menu. - Press A beside surfable water, strength boulders or cut trees to use the HMs without needing to go into the Party menu.
- PP symbol is displayed in the battle menu. PP displayed before, it just looks nicer now. Done by changing a straggler Japanese character. - PP symbol is displayed in the battle menu. PP displayed before, it just looks nicer now. Done by changing a straggler Japanese character.
@ -245,6 +246,7 @@ Credits
* Albatross - Much of the new sprites used in the hack (Electivire, Magmortar, Rhyperior, Tangrowth, Glaceon, Sylveon...) * Albatross - Much of the new sprites used in the hack (Electivire, Magmortar, Rhyperior, Tangrowth, Glaceon, Sylveon...)
* ZumiIsawhat? - Restorations of beta OST * ZumiIsawhat? - Restorations of beta OST
* Helix Chamber, RacieBeep, et al - Prototype Pokémon sprites * Helix Chamber, RacieBeep, et al - Prototype Pokémon sprites
* Frrf - Assisting with the development of the Pikachu / Eevee Mode
* Chatot4444 - Assisting with gym scaling code * Chatot4444 - Assisting with gym scaling code
* Vortyne - Reused a bit of code from their pureRGB hack, which was used to assist with making MissingNo. stable. Assisted in bug fixes. * Vortyne - Reused a bit of code from their pureRGB hack, which was used to assist with making MissingNo. stable. Assisted in bug fixes.
* Rangi - Reused a bit of code from their Red* / Blue* hack to make HMs usable in the overworld! * Rangi - Reused a bit of code from their Red* / Blue* hack to make HMs usable in the overworld!

View file

@ -34,10 +34,10 @@ DEF SHOW EQU $15
const HS_SAFFRON_CITY_D ; 16 const HS_SAFFRON_CITY_D ; 16
const HS_SAFFRON_CITY_E ; 17 const HS_SAFFRON_CITY_E ; 17
const HS_SAFFRON_CITY_F ; 18 const HS_SAFFRON_CITY_F ; 18
const HS_ROUTE_2_ITEM_1 ; 19 const HS_ROUTE_2_ITEM_1 ; 19 X
const HS_ROUTE_2_ITEM_2 ; 1A const HS_ROUTE_2_ITEM_2 ; 1A X
;const HS_POKEDEX_1 ; 1B const HS_ROUTE_4_ITEM ; 1B X
;const HS_POKEDEX_2 ; 1C const HS_ROUTE_9_ITEM ; 1C X
const HS_ROUTE_12_SNORLAX ; 1D const HS_ROUTE_12_SNORLAX ; 1D
const HS_ROUTE_12_ITEM_1 ; 1E X const HS_ROUTE_12_ITEM_1 ; 1E X
const HS_ROUTE_12_ITEM_2 ; 1F X const HS_ROUTE_12_ITEM_2 ; 1F X
@ -56,8 +56,8 @@ DEF SHOW EQU $15
const HS_STARTER_BALL_2 ; 2C const HS_STARTER_BALL_2 ; 2C
const HS_STARTER_BALL_3 ; 2D const HS_STARTER_BALL_3 ; 2D
const HS_OAKS_LAB_OAK_1 ; 2E const HS_OAKS_LAB_OAK_1 ; 2E
const HS_STARTER_BALL_4 ; 2F, Pikachu, was HS_POKEDEX_1 const HS_STARTER_BALL_4 ; 2F, was dex, pikachu
const HS_STARTER_BALL_5 ; 30, Eevee, was HS_POKEDEX_2 const HS_STARTER_BALL_5 ; 30, was dex, eevee
const HS_OAKS_LAB_OAK_2 ; 31 const HS_OAKS_LAB_OAK_2 ; 31
const HS_VIRIDIAN_GYM_GIOVANNI ; 32 const HS_VIRIDIAN_GYM_GIOVANNI ; 32
const HS_VIRIDIAN_GYM_ITEM ; 33 X const HS_VIRIDIAN_GYM_ITEM ; 33 X

View file

@ -325,8 +325,8 @@ OaksLabHS:
db OAKS_LAB, $03, SHOW db OAKS_LAB, $03, SHOW
db OAKS_LAB, $04, SHOW db OAKS_LAB, $04, SHOW
db OAKS_LAB, $05, SHOW db OAKS_LAB, $05, SHOW
;db OAKS_LAB, $06, SHOW - removed dexes db OAKS_LAB, $07, SHOW
;db OAKS_LAB, $07, SHOW db OAKS_LAB, $08, SHOW
db OAKS_LAB, $06, HIDE db OAKS_LAB, $06, HIDE
ViridianGymHS: ViridianGymHS:
db VIRIDIAN_GYM, $01, SHOW db VIRIDIAN_GYM, $01, SHOW

View file

@ -772,19 +772,19 @@ Green2Data:
db $FF, 19, PIDGEOTTO, 16, RATICATE, 18, KADABRA, 20, IVYSAUR, 0 db $FF, 19, PIDGEOTTO, 16, RATICATE, 18, KADABRA, 20, IVYSAUR, 0
db $FF, 19, PIDGEOTTO, 16, RATICATE, 18, KADABRA, 20, CHARMELEON, 0 db $FF, 19, PIDGEOTTO, 16, RATICATE, 18, KADABRA, 20, CHARMELEON, 0
db $FF, 19, SPEAROW, 16, SANDSHREW, 18, RATTATA, 20, EEVEE, 0 db $FF, 19, SPEAROW, 16, SANDSHREW, 18, RATTATA, 20, EEVEE, 0
db $FF, 19, SPEAROW, 16, SANDSHREW, 18, RATTATA, 20, PIKACHU, 0 db $FF, 19, SPEAROW, 16, SANDSHREW, 18, RATTATA, 20, RAICHU, 0
; Pokémon Tower 2F ; Pokémon Tower 2F
db $FF, 25, PIDGEOTTO, 23, GROWLITHE, 22, EXEGGCUTE, 20, KADABRA, 25, WARTORTLE, 0 db $FF, 25, PIDGEOTTO, 23, GROWLITHE, 22, EXEGGCUTE, 20, KADABRA, 25, WARTORTLE, 0
db $FF, 25, PIDGEOTTO, 23, GYARADOS, 22, GROWLITHE, 20, KADABRA, 25, IVYSAUR, 0 db $FF, 25, PIDGEOTTO, 23, GYARADOS, 22, GROWLITHE, 20, KADABRA, 25, IVYSAUR, 0
db $FF, 25, PIDGEOTTO, 23, EXEGGCUTE, 22, GYARADOS, 20, KADABRA, 25, CHARMELEON, 0 db $FF, 25, PIDGEOTTO, 23, EXEGGCUTE, 22, GYARADOS, 20, KADABRA, 25, CHARMELEON, 0
db $FF, 25, FEAROW, 23, VULPIX, 22, MAGNETITE, 20, SANDSHREW, 25, EEVEE, 0 db $FF, 25, FEAROW, 23, VULPIX, 22, MAGNETITE, 20, SANDSHREW, 25, EEVEE, 0
db $FF, 25, FEAROW, 23, SHELLDER, 22, VULPIX, 20, SANDSHREW, 25, PIKACHU, 0 db $FF, 25, FEAROW, 23, SHELLDER, 22, VULPIX, 20, SANDSHREW, 25, RAICHU, 0
; Silph Co. 7F ; Silph Co. 7F
db $FF, 37, PIDGEOT, 38, GROWLITHE, 35, EXEGGCUTE, 35, ALAKAZAM, 40, TOTARTLE, 0 db $FF, 37, PIDGEOT, 38, GROWLITHE, 35, EXEGGCUTE, 35, ALAKAZAM, 40, TOTARTLE, 0
db $FF, 37, PIDGEOT, 38, GYARADOS, 35, GROWLITHE, 35, ALAKAZAM, 40, VENUSAUR, 0 db $FF, 37, PIDGEOT, 38, GYARADOS, 35, GROWLITHE, 35, ALAKAZAM, 40, VENUSAUR, 0
db $FF, 37, PIDGEOT, 38, EXEGGCUTE, 35, GYARADOS, 35, ALAKAZAM, 40, CHARIZARD, 0 db $FF, 37, PIDGEOT, 38, EXEGGCUTE, 35, GYARADOS, 35, ALAKAZAM, 40, CHARIZARD, 0
db $FF, 38, SANDSLASH, 35, MAGNETON, 37, NINETALES, 35, KADABRA, 40, UMBREON, 0 db $FF, 38, SANDSLASH, 35, MAGNETON, 37, NINETALES, 35, KADABRA, 40, UMBREON, 0
db $FF, 38, SANDSLASH, 35, CLOYSTER, 37, NINETALES, 35, KADABRA, 40, RAICHU, 0 db $FF, 38, SANDSLASH, 35, CLOYSTER, 37, NINETALES, 35, KADABRA, 40, GOROCHU, 0
; Route 22 ; Route 22
db $FF, 47, MADAAMU, 45, RHYDON, 45, GROWLITHE, 47, EXEGGCUTE, 50, ALAKAZAM, 53, TOTARTLE, 0 db $FF, 47, MADAAMU, 45, RHYDON, 45, GROWLITHE, 47, EXEGGCUTE, 50, ALAKAZAM, 53, TOTARTLE, 0
db $FF, 47, MADAAMU, 45, RHYDON, 45, GYARADOS, 47, GROWLITHE, 50, ALAKAZAM, 53, VENUSAUR, 0 db $FF, 47, MADAAMU, 45, RHYDON, 45, GYARADOS, 47, GROWLITHE, 50, ALAKAZAM, 53, VENUSAUR, 0

View file

@ -23,7 +23,7 @@ SetIshiharaTeam:
IshiharaTeam: IshiharaTeam:
db SCREAM_TAIL, 90 db SCREAM_TAIL, 90
IF DEF(_DEBUG) IF DEF(_DEBUG)
db KADABRA, 16 db RAICHU, 16
ENDC ENDC
db -1 ; end db -1 ; end

View file

@ -2,7 +2,7 @@ NamePointers::
; entries correspond to *_NAME constants ; entries correspond to *_NAME constants
dw MonsterNames dw MonsterNames
dw MoveNames dw MoveNames
;dw UnusedBadgeNames - unused dw UnusedBadgeNames
dw ItemNames dw ItemNames
dw wPartyMonOT ; player's OT names list dw wPartyMonOT ; player's OT names list
dw wEnemyMonOT ; enemy's OT names list dw wEnemyMonOT ; enemy's OT names list

View file

@ -10,7 +10,7 @@ INCLUDE "engine/movie/title.asm"
INCLUDE "engine/pokemon/load_mon_data.asm" INCLUDE "engine/pokemon/load_mon_data.asm"
INCLUDE "data/items/prices.asm" INCLUDE "data/items/prices.asm"
INCLUDE "data/items/names.asm" INCLUDE "data/items/names.asm"
;INCLUDE "data/text/unused_names.asm" INCLUDE "data/text/unused_names.asm"
INCLUDE "engine/gfx/sprite_oam.asm" INCLUDE "engine/gfx/sprite_oam.asm"
INCLUDE "engine/gfx/oam_dma.asm" INCLUDE "engine/gfx/oam_dma.asm"
INCLUDE "engine/link/print_waiting_text.asm" INCLUDE "engine/link/print_waiting_text.asm"

View file

@ -143,7 +143,7 @@ CeruleanCityScript1:
; select which team to use during the encounter ; select which team to use during the encounter
ld a, [wRivalStarter] ld a, [wRivalStarter]
cp STARTER1 cp STARTER2
jr nz, .NotSquirtle jr nz, .NotSquirtle
ld a, $11 ld a, $11
jr .done jr .done
@ -153,17 +153,17 @@ CeruleanCityScript1:
ld a, $12 ld a, $12
jr .done jr .done
.Charmander .Charmander
cp STARTER2 ; changes start here cp STARTER1 ; changes start here
ld a, $13 ld a, $13
jr nz, .Pikachu jr nz, .Pikachu
jr .done jr .done
.Pikachu ; .Pikachu ;
cp STARTER4 cp STARTER4
jr nz, .Eevee jr nz, .Eevee
ld a, $14 ld a, $15
jr .done jr .done
.Eevee .Eevee
ld a, $15 ld a, $14
jr .done jr .done
.done .done
ld [wTrainerNo], a ld [wTrainerNo], a

View file

@ -69,7 +69,7 @@ GaryScript2:
; select which team to use during the encounter ; select which team to use during the encounter
ld a, [wRivalStarter] ld a, [wRivalStarter]
cp STARTER1 cp STARTER2
jr nz, .NotSquirtle jr nz, .NotSquirtle
ld a, $1 ld a, $1
jr .saveTrainerId jr .saveTrainerId
@ -79,17 +79,17 @@ GaryScript2:
ld a, $2 ld a, $2
jr .saveTrainerId jr .saveTrainerId
.Charmander .Charmander
cp STARTER2 ; changes start here cp STARTER1 ; changes start here
ld a, $3 ld a, $3
jr nz, .Pikachu jr nz, .Pikachu
jr .saveTrainerId jr .saveTrainerId
.Pikachu ; .Pikachu ;
cp STARTER4 cp STARTER4
jr nz, .Eevee jr nz, .Eevee
ld a, $4 ld a, $5
jr .saveTrainerId jr .saveTrainerId
.Eevee .Eevee
ld a, $5 ld a, $4
jr .saveTrainerId jr .saveTrainerId
.saveTrainerId .saveTrainerId
ld [wTrainerNo], a ld [wTrainerNo], a

View file

@ -205,13 +205,14 @@ OaksLabScript8:
jr z, .Eevee jr z, .Eevee
.Charmander .Charmander
ld de, .CharmanderMovement2 ld de, .MiddleBallMovement1
ld a, [wYCoord] ld a, [wYCoord]
cp 4 ; is the player standing below the table? cp 4 ; is the player standing below the table?
jr z, .moveBlue jr z, .moveBlue
ld de, .CharmanderMovement1 ld de, .MiddleBallMovement2
jp .moveBlue jp .moveBlue
.CharmanderMovement1
.MiddleBallMovement1
db NPC_MOVEMENT_DOWN db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT
@ -219,36 +220,38 @@ OaksLabScript8:
db NPC_MOVEMENT_UP db NPC_MOVEMENT_UP
db -1 ; end db -1 ; end
.CharmanderMovement2 .MiddleBallMovement2
db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT
db -1 ; end db -1 ; end
.Squirtle .Squirtle
ld de, .SquirtleMovement2 ld de, .RightBallMovement1
ld a, [wYCoord] ld a, [wYCoord]
cp 4 ; is the player standing below the table? cp 4 ; is the player standing below the table?
jr z, .moveBlue jr z, .moveBlue
ld de, .CharmanderMovement1 ld de, .RightBallMovement2
jp .moveBlue jp .moveBlue
.SquirtleMovement1 .RightBallMovement1
db NPC_MOVEMENT_DOWN db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_UP db NPC_MOVEMENT_UP
db -1 ; end db -1 ; end
.SquirtleMovement2 .RightBallMovement2
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT
db -1 ; end db -1 ; end
.Bulbasaur .Bulbasaur
ld de, .BulbasaurMovement1 ld de, .LeftBallMovement
ld a, [wXCoord] ld a, [wXCoord]
cp 9 ; is the player standing to the right of the table? cp 9 ; is the player standing to the right of the table?
jr nz, .moveBlue jr nz, .moveBlue
@ -268,17 +271,15 @@ OaksLabScript8:
ld [hl], 8 ; SPRITESTATEDATA2_MAPY ld [hl], 8 ; SPRITESTATEDATA2_MAPY
inc hl inc hl
ld [hl], 9 ; SPRITESTATEDATA2_MAPX ld [hl], 9 ; SPRITESTATEDATA2_MAPX
ld de, .BulbasaurMovement2 ; the rival is not currently onscreen, so account for that ld de, .LeftBallMovement ; the rival is not currently onscreen, so account for that
pop hl pop hl
jr .moveBlue jp .moveBlue
.BulbasaurMovement1 .LeftBallMovement ; with the new layout, LeftBallMovement2 seems unnecessary and can merely be proc'd twice.
db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_RIGHT
.BulbasaurMovement2
db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT
db -1 ; end db -1 ; end
.Pikachu .Pikachu
ld de, .PikachuMovement1 ld de, .PikachuMovement1
jr z, .moveBlue jr z, .moveBlue
@ -338,7 +339,18 @@ OaksLabScript9: ; This is where Blue picks up the ball and removes the sprite.
ld a, HS_STARTER_BALL_2 ld a, HS_STARTER_BALL_2
jr .hideBallAndContinue jr .hideBallAndContinue
.rivalChoseBall3 .rivalChoseBall3
cp $4
jr nz, .rivalDidNotChoseBall3
ld a, HS_STARTER_BALL_3 ld a, HS_STARTER_BALL_3
jr .hideBallAndContinue
.rivalDidNotChoseBall3
cp $7
jr nz, .rivalDidNotChoseBall4
ld a, HS_STARTER_BALL_4
jr .hideBallAndContinue
.rivalDidNotChoseBall4
ld a, HS_STARTER_BALL_5
jr .hideBallAndContinue
.hideBallAndContinue .hideBallAndContinue
ld [wMissableObjectIndex], a ld [wMissableObjectIndex], a
predef HideObject predef HideObject
@ -411,24 +423,24 @@ OaksLabScript11:
ld a, OPP_RIVAL1 ld a, OPP_RIVAL1
ld [wCurOpponent], a ld [wCurOpponent], a
ld a, [wRivalStarter] ld a, [wRivalStarter]
cp STARTER1 cp STARTER2 ; charmander
jr nz, .NotSquirtle jr nz, .NotSquirtle
ld a, $1 ld a, $1 ; squirtle
jr .done jr .done
.NotSquirtle .NotSquirtle
cp STARTER3 cp STARTER3 ; bulbasaur
jr nz, .Charmander jr nz, .Charmander
ld a, $2 ld a, $2 ; bulbasaur
jr .done jr .done
.Charmander .Charmander
cp STARTER2 ; changes start here cp STARTER1 ; changes start here
ld a, $3
jr nz, .Pikachu jr nz, .Pikachu
ld a, $3 ; charmander
jr .done jr .done
.Pikachu ; .Pikachu ;
cp STARTER4 cp STARTER5
jr nz, .Eevee
ld a, $4 ld a, $4
jr nz, .Eevee
jr .done jr .done
.Eevee .Eevee
ld a, $5 ld a, $5
@ -488,7 +500,7 @@ OaksLabScript13:
ld de, .RivalExitMovement ld de, .RivalExitMovement
call MoveSprite call MoveSprite
ld a, [wXCoord] ld a, [wXCoord]
cp 4 cp 6
; move left or right depending on where the player is standing ; move left or right depending on where the player is standing
jr nz, .moveLeft jr nz, .moveLeft
ld a, NPC_MOVEMENT_RIGHT ld a, NPC_MOVEMENT_RIGHT
@ -871,31 +883,31 @@ OaksLabText4:
; For Pikachu and Eevee Mode, you only have these two. ; For Pikachu and Eevee Mode, you only have these two.
; $5 = Pikachu ; $5 = Pikachu
; $6 = Eevee ; $6 = Eevee
; I have no idea how Blue comes to the correct conclusions after, but I won't question it...for now.
OaksLabTextPikachu: OaksLabTextPikachu:
text_asm text_asm
ld a, STARTER5 ld a, STARTER5
ld [wRivalStarterTemp], a ld [wRivalStarterTemp], a
ld a, $5 ld a, $8
ld [wRivalStarterBallSpriteIndex], a ld [wRivalStarterBallSpriteIndex], a
ld a, STARTER4 ld a, STARTER4
ld b, $6 ld b, $7
jr OaksLabScript_1d133 jr OaksLabScript_1d133
OaksLabTextEevee: OaksLabTextEevee:
text_asm text_asm
ld a, STARTER4 ld a, STARTER4
ld [wRivalStarterTemp], a ld [wRivalStarterTemp], a
ld a, $5 ld a, $7
ld [wRivalStarterBallSpriteIndex], a ld [wRivalStarterBallSpriteIndex], a
ld a, STARTER5 ld a, STARTER5
ld b, $5 ld b, $8
jr OaksLabScript_1d133
; ends here ; ends here
OaksLabScript_1d133: OaksLabScript_1d133:
ld [wcf91], a ld [wcf91], a ; STARTER#
ld [wd11e], a ld [wd11e], a ; STARTER#
ld a, b ld a, b ; BALL???
ld [wSpriteIndex], a ld [wSpriteIndex], a
CheckEvent EVENT_GOT_STARTER CheckEvent EVENT_GOT_STARTER
jp nz, OaksLabScript_1d22d jp nz, OaksLabScript_1d22d
@ -937,9 +949,9 @@ OaksLabScript_1d157:
jr z, OaksLabLookAtSquirtle jr z, OaksLabLookAtSquirtle
cp $4 cp $4
jr z, OaksLabLookAtBulbasaur jr z, OaksLabLookAtBulbasaur
cp $5 ; these may be the wrong way around. cp $8 ; these may be the wrong way around.
jr nz, OaksLabLookAtPikachu jr nz, OaksLabLookAtPikachu
cp $6 ; ^ cp $7 ; ^
jr nz, OaksLabLookAtEevee jr nz, OaksLabLookAtEevee
@ -986,9 +998,9 @@ OaksLabMonChoiceMenu:
ld a, [wCurrentMenuItem] ld a, [wCurrentMenuItem]
and a and a
jr nz, OaksLabMonChoiceEnd jr nz, OaksLabMonChoiceEnd
ld a, [wcf91] ld a, [wcf91] ; STARTER#
ld [wPlayerStarter], a ld [wPlayerStarter], a
ld [wd11e], a ld [wd11e], a ; STARTER#
call GetMonName call GetMonName
ld a, [wSpriteIndex] ld a, [wSpriteIndex]
cp $2 cp $2
@ -1001,7 +1013,18 @@ OaksLabMonChoiceMenu:
ld a, HS_STARTER_BALL_2 ld a, HS_STARTER_BALL_2
jr .asm_1d1e5 jr .asm_1d1e5
.asm_1d1e3 .asm_1d1e3
cp $4
jr nz, .asm_ldle4
ld a, HS_STARTER_BALL_3 ld a, HS_STARTER_BALL_3
jr .asm_1d1e5
.asm_ldle4
cp $7
jr nz, .asm_ldle6
ld a, HS_STARTER_BALL_4
jr .asm_1d1e5
.asm_ldle6
ld a, HS_STARTER_BALL_5
jr .asm_1d1e5
.asm_1d1e5 .asm_1d1e5
ld [wMissableObjectIndex], a ld [wMissableObjectIndex], a
predef HideObject predef HideObject

View file

@ -153,7 +153,7 @@ PokemonTower2Text1:
; select which team to use during the encounter ; select which team to use during the encounter
ld a, [wRivalStarter] ld a, [wRivalStarter]
cp STARTER1 cp STARTER2
jr nz, .NotSquirtle jr nz, .NotSquirtle
ld a, $6 ld a, $6
jr .done jr .done
@ -163,17 +163,17 @@ PokemonTower2Text1:
ld a, $7 ld a, $7
jr .done jr .done
.Charmander .Charmander
cp STARTER2 ; changes start here cp STARTER1 ; changes start here
ld a, $8 ld a, $8
jr nz, .Pikachu jr nz, .Pikachu
jr .done jr .done
.Pikachu ; .Pikachu ;
cp STARTER4 cp STARTER4
jr nz, .Eevee jr nz, .Eevee
ld a, $9 ld a, $10
jr .done jr .done
.Eevee .Eevee
ld a, $10 ld a, $9
jr .done jr .done
.done .done
ld [wTrainerNo], a ld [wTrainerNo], a

View file

@ -143,11 +143,11 @@ Route22Script1:
StarterMons_50faf: StarterMons_50faf:
; starter the rival picked, rival trainer number ; starter the rival picked, rival trainer number
db STARTER1, 6 db STARTER1, 8
db STARTER2, 7 db STARTER2, 6
db STARTER3, 8 db STARTER3, 7
db STARTER4, 9 db STARTER4, 10
db STARTER5, 10 db STARTER5, 9
Route22Script2: Route22Script2:
ld a, [wIsInBattle] ld a, [wIsInBattle]
@ -305,8 +305,8 @@ StarterMons_510d9:
db STARTER2, 16 db STARTER2, 16
db STARTER3, 17 db STARTER3, 17
db STARTER1, 18 db STARTER1, 18
db STARTER4, 19 db STARTER4, 20
db STARTER5, 20 db STARTER5, 19
Route22Script5: Route22Script5:
ld a, [wIsInBattle] ld a, [wIsInBattle]

View file

@ -101,7 +101,7 @@ SSAnne2Script1:
; select which team to use during the encounter ; select which team to use during the encounter
ld a, [wRivalStarter] ld a, [wRivalStarter]
cp STARTER1 cp STARTER2
jr nz, .NotSquirtle jr nz, .NotSquirtle
ld a, $1 ld a, $1
jr .done jr .done
@ -111,17 +111,17 @@ SSAnne2Script1:
ld a, $2 ld a, $2
jr .done jr .done
.Charmander .Charmander
cp STARTER2 ; changes start here cp STARTER1 ; changes start here
ld a, $3 ld a, $3
jr nz, .Pikachu jr nz, .Pikachu
jr .done jr .done
.Pikachu ; .Pikachu ;
cp STARTER4 cp STARTER4
jr nz, .Eevee jr nz, .Eevee
ld a, $4 ld a, $5
jr .done jr .done
.Eevee .Eevee
ld a, $5 ld a, $4
jr .done jr .done
.done .done
ld [wTrainerNo], a ld [wTrainerNo], a

View file

@ -186,7 +186,7 @@ SilphCo7Script3:
ld a, OPP_RIVAL2 ld a, OPP_RIVAL2
ld [wCurOpponent], a ld [wCurOpponent], a
ld a, [wRivalStarter] ld a, [wRivalStarter]
cp STARTER1 cp STARTER2
jr nz, .NotSquirtle jr nz, .NotSquirtle
ld a, $11 ld a, $11
jr .asm_51cc0 jr .asm_51cc0
@ -196,17 +196,17 @@ SilphCo7Script3:
ld a, $12 ld a, $12
jr .asm_51cc0 jr .asm_51cc0
.Charmander .Charmander
cp STARTER2 ; changes start here cp STARTER1 ; changes start here
ld a, $13 ld a, $13
jr nz, .Pikachu jr nz, .Pikachu
jr .asm_51cc0 jr .asm_51cc0
.Pikachu ; .Pikachu ;
cp STARTER4 cp STARTER4
jr nz, .Eevee jr nz, .Eevee
ld a, $14 ld a, $15
jr .asm_51cc0 jr .asm_51cc0
.Eevee .Eevee
ld a, $15 ld a, $14
jr .asm_51cc0 jr .asm_51cc0
.asm_51cc0 .asm_51cc0
ld [wTrainerNo], a ld [wTrainerNo], a