diff --git a/constants/event_constants.asm b/constants/event_constants.asm index cb66e128..d4114030 100644 --- a/constants/event_constants.asm +++ b/constants/event_constants.asm @@ -818,19 +818,23 @@ DEF INDIGO_PLATEAU_EVENTS_START EQU const_value const_skip const EVENT_BEAT_LORELEIS_ROOM_TRAINER_0 - const_skip 4 + const EVENT_BEAT_LORELEIS_ROOM_TRAINER_1 + const_skip 3 const EVENT_AUTOWALKED_INTO_LORELEIS_ROOM const_skip 2 const EVENT_BEAT_BRUNOS_ROOM_TRAINER_0 - const_skip 4 + const EVENT_BEAT_BRUNOS_ROOM_TRAINER_1 + const_skip 3 const EVENT_AUTOWALKED_INTO_BRUNOS_ROOM const_skip 2 const EVENT_BEAT_AGATHAS_ROOM_TRAINER_0 - const_skip 4 + const EVENT_BEAT_AGATHAS_ROOM_TRAINER_1 + const_skip 3 const EVENT_AUTOWALKED_INTO_AGATHAS_ROOM const_skip 2 const EVENT_BEAT_LANCES_ROOM_TRAINER_0 - const_skip 4 + const EVENT_BEAT_LANCES_ROOM_TRAINER_1 + const_skip 3 const EVENT_BEAT_LANCE const EVENT_LANCES_ROOM_LOCK_DOOR const_skip diff --git a/data/trainers/rival_parties.asm b/data/trainers/rival_parties.asm index d1d4d14a..8cc5462b 100644 --- a/data/trainers/rival_parties.asm +++ b/data/trainers/rival_parties.asm @@ -47,14 +47,14 @@ Green3Data: db $FF, 61, PIDGEOT, 59, ALAKAZAM, 61, RHYPERIOR, 61, ARCANINE, 63, EXEGGUTOR, 65, TOTARTLE, 0 db $FF, 61, PIDGEOT, 59, ALAKAZAM, 61, RHYPERIOR, 61, GYARADOS, 63, ARCANINE, 65, VENUSAUR, 0 db $FF, 61, PIDGEOT, 59, ALAKAZAM, 61, RHYPERIOR, 61, EXEGGUTOR, 63, GYARADOS, 65, CHARIZARD, 0 - db $FF, 61, SANDSLASH, 59, ALAKAZAM, 61, EXEGGUTOR, 61, NINETALES, 63, MAGNEZONE, 65, UMBREON, 0 ; could base on trace but eeeeeeeehhhhhhh... + db $FF, 61, SANDSLASH, 59, ALAKAZAM, 61, EXEGGUTOR, 61, NINETALES, 63, MAGNEZONE, 65, UMBREON, 0 db $FF, 61, SANDSLASH, 59, ALAKAZAM, 61, EXEGGUTOR, 61, NINETALES, 63, CLOYSTER, 65, GOROCHU, 0 -; post-game rematch teams (currently unused - based on FRLG team - ; db $FF, 81, PURAKKUSU, 79, ALAKAZAM, 81, GYAOON, 81, ARCANINE, 83, EXEGGUTOR, 85, TOTARTLE, 0 - ; db $FF, 81, PURAKKUSU, 79, ALAKAZAM, 81, GYAOON, 81, GYARADOS, 83, ARCANINE, 85, VENUSAUR, 0 - ; db $FF, 81, PURAKKUSU, 79, ALAKAZAM, 81, GYAOON, 81, EXEGGUTOR, 83, GYARADOS, 85, CHARIZARD, 0 - ; db $FF, 81, GUARDIA, 79, ALAKAZAM, 81, TANGROWTH, 81, NINETALES, 83, MAGNEZONE, 85, UMBREON, 0 - ; db $FF, 81, GUARDIA, 79, ALAKAZAM, 81, TANGROWTH, 81, NINETALES, 83, CLOYSTER, 85, GOROCHU, 0 +; post-game rematch teams, based on FRLG team + db $FF, 81, PURAKKUSU, 79, ALAKAZAM, 81, GYAOON, 81, ARCANINE, 83, EXEGGUTOR, 85, TOTARTLE, 0 + db $FF, 81, PURAKKUSU, 79, ALAKAZAM, 81, GYAOON, 81, GYARADOS, 83, ARCANINE, 85, VENUSAUR, 0 + db $FF, 81, PURAKKUSU, 79, ALAKAZAM, 81, GYAOON, 81, EXEGGUTOR, 83, GYARADOS, 85, CHARIZARD, 0 + db $FF, 81, GUARDIA, 79, ALAKAZAM, 81, TANGROWTH, 81, NINETALES, 83, MAGNEZONE, 85, UMBREON, 0 + db $FF, 81, GUARDIA, 79, ALAKAZAM, 81, TANGROWTH, 81, NINETALES, 83, CLOYSTER, 85, GOROCHU, 0 ProfOakData: db $FF, 66, TAUROS, 67, GYARADOS, 68, ARCANINE, 68, EXEGGUTOR, 70, NIDOKING, 70, TOTARTLE, 0 diff --git a/data/trainers/scaled_parties.asm b/data/trainers/scaled_parties.asm index b411b1ed..ddfa44c0 100644 --- a/data/trainers/scaled_parties.asm +++ b/data/trainers/scaled_parties.asm @@ -87,17 +87,17 @@ GiovanniData: ; is not scaled as he is always fought last LoreleiData: db $FF, 54, DEWGONG, 53, CLOYSTER, 54, GLACEON, 55, NINETALES_A, 55, JYNX, 56, LAPRAS, 0 ; post-game rematch team (currently unused) - db $FF, 74, JYNX, 73, CLOYSTER, 74, NINETALES_A, 75, GLACEON, 75, LAPRAS, 76, ARTICUNO, 0 + db $FF, 74, JYNX, 73, DEWGONG, 73, CLOYSTER, 74, NINETALES_A, 75, GLACEON, 75, LAPRAS, 0 BrunoData: db $FF, 54, HITMONTOP, 55, STEELIX, 55, POLIWRATH, 56, SIRFETCHD, 56, PURAKKUSU, 58, MACHAMP, 0 ; post-game rematch team (currently unused) - db $FF, 74, POLIWRATH, 75, STEELIX, 75, SIRFETCHD, 76, PURAKKUSU, 76, MACHAMP, 78, ZAPDOS_G, 0 + db $FF, 74, POLIWRATH, 74, HITMONTOP, 75, STEELIX, 75, SIRFETCHD, 76, PURAKKUSU, 76, MACHAMP, 78, 0 AgathaData: db $FF, 57, ARBOK, 56, ANNIHILAPE, 56, CROBAT, 58, MAROWAK_A, 58, UMBREON, 60, GENGAR, 0 ; post-game rematch team (currently unused) - db $FF, 77, ANNIHILAPE, 76, CROBAT, 76, MAROWAK_A, 78, UMBREON, 78, GENGAR, 80, MOLTRES_G, 0 + db $FF, 77, ARBOK, 77, ANNIHILAPE, 76, CROBAT, 76, MAROWAK_A, 78, UMBREON, 78, GENGAR, 80, 0 LanceData: db $FF, 58, CROCKY, 57, KINGDRA, 57, AERODACTYL, 59, EXEGGUTOR_A, 59, CRYITHAN, 62, DRAGONITE, 0 diff --git a/scripts/AgathasRoom.asm b/scripts/AgathasRoom.asm index abe22a4f..edeca685 100644 --- a/scripts/AgathasRoom.asm +++ b/scripts/AgathasRoom.asm @@ -14,7 +14,7 @@ AgathaShowOrHideExitBlock: bit 5, [hl] res 5, [hl] ret z - CheckEvent EVENT_BEAT_AGATHAS_ROOM_TRAINER_0 + CheckEitherEventSet EVENT_BEAT_AGATHAS_ROOM_TRAINER_0, EVENT_BEAT_AGATHAS_ROOM_TRAINER_1 jr z, .blockExitToNextRoom ld a, $e jp .setExitBlock @@ -124,12 +124,24 @@ AgathasRoomTrainerHeaders: def_trainers AgathasRoomTrainerHeader0: trainer EVENT_BEAT_AGATHAS_ROOM_TRAINER_0, 0, AgathaBeforeBattleText, AgathaEndBattleText, AgathaAfterBattleText +AgathasRoomTrainerHeader1: + trainer EVENT_BEAT_AGATHAS_ROOM_TRAINER_1, 0, AgathaRematchText, AgathaRematchEndBattleText, AgathaRematchAfterBattleText db -1 ; end AgathaText1: text_asm ld hl, AgathasRoomTrainerHeader0 + CheckEvent EVENT_POST_GAME_ATTAINED + jr z, .skip + ld hl, AgathasRoomTrainerHeader1 +.skip call TalkToTrainer + CheckEvent EVENT_POST_GAME_ATTAINED + jr z, .skip2 + ld a, [wTrainerNo] + inc a + ld [wTrainerNo], a +.skip2 jp TextScriptEnd AgathaBeforeBattleText: @@ -147,3 +159,15 @@ AgathaAfterBattleText: AgathaDontRunAwayText: text_far _AgathaDontRunAwayText text_end + +AgathaRematchText: + text_far _AgathaRematchText + text_end + +AgathaRematchEndBattleText: + text_far _AgathaRematchEndBattleText + text_end + +AgathaRematchAfterBattleText: + text_far _AgathaRematchAfterBattleText + text_end diff --git a/scripts/BrunosRoom.asm b/scripts/BrunosRoom.asm index ca8f5418..56ee78b2 100644 --- a/scripts/BrunosRoom.asm +++ b/scripts/BrunosRoom.asm @@ -14,7 +14,7 @@ BrunoShowOrHideExitBlock: bit 5, [hl] res 5, [hl] ret z - CheckEvent EVENT_BEAT_BRUNOS_ROOM_TRAINER_0 + CheckEitherEventSet EVENT_BEAT_BRUNOS_ROOM_TRAINER_0, EVENT_BEAT_BRUNOS_ROOM_TRAINER_1 jr z, .blockExitToNextRoom ld a, $5 jp .setExitBlock @@ -121,12 +121,24 @@ BrunosRoomTrainerHeaders: def_trainers BrunosRoomTrainerHeader0: trainer EVENT_BEAT_BRUNOS_ROOM_TRAINER_0, 0, BrunoBeforeBattleText, BrunoEndBattleText, BrunoAfterBattleText +BrunosRoomTrainerHeader1: + trainer EVENT_BEAT_BRUNOS_ROOM_TRAINER_1, 0, BrunoRematchText, BrunoRematchEndBattleText, BrunoRematchAfterBattleText db -1 ; end BrunoText1: text_asm ld hl, BrunosRoomTrainerHeader0 + CheckEvent EVENT_POST_GAME_ATTAINED + jr z, .skip + ld hl, BrunosRoomTrainerHeader1 +.skip call TalkToTrainer + CheckEvent EVENT_POST_GAME_ATTAINED + jr z, .skip2 + ld a, [wTrainerNo] + inc a + ld [wTrainerNo], a +.skip2 jp TextScriptEnd BrunoBeforeBattleText: @@ -144,3 +156,15 @@ BrunoAfterBattleText: BrunoDontRunAwayText: text_far _BrunoDontRunAwayText text_end + +BrunoRematchText: + text_far _BrunoRematchText + text_end + +BrunoRematchEndBattleText: + text_far _BrunoRematchEndBattleText + text_end + +BrunoRematchAfterBattleText: + text_far _BrunoRematchAfterBattleText + text_end diff --git a/scripts/ChampionsRoom.asm b/scripts/ChampionsRoom.asm index 71b8861b..3cedbbb0 100644 --- a/scripts/ChampionsRoom.asm +++ b/scripts/ChampionsRoom.asm @@ -93,6 +93,18 @@ GaryScript2: jr .saveTrainerId .saveTrainerId ld [wTrainerNo], a + + CheckEvent EVENT_POST_GAME_ATTAINED + jr z, .skip + ld a, [wTrainerNo] + inc a + inc a + inc a + inc a + inc a + ; surely there is a better way + ld [wTrainerNo], a +.skip ld a, 1 ld [wIsTrainerBattle], a diff --git a/scripts/LancesRoom.asm b/scripts/LancesRoom.asm index 9c316416..020923ba 100644 --- a/scripts/LancesRoom.asm +++ b/scripts/LancesRoom.asm @@ -132,12 +132,24 @@ LancesRoomTrainerHeaders: def_trainers LancesRoomTrainerHeader0: trainer EVENT_BEAT_LANCES_ROOM_TRAINER_0, 0, LanceBeforeBattleText, LanceEndBattleText, LanceAfterBattleText +LancesRoomTrainerHeader1: + trainer EVENT_BEAT_LANCES_ROOM_TRAINER_1, 0, LanceRematchText, LanceRematchEndBattleText, LanceRematchAfterBattleText db -1 ; end LanceText1: text_asm ld hl, LancesRoomTrainerHeader0 + CheckEvent EVENT_POST_GAME_ATTAINED + jr z, .skip + ld hl, LancesRoomTrainerHeader1 +.skip call TalkToTrainer + CheckEvent EVENT_POST_GAME_ATTAINED + jr z, .skip2 + ld a, [wTrainerNo] + inc a + ld [wTrainerNo], a +.skip2 jp TextScriptEnd LanceBeforeBattleText: @@ -153,3 +165,17 @@ LanceAfterBattleText: text_asm SetEvent EVENT_BEAT_LANCE jp TextScriptEnd + +LanceRematchText: + text_far _LanceRematchText + text_end + +LanceRematchEndBattleText: + text_far _LanceRematchEndBattleText + text_end + +LanceRematchAfterBattleText: + text_far _LanceRematchAfterBattleText + text_asm + SetEvent EVENT_BEAT_LANCE + jp TextScriptEnd diff --git a/scripts/LoreleisRoom.asm b/scripts/LoreleisRoom.asm index 1f42fa2e..1cc3249a 100644 --- a/scripts/LoreleisRoom.asm +++ b/scripts/LoreleisRoom.asm @@ -16,7 +16,7 @@ LoreleiShowOrHideExitBlock: ret z ld hl, wBeatLorelei set 1, [hl] - CheckEvent EVENT_BEAT_LORELEIS_ROOM_TRAINER_0 + CheckEitherEventSet EVENT_BEAT_LORELEIS_ROOM_TRAINER_0, EVENT_BEAT_LORELEIS_ROOM_TRAINER_1 jr z, .blockExitToNextRoom ld a, $5 jr .setExitBlock @@ -123,12 +123,24 @@ LoreleisRoomTrainerHeaders: def_trainers LoreleisRoomTrainerHeader0: trainer EVENT_BEAT_LORELEIS_ROOM_TRAINER_0, 0, LoreleiBeforeBattleText, LoreleiEndBattleText, LoreleiAfterBattleText +LoreleisRoomTrainerHeader1: + trainer EVENT_BEAT_LORELEIS_ROOM_TRAINER_1, 0, LoreleiRematchText, LoreleiRematchEndBattleText, LoreleiRematchAfterBattleText db -1 ; end LoreleiText1: text_asm ld hl, LoreleisRoomTrainerHeader0 + CheckEvent EVENT_POST_GAME_ATTAINED + jr z, .skip + ld hl, LoreleisRoomTrainerHeader1 +.skip call TalkToTrainer + CheckEvent EVENT_POST_GAME_ATTAINED + jr z, .skip2 + ld a, [wTrainerNo] + inc a + ld [wTrainerNo], a +.skip2 jp TextScriptEnd LoreleiBeforeBattleText: @@ -146,3 +158,16 @@ LoreleiAfterBattleText: LoreleiDontRunAwayText: text_far _LoreleiDontRunAwayText text_end + +LoreleiRematchText: + text_far _LoreleiRematchText + text_end + +LoreleiRematchEndBattleText: + text_far _LoreleiRematchEndBattleText + text_end + +LoreleiRematchAfterBattleText: + text_far _LoreleiRematchAfterBattleText + text_end + diff --git a/text/AgathasRoom.asm b/text/AgathasRoom.asm index 9ef5059a..8177348b 100644 --- a/text/AgathasRoom.asm +++ b/text/AgathasRoom.asm @@ -42,3 +42,41 @@ _AgathaDontRunAwayText:: text "Someone's voice:" line "Don't run away!" done + +_AgathaRematchText:: + text "So you've come!" + + para "It's not in my" + line "character to" + cont "lose over and" + cont "over." + + para "Give this battle" + line "everything you" + cont "have!" + done + +_AgathaRematchEndBattleText:: + text "Not bad!" + prompt + +_AgathaRematchAfterBattleText:: + text "Small wonder that" + line "old-timer's taken" + cont "such an interest" + cont "in you." + + para "...OAK and I used" + line "to be good rivals" + cont "too, you know." + + para "Just like you and" + line "." + + para "What are you" + line "waiting for?" + + para "Off to the next" + line "room!" + + done diff --git a/text/BrunosRoom.asm b/text/BrunosRoom.asm index 9c493c4a..874ff723 100644 --- a/text/BrunosRoom.asm +++ b/text/BrunosRoom.asm @@ -35,3 +35,46 @@ _BrunoDontRunAwayText:: text "Someone's voice:" line "Don't run away!" done + +_BrunoRematchText:: + text "I could feel the" + line "intensity of your" + cont "battle against" + cont "LORELEI, even" + cont "from here!" + + para "Now it's time to" + line "show you the" + cont "power of my" + cont "#MON!" + + para "They've been" + line "training just" + cont "as hard as" + cont "yours, surely!" + + para "Hoo hah!" + + para "Hoo! HAH!!!" + done + +_BrunoRematchEndBattleText:: + text "I have" + line "regrets!" + prompt + +_BrunoRematchAfterBattleText:: + text "Ugh! No!" + + para "So my training is" + line "still lacking..." + + para "...Go." + + para "Do not trouble" + line "yourself on my" + cont "behalf." + + para "Continue to move" + line "forward!" + done diff --git a/text/ChampionsRoom.asm b/text/ChampionsRoom.asm index 575b7da4..86596504 100644 --- a/text/ChampionsRoom.asm +++ b/text/ChampionsRoom.asm @@ -1,7 +1,7 @@ _GaryChampionIntroText:: text ": Hey!" - para "I was looking" + para "I was looking" ; this just barely works for a refight line "forward to seeing" cont "you, !" @@ -144,3 +144,34 @@ _GaryText_7612a:: para "!" line "Come with me!" done + +; this stuff is unused for now the champion room is kinda complicated +; may not use at all as this whole title defence thing was only rly started in gen 7 +_BlueRematchText:: + text "uhhh" + + done + +_BlueRematchEndBattleText:: + text "Aw man," + line "what was I" + cont "doing?" + prompt + +_BlueRematchAfterBattleText:: + text "Tch..." + + para "As long as I can" + line "battle strong" + cont "TRAINERs, I don't" + cont "care what happens." + + para "You get what I" + line "mean, right?" + cont "You'd better come" + cont "back again!" + + para "For now, though..." + line "Go through." + + done diff --git a/text/LancesRoom.asm b/text/LancesRoom.asm index a5ce1159..079d68b4 100644 --- a/text/LancesRoom.asm +++ b/text/LancesRoom.asm @@ -62,3 +62,48 @@ _LanceAfterBattleText:: line "#MON LEAGUE" cont "champion!@" text_end + +_LanceRematchText:: + text "I'm glad you've" + line "come." + + para "Thanks to you," + line "the #MON" + cont "LEAGUE's rep has" + cont "really taken off!" + + para "I'd feel ashamed" + line "to call myself" + cont "LANCE the dragon" + cont "trainer if I" + cont "didn't challenge" + cont "you to a battle!" + done + +_LanceRematchEndBattleText:: + text "How could" + line "I be pushed to" + cont "such a point?" + prompt + +_LanceRematchAfterBattleText:: + text "There's no way my" + line "dragon brigade is" + cont "weak..." + + para "Hm? I'm saying" + line "your strength is" + cont "truly incredible!" + + para "Now then..." + line "." + + para "You know what's" + line "next, don't you?" + + para "That's right!" + line " awaits" + cont "you on the stage" + cont "of your greatest" + cont "battle yet!@" + text_end diff --git a/text/LoreleisRoom.asm b/text/LoreleisRoom.asm index fdbb55b4..4ee81c68 100644 --- a/text/LoreleisRoom.asm +++ b/text/LoreleisRoom.asm @@ -1,5 +1,5 @@ _LoreleiBeforeBattleText:: - text "Welcome to" + text "Welcome to the" line "#MON LEAGUE!" para "I am LORELEI of" @@ -32,8 +32,40 @@ _LoreleiAfterBattleText:: cont "Go on ahead!" para "You only got a" - line "taste of #MON" - cont "LEAGUE power!" + line "taste of the" + cont "#MON LEAGUE's" + cont "power!" + done + +_LoreleiRematchText:: + text "Welcome to the" + line "#MON LEAGUE!" + + para "Hey, fantastic" + line "timing! I was" + cont "just thinking" + cont "how I'd like to" + cont "battle you." + + para "I hope you're" + line "ready!" + done + +_LoreleiRematchEndBattleText:: + text "Argh!" + line "How?!" + prompt + +_LoreleiRematchAfterBattleText:: + text "I may have lost" + line "to you, but I'll" + cont "never give up on" + cont "ice #MON!" + + para "You should aim to" + line "win using #MON" + cont "you like best," + cont "too!" done _LoreleiDontRunAwayText::