mirror of
https://github.com/thornAvery/kep-hack.git
synced 2025-09-17 02:40:50 +12:00
Improvements to Chief!
- Now has a rematch team, just with boosted levels - Has unique dialogue if you never picked up the Master Ball before fighting him, including after winning - Has new dialogue on subsequent matches We're nearly done.
This commit is contained in:
parent
d20207f012
commit
4c0dfdfedd
|
@ -819,6 +819,7 @@ DEF INDIGO_PLATEAU_EVENTS_END EQU const_value - 1
|
||||||
const_skip 4
|
const_skip 4
|
||||||
const EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
|
const EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
|
||||||
const EVENT_BEAT_CHIEF ; moved out of the below union to prevent bugs
|
const EVENT_BEAT_CHIEF ; moved out of the below union to prevent bugs
|
||||||
|
const EVENT_MEWTWO_UNLOCKED
|
||||||
|
|
||||||
; Silph Gauntlet events
|
; Silph Gauntlet events
|
||||||
const_next $930
|
const_next $930
|
||||||
|
|
|
@ -563,6 +563,7 @@ BlackbeltData:
|
||||||
ChiefData:
|
ChiefData:
|
||||||
; Silph Gauntlet 7F
|
; Silph Gauntlet 7F
|
||||||
db $FF, 66, ELECTRODE, 65, LAPRAS, 66, SCIZOR, 65, GENGAR, 68, PORYGONZ, 70, OMEGADGE, 0
|
db $FF, 66, ELECTRODE, 65, LAPRAS, 66, SCIZOR, 65, GENGAR, 68, PORYGONZ, 70, OMEGADGE, 0
|
||||||
|
db $FF, 73, ELECTRODE, 72, LAPRAS, 73, SCIZOR, 72, GENGAR, 75, PORYGONZ, 78, OMEGADGE, 0
|
||||||
; Lapras and Gengar are used here since Lapras is given by a Silph worker, and Gengar represents the Silph Scope.
|
; Lapras and Gengar are used here since Lapras is given by a Silph worker, and Gengar represents the Silph Scope.
|
||||||
|
|
||||||
; Poison- and Electric-type Pokemon
|
; Poison- and Electric-type Pokemon
|
||||||
|
|
|
@ -1362,6 +1362,27 @@ SpecialTrainerMoves:
|
||||||
db 6, 2, THUNDER_WAVE
|
db 6, 2, THUNDER_WAVE
|
||||||
db 6, 4, ICE_BEAM
|
db 6, 4, ICE_BEAM
|
||||||
db 0
|
db 0
|
||||||
|
|
||||||
|
db CHIEF, 2
|
||||||
|
db 1, 1, THUNDERBOLT
|
||||||
|
db 1, 2, THUNDER_WAVE
|
||||||
|
db 1, 3, HEADBUTT
|
||||||
|
db 2, 1, BLIZZARD
|
||||||
|
db 2, 2, THUNDERBOLT
|
||||||
|
db 2, 3, SING
|
||||||
|
db 2, 4, HYPER_BEAM
|
||||||
|
db 3, 1, IRON_HEAD
|
||||||
|
db 3, 3, HYPER_BEAM
|
||||||
|
db 4, 1, EXPLOSION
|
||||||
|
db 4, 2, THUNDERBOLT
|
||||||
|
db 4, 4, ICE_PUNCH
|
||||||
|
db 5, 1, THUNDERBOLT
|
||||||
|
db 5, 2, ICE_BEAM
|
||||||
|
db 5, 3, RECOVER
|
||||||
|
db 6, 1, THUNDERBOLT
|
||||||
|
db 6, 2, THUNDER_WAVE
|
||||||
|
db 6, 4, ICE_BEAM
|
||||||
|
db 0
|
||||||
|
|
||||||
db JESSIE_JAMES, 5 ; J&J postgame
|
db JESSIE_JAMES, 5 ; J&J postgame
|
||||||
db 1, 1, BUBBLEBEAM
|
db 1, 1, BUBBLEBEAM
|
||||||
|
|
|
@ -141,7 +141,6 @@ ROMX $1D
|
||||||
"Itemfinder 1"
|
"Itemfinder 1"
|
||||||
"Maps 20"
|
"Maps 20"
|
||||||
"Maps 21"
|
"Maps 21"
|
||||||
"Itemfinder 2"
|
|
||||||
ROMX $1E
|
ROMX $1E
|
||||||
"bank1E"
|
"bank1E"
|
||||||
ROMX $1F
|
ROMX $1F
|
||||||
|
@ -151,6 +150,7 @@ ROMX $1F
|
||||||
"Sound Effects 3"
|
"Sound Effects 3"
|
||||||
; "Audio Engine 3"
|
; "Audio Engine 3"
|
||||||
; "Music 3"
|
; "Music 3"
|
||||||
|
"Itemfinder 2"
|
||||||
ROMX $20
|
ROMX $20
|
||||||
"Text 1"
|
"Text 1"
|
||||||
ROMX $21
|
ROMX $21
|
||||||
|
|
|
@ -180,7 +180,7 @@ ResetLegendaryPokemon:
|
||||||
call ShowThis
|
call ShowThis
|
||||||
.skipMew
|
.skipMew
|
||||||
CheckEvent EVENT_POST_GAME_ATTAINED
|
CheckEvent EVENT_POST_GAME_ATTAINED
|
||||||
jp z, .skipGalarianBirdsAndMewtwo ; If you haven't cleared the game yet, you've not met the Galarian Birds. So we may as well skip processing all this.
|
jp z, .skipGalarianBirdsAndMewtwo
|
||||||
ld a, DEX_ARTICUNO_G
|
ld a, DEX_ARTICUNO_G
|
||||||
call HoFIsPokemonBitSet
|
call HoFIsPokemonBitSet
|
||||||
jr nz, .skipArticunoG
|
jr nz, .skipArticunoG
|
||||||
|
@ -257,7 +257,6 @@ ObjectsToHide:
|
||||||
db HS_BILLS_NIDORINO ; Bill's Garden access
|
db HS_BILLS_NIDORINO ; Bill's Garden access
|
||||||
db HS_MANSION_GUARD ; Pokemon Mansion basement access
|
db HS_MANSION_GUARD ; Pokemon Mansion basement access
|
||||||
db HS_MT_MOON_CRATER_GUARD ; Mt. Moon Crater access
|
db HS_MT_MOON_CRATER_GUARD ; Mt. Moon Crater access
|
||||||
db HS_CERULEAN_CAVE_GUY ; Cerulean Cave access
|
|
||||||
db -1 ; end
|
db -1 ; end
|
||||||
|
|
||||||
; Farcalling this caused weird issues so I'm just using a clone
|
; Farcalling this caused weird issues so I'm just using a clone
|
||||||
|
|
|
@ -95,6 +95,7 @@ ChiefScript4:
|
||||||
ld a, HS_CERULEAN_CAVE_GUY
|
ld a, HS_CERULEAN_CAVE_GUY
|
||||||
ld [wMissableObjectIndex], a
|
ld [wMissableObjectIndex], a
|
||||||
predef HideObject
|
predef HideObject
|
||||||
|
SetEvent EVENT_MEWTWO_UNLOCKED
|
||||||
ResetEventRange SILPH_GAUNTLET_EVENTS_START, SILPH_GAUNTLET_EVENTS_END, 1
|
ResetEventRange SILPH_GAUNTLET_EVENTS_START, SILPH_GAUNTLET_EVENTS_END, 1
|
||||||
|
|
||||||
ld a, $0
|
ld a, $0
|
||||||
|
@ -117,8 +118,10 @@ SilphGauntlet7F_TextPointers:
|
||||||
|
|
||||||
ChiefText1:
|
ChiefText1:
|
||||||
text_asm
|
text_asm
|
||||||
|
CheckEvent EVENT_MEWTWO_UNLOCKED
|
||||||
|
jr nz, .chiefSecondFight
|
||||||
CheckEvent EVENT_BEAT_CHIEF ; Check if Chief was beaten
|
CheckEvent EVENT_BEAT_CHIEF ; Check if Chief was beaten
|
||||||
jr nz, .chiefBeaten ; If Chief has been beaten, skip the trainer loading
|
jr nz, .chiefBeaten1 ; If Chief has been beaten, skip the trainer loading
|
||||||
; standard processing
|
; standard processing
|
||||||
ld hl, ChiefMonologue
|
ld hl, ChiefMonologue
|
||||||
call PrintText
|
call PrintText
|
||||||
|
@ -127,6 +130,9 @@ ChiefText1:
|
||||||
call z, WaitForTextScrollButtonPress ; and here.
|
call z, WaitForTextScrollButtonPress ; and here.
|
||||||
call EnableAutoTextBoxDrawing ; and here.
|
call EnableAutoTextBoxDrawing ; and here.
|
||||||
|
|
||||||
|
CheckEvent EVENT_GOT_MASTER_BALL ; Check if Master Ball was collected.
|
||||||
|
ld hl, ChiefMonologueMasterBallNotCollected ; If no, load this text...
|
||||||
|
jr z, .masterBallSkip ; ...then skip.
|
||||||
CheckEvent EVENT_USED_MASTER_BALL ; Check if the Master Ball has been used.
|
CheckEvent EVENT_USED_MASTER_BALL ; Check if the Master Ball has been used.
|
||||||
ld hl, ChiefMonologueMasterBallNotUsed ; Load not used by default.
|
ld hl, ChiefMonologueMasterBallNotUsed ; Load not used by default.
|
||||||
jr z, .masterBallSkip ; In which case, we can skip.
|
jr z, .masterBallSkip ; In which case, we can skip.
|
||||||
|
@ -153,12 +159,48 @@ ChiefText1:
|
||||||
ld de, ChiefVictoryText
|
ld de, ChiefVictoryText
|
||||||
call SaveEndBattleTextPointers
|
call SaveEndBattleTextPointers
|
||||||
jr .done
|
jr .done
|
||||||
.chiefBeaten
|
.chiefBeaten1
|
||||||
ld hl, ChiefAfterBattleText
|
CheckEvent EVENT_GOT_MASTER_BALL ; Check if Master Ball was collected.
|
||||||
|
ld hl, ChiefAltAfterBattleText ; If no, load this text...
|
||||||
|
jr z, .noMBallskip ; ...then skip.
|
||||||
|
ld hl, ChiefAfterBattleText ; otherwise, load this.
|
||||||
|
.noMBallskip
|
||||||
call PrintText
|
call PrintText
|
||||||
; fallthrough
|
; fallthrough
|
||||||
.done
|
.done
|
||||||
jp TextScriptEnd
|
jp TextScriptEnd
|
||||||
|
.chiefSecondFight
|
||||||
|
CheckEvent EVENT_BEAT_CHIEF ; Check if Chief was beaten
|
||||||
|
jr nz, .chiefBeaten2 ; If Chief has been beaten, skip the trainer loading
|
||||||
|
ld hl, ChiefMonologueRematch
|
||||||
|
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.
|
||||||
|
ld c, BANK(Music_MeetEvilTrainer)
|
||||||
|
ld a, MUSIC_MEET_EVIL_TRAINER
|
||||||
|
call PlayMusic
|
||||||
|
|
||||||
|
call Delay3
|
||||||
|
ld hl, wd72d
|
||||||
|
set 6, [hl]
|
||||||
|
set 7, [hl]
|
||||||
|
ld a, OPP_CHIEF
|
||||||
|
ld [wCurOpponent], a
|
||||||
|
ld a, 2
|
||||||
|
ld [wTrainerNo], a
|
||||||
|
ld [wIsTrainerBattle], a
|
||||||
|
ld a, $1
|
||||||
|
ld [wSilphGauntlet7FCurScript], a
|
||||||
|
ld hl, ChiefDefeatedText2
|
||||||
|
ld de, ChiefVictoryText2
|
||||||
|
call SaveEndBattleTextPointers
|
||||||
|
jr .done
|
||||||
|
.chiefBeaten2
|
||||||
|
ld hl, ChiefAfterBattleText2
|
||||||
|
call PrintText
|
||||||
|
jr .done
|
||||||
|
|
||||||
ChiefMonologue:
|
ChiefMonologue:
|
||||||
text_far _ChiefMonologue
|
text_far _ChiefMonologue
|
||||||
|
@ -171,6 +213,10 @@ ChiefMonologueMasterBallUsed:
|
||||||
ChiefMonologueMasterBallNotUsed:
|
ChiefMonologueMasterBallNotUsed:
|
||||||
text_far _ChiefMonologueMasterBallNotUsed
|
text_far _ChiefMonologueMasterBallNotUsed
|
||||||
text_end
|
text_end
|
||||||
|
|
||||||
|
ChiefMonologueMasterBallNotCollected:
|
||||||
|
text_far _ChiefMonologueMasterBallNotCollected
|
||||||
|
text_end
|
||||||
|
|
||||||
ChiefDefeatedText:
|
ChiefDefeatedText:
|
||||||
text_far _ChiefDefeatedText
|
text_far _ChiefDefeatedText
|
||||||
|
@ -183,6 +229,26 @@ ChiefVictoryText:
|
||||||
ChiefAfterBattleText:
|
ChiefAfterBattleText:
|
||||||
text_far _ChiefAfterBattleText
|
text_far _ChiefAfterBattleText
|
||||||
text_end
|
text_end
|
||||||
|
|
||||||
|
ChiefAltAfterBattleText:
|
||||||
|
text_far _ChiefAltAfterBattleText
|
||||||
|
text_end
|
||||||
|
|
||||||
|
ChiefMonologueRematch:
|
||||||
|
text_far _ChiefMonologueRematch
|
||||||
|
text_end
|
||||||
|
|
||||||
|
ChiefDefeatedText2:
|
||||||
|
text_far _ChiefDefeatedText2
|
||||||
|
text_end
|
||||||
|
|
||||||
|
ChiefVictoryText2:
|
||||||
|
text_far _ChiefVictoryText2
|
||||||
|
text_end
|
||||||
|
|
||||||
|
ChiefAfterBattleText2:
|
||||||
|
text_far _ChiefAfterBattleText2
|
||||||
|
text_end
|
||||||
|
|
||||||
ChiefPC:
|
ChiefPC:
|
||||||
text_far _ChiefPCText
|
text_far _ChiefPCText
|
||||||
|
|
|
@ -148,7 +148,7 @@ _SilphCo10Text_6237b::
|
||||||
|
|
||||||
_OmegaBattleText::
|
_OmegaBattleText::
|
||||||
text "Bzzt! Clank!"
|
text "Bzzt! Clank!"
|
||||||
text_end
|
done
|
||||||
|
|
||||||
; Fun fact: For some reason, this text is stored in 10F. Seems to be a beta element - they ARE encountered in 11F.
|
; Fun fact: For some reason, this text is stored in 10F. Seems to be a beta element - they ARE encountered in 11F.
|
||||||
_SilphCoJessieJamesText1::
|
_SilphCoJessieJamesText1::
|
||||||
|
|
|
@ -8,9 +8,13 @@ _ChiefMonologue::
|
||||||
|
|
||||||
para "However, I can't"
|
para "However, I can't"
|
||||||
line "let you leave"
|
line "let you leave"
|
||||||
cont "this place. You"
|
cont "this place quite"
|
||||||
cont "are still looking"
|
cont "yet..."
|
||||||
cont "for the ultimate"
|
prompt
|
||||||
|
|
||||||
|
_ChiefMonologueMasterBallNotUsed::
|
||||||
|
text "You're looking for"
|
||||||
|
line "for the ultimate"
|
||||||
cont "#MON, aren't"
|
cont "#MON, aren't"
|
||||||
cont "you?"
|
cont "you?"
|
||||||
|
|
||||||
|
@ -22,10 +26,8 @@ _ChiefMonologue::
|
||||||
cont "GIOVANNI gone,"
|
cont "GIOVANNI gone,"
|
||||||
cont "our company is"
|
cont "our company is"
|
||||||
cont "going under!"
|
cont "going under!"
|
||||||
prompt
|
|
||||||
|
|
||||||
_ChiefMonologueMasterBallNotUsed::
|
para "Now there's only"
|
||||||
text "Now there's only"
|
|
||||||
line "one way to catch"
|
line "one way to catch"
|
||||||
cont "MEWTWO, and it's"
|
cont "MEWTWO, and it's"
|
||||||
cont "in your hands!"
|
cont "in your hands!"
|
||||||
|
@ -33,10 +35,24 @@ _ChiefMonologueMasterBallNotUsed::
|
||||||
para "<PLAYER>!"
|
para "<PLAYER>!"
|
||||||
|
|
||||||
para "Give me that BALL!"
|
para "Give me that BALL!"
|
||||||
prompt
|
done
|
||||||
|
|
||||||
_ChiefMonologueMasterBallUsed::
|
_ChiefMonologueMasterBallUsed::
|
||||||
text "...what? You used"
|
text "You're looking for"
|
||||||
|
line "for the ultimate"
|
||||||
|
cont "#MON, aren't"
|
||||||
|
cont "you?"
|
||||||
|
|
||||||
|
para "That MASTER"
|
||||||
|
line "BALL... I should"
|
||||||
|
cont "never have given"
|
||||||
|
cont "it to you! With"
|
||||||
|
cont "MEWTWO loose and"
|
||||||
|
cont "GIOVANNI gone,"
|
||||||
|
cont "our company is"
|
||||||
|
cont "going under!"
|
||||||
|
|
||||||
|
para "...what? You used"
|
||||||
line "the MASTER BALL?!"
|
line "the MASTER BALL?!"
|
||||||
|
|
||||||
para "You stupid child!"
|
para "You stupid child!"
|
||||||
|
@ -50,7 +66,31 @@ _ChiefMonologueMasterBallUsed::
|
||||||
|
|
||||||
para "You are in for"
|
para "You are in for"
|
||||||
line "a world of hurt!" ; Like Giovanni, but with a slightly more pompous tone in using "hurt".
|
line "a world of hurt!" ; Like Giovanni, but with a slightly more pompous tone in using "hurt".
|
||||||
prompt
|
done
|
||||||
|
|
||||||
|
_ChiefMonologueMasterBallNotCollected::
|
||||||
|
text "As I watched you"
|
||||||
|
line "battle GIOVANNI,"
|
||||||
|
cont "I know how you"
|
||||||
|
cont "and your #MON"
|
||||||
|
cont "fight."
|
||||||
|
|
||||||
|
para "I must say, your"
|
||||||
|
line "strength seems..."
|
||||||
|
cont "promising. That's"
|
||||||
|
cont "why I invited you"
|
||||||
|
cont "here, after all."
|
||||||
|
|
||||||
|
para "Before my next big"
|
||||||
|
line "plan, I must see"
|
||||||
|
cont "how well I stand"
|
||||||
|
cont "against the new"
|
||||||
|
cont "champion!"
|
||||||
|
|
||||||
|
para "<PLAYER>!"
|
||||||
|
|
||||||
|
para "Give it your all!"
|
||||||
|
done
|
||||||
|
|
||||||
_ChiefDefeatedText::
|
_ChiefDefeatedText::
|
||||||
text "No! I..."
|
text "No! I..."
|
||||||
|
@ -92,6 +132,27 @@ _ChiefAfterBattleText::
|
||||||
cont "world."
|
cont "world."
|
||||||
|
|
||||||
done
|
done
|
||||||
|
|
||||||
|
_ChiefAltAfterBattleText::
|
||||||
|
text "CHIEF: Just as"
|
||||||
|
line "I thought..."
|
||||||
|
cont "No product I"
|
||||||
|
cont "have is capable"
|
||||||
|
cont "of trouncing you."
|
||||||
|
|
||||||
|
para "Money means I can"
|
||||||
|
line "be as powerful as"
|
||||||
|
cont "I want, but what"
|
||||||
|
cont "I do with that"
|
||||||
|
cont "power...is very"
|
||||||
|
cont "important."
|
||||||
|
|
||||||
|
para "I still have much"
|
||||||
|
line "yet to learn..."
|
||||||
|
|
||||||
|
para "Go."
|
||||||
|
|
||||||
|
done
|
||||||
|
|
||||||
_ChiefPCText::
|
_ChiefPCText::
|
||||||
text "It's a PC with"
|
text "It's a PC with"
|
||||||
|
@ -119,3 +180,46 @@ _ChiefPainting2::
|
||||||
line "of GAWARHED, an"
|
line "of GAWARHED, an"
|
||||||
cont "extinct #MON!"
|
cont "extinct #MON!"
|
||||||
done
|
done
|
||||||
|
|
||||||
|
_ChiefMonologueRematch::
|
||||||
|
text "CHIEF: What?"
|
||||||
|
line "you're back?"
|
||||||
|
|
||||||
|
para "Hmm...you're"
|
||||||
|
line "looking for a"
|
||||||
|
cont "rematch, is that"
|
||||||
|
cont "it?"
|
||||||
|
|
||||||
|
para "Alright, if you"
|
||||||
|
line "insist. OMEGADGE"
|
||||||
|
cont "could always use"
|
||||||
|
cont "some more battle"
|
||||||
|
cont "data..."
|
||||||
|
|
||||||
|
para "So, no holding"
|
||||||
|
line "back!"
|
||||||
|
done
|
||||||
|
|
||||||
|
_ChiefDefeatedText2::
|
||||||
|
text "Impressive"
|
||||||
|
line "work..."
|
||||||
|
prompt
|
||||||
|
|
||||||
|
_ChiefVictoryText2::
|
||||||
|
text "CHIEF: I"
|
||||||
|
line "expected better."
|
||||||
|
prompt
|
||||||
|
|
||||||
|
_ChiefAfterBattleText2::
|
||||||
|
text "CHIEF: It really"
|
||||||
|
line "is no wonder"
|
||||||
|
cont "how you've been"
|
||||||
|
cont "capable of"
|
||||||
|
cont "accomplishing so"
|
||||||
|
cont "much..."
|
||||||
|
|
||||||
|
para "You truly trust"
|
||||||
|
line "and care for"
|
||||||
|
cont "your #MON."
|
||||||
|
|
||||||
|
done
|
||||||
|
|
Loading…
Reference in a new issue