From bbe654028c5dd9047f1802657724afb8989cbdac Mon Sep 17 00:00:00 2001 From: Maruno17 Date: Sat, 5 Nov 2022 19:29:06 +0000 Subject: [PATCH] =?UTF-8?q?Revised=20changes=20in=20previous=20commit=20ab?= =?UTF-8?q?out=20Pok=C3=A9mon=20generation=20for=20non-standard=20battles?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../002_Battle triggering/005_Overworld_RoamingPokemon.rb | 8 ++++++-- Data/Scripts/018_Alternate battle modes/001_SafariZone.rb | 3 ++- Data/Scripts/018_Alternate battle modes/002_BugContest.rb | 4 +++- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/Data/Scripts/012_Overworld/002_Battle triggering/005_Overworld_RoamingPokemon.rb b/Data/Scripts/012_Overworld/002_Battle triggering/005_Overworld_RoamingPokemon.rb index 89672fd5a..14a5d2a83 100644 --- a/Data/Scripts/012_Overworld/002_Battle triggering/005_Overworld_RoamingPokemon.rb +++ b/Data/Scripts/012_Overworld/002_Battle triggering/005_Overworld_RoamingPokemon.rb @@ -196,13 +196,17 @@ EventHandlers.add(:on_calling_wild_battle, :roaming_pokemon, } ) -def pbRoamingPokemonBattle(pkmn) +def pbRoamingPokemonBattle(pkmn, level = 1) # Get the roaming Pokémon to encounter; generate it based on the species and # level if it doesn't already exist idxRoamer = $game_temp.roamer_index_for_encounter if !$PokemonGlobal.roamPokemon[idxRoamer] || !$PokemonGlobal.roamPokemon[idxRoamer].is_a?(Pokemon) - $PokemonGlobal.roamPokemon[idxRoamer] = pbGenerateWildPokemon(pkmn.species_data.id, pkmn.level, true) + if pkmn.is_a?(Pokemon) + $PokemonGlobal.roamPokemon[idxRoamer] = pbGenerateWildPokemon(pkmn.species_data.id, pkmn.level, true) + else + $PokemonGlobal.roamPokemon[idxRoamer] = pbGenerateWildPokemon(pkmn, level, true) + end end # Set some battle rules setBattleRule("single") diff --git a/Data/Scripts/018_Alternate battle modes/001_SafariZone.rb b/Data/Scripts/018_Alternate battle modes/001_SafariZone.rb index 7965e1e68..89f8876ea 100644 --- a/Data/Scripts/018_Alternate battle modes/001_SafariZone.rb +++ b/Data/Scripts/018_Alternate battle modes/001_SafariZone.rb @@ -115,8 +115,9 @@ EventHandlers.add(:on_calling_wild_battle, :safari_battle, } ) -def pbSafariBattle(pkmn) +def pbSafariBattle(pkmn, level = 1) # Generate a wild Pokémon based on the species and level + pkmn = pbGenerateWildPokemon(pkmn, level) if !pkmn.is_a?(Pokemon) foeParty = [pkmn] # Calculate who the trainer is playerTrainer = $player diff --git a/Data/Scripts/018_Alternate battle modes/002_BugContest.rb b/Data/Scripts/018_Alternate battle modes/002_BugContest.rb index 161d21e0d..0dd6cbd22 100644 --- a/Data/Scripts/018_Alternate battle modes/002_BugContest.rb +++ b/Data/Scripts/018_Alternate battle modes/002_BugContest.rb @@ -365,10 +365,12 @@ EventHandlers.add(:on_calling_wild_battle, :bug_contest_battle, } ) -def pbBugContestBattle(pkmn) +def pbBugContestBattle(pkmn, level = 1) # Record information about party Pokémon to be used at the end of battle (e.g. # comparing levels for an evolution check) EventHandlers.trigger(:on_start_battle) + # Generate a wild Pokémon based on the species and level + pkmn = pbGenerateWildPokemon(pkmn, level) if !pkmn.is_a?(Pokemon) foeParty = [pkmn] # Calculate who the trainers and their party are playerTrainer = [$player]