Charmander & Rod House move

This adds Damien, the Charmander trainer, with text changed to be more accurate to his character.

I've also moved the Pewter Rod House nearby, as it makes more sense for it to be in the Water-type area. However, it seems to load oddly.

I have also integrated the Pikachu/Eevee Mode more, with architecture that it can make it more easily modified. This'll come into play for the Squirtle event.

I have also erased further misinformation the game gives about burns, and changed the Viridian Pre-Gym accordingly, to talk about confusion, which lacks a Trainer Tips sign.
This commit is contained in:
Llinos Evans 2023-06-28 16:31:14 +01:00
parent c716be39da
commit a3c81c549c
18 changed files with 187 additions and 26 deletions

View file

@ -312,7 +312,7 @@ DaycareMelanie:
and a
jr nz, .refused ; imagine refusing a bulbasaur tbh
lb bc, BULBASAUR, 5 ; load the bulbasaur
lb bc, BULBASAUR, 10 ; load the bulbasaur
call GivePokemon ; attempt to give the bulbasaur
jr nc, .fullParty ; if it's fucked just go here
ld a, HS_DAYCARE_BULBASAUR ; hide the bulbasaur

View file

@ -885,6 +885,7 @@ OaksLabText4:
; $6 = Eevee
OaksLabTextPikachu:
text_asm
call PikachuEeveeMode
ld a, STARTER5
ld [wRivalStarterTemp], a
ld a, $8
@ -895,6 +896,7 @@ OaksLabTextPikachu:
OaksLabTextEevee:
text_asm
call PikachuEeveeMode
ld a, STARTER4
ld [wRivalStarterTemp], a
ld a, $7
@ -1345,3 +1347,22 @@ OaksLabText10:
OaksLabText_1d405:
text_far _OaksLabText_1d405
text_end
; This is used to display Damien and Officer Jenny for Charmander and Squirtle, respectively.
; It was set up in this way to easily add new things for the mode.
; By default, all Pikachu/Eevee Mode things are hidden - more efficient.
PikachuEeveeMode:
ld hl, PikachuEeveeShows
.loop
ld a, [hli]
cp -1
ret z
push hl
ld [wMissableObjectIndex], a
predef ShowObject
pop hl
jr .loop
PikachuEeveeShows:
db HS_DAMIEN ; Charmander guy
db -1 ; end

View file

@ -85,6 +85,7 @@ Route24_TextPointers:
dw Route24Text6
dw Route24Text7
dw PickUpItemText
dw Route24Damian
Route24TrainerHeaders:
def_trainers 2
@ -278,3 +279,72 @@ Route24EndBattleText6:
Route24AfterBattleText6:
text_far _Route24AfterBattleText6
text_end
Route24Damian:
text_asm
CheckEvent EVENT_54F
jr nz, .asm_515d5
ld hl, Route24Text_515de
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
jr nz, .asm_515d0
ld a, CHARMANDER
ld [wd11e], a
ld [wcf91], a
call GetMonName
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
lb bc, CHARMANDER, 10
call GivePokemon
jp nc, .fullParty
ld a, [wAddedToParty]
and a
call z, WaitForTextScrollButtonPress
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, Route24Text_515e3
call PrintText
SetEvent EVENT_54F
jp TextScriptEnd
.asm_515d5
ld hl, Route24Text_515ee
jr .asm_515d8
.fullParty
ld hl, DamienFullParty
call PrintText
ld a, [wSimulatedJoypadStatesEnd] ; ensuring that the text doesn't autoskip.
and a ; yep, here too.
call z, WaitForTextScrollButtonPress ; and here.
call EnableAutoTextBoxDrawing ; and here.
; falls through to the next quote.
.asm_515d0
ld hl, Route24Text_515e9
jr .asm_515d8
.asm_515d8
call PrintText
jp TextScriptEnd
Route24Text_515de:
text_far _Route24DamienText1
text_end
Route24Text_515e3:
text_far _Route24DamienText2
text_waitbutton
text_end
Route24Text_515e9:
text_far _Route24DamienText3
text_end
Route24Text_515ee:
text_far _Route24DamienText4
text_end
DamienFullParty:
text_far _DamienFullParty
text_end