Added Gen 9 forms code, evolution code, some item effects

This commit is contained in:
Maruno17
2024-06-08 19:35:45 +01:00
parent 6c3d9e77ad
commit 5e23984765
26 changed files with 678 additions and 495 deletions

View File

@@ -183,6 +183,17 @@ EventHandlers.add(:on_step_taken, :auto_move_player,
}
)
# Certain species of Pokémon record the distance travelled while they were in
# the party. Those species use this information to evolve.
EventHandlers.add(:on_step_taken, :party_pokemon_distance_tracker,
proc { |event|
$player.party.each_pokemon do |pkmn|
next if ![:PAWMO, :BRAMBLIN, :RELLOR].include?(pkmn.species)
pkmn.evolution_counter += 1
end
}
)
def pbOnStepTaken(eventTriggered)
if $game_player.move_route_forcing || pbMapInterpreterRunning?
EventHandlers.trigger(:on_step_taken, $game_player)

View File

@@ -15,8 +15,6 @@ class Game_Temp
attr_accessor :encounter_triggered
attr_accessor :encounter_type
attr_accessor :party_levels_before_battle
attr_accessor :party_critical_hits_dealt
attr_accessor :party_direct_damage_taken
def battle_rules
@battle_rules = {} if !@battle_rules
@@ -112,12 +110,8 @@ end
EventHandlers.add(:on_start_battle, :record_party_status,
proc {
$game_temp.party_levels_before_battle = []
$game_temp.party_critical_hits_dealt = []
$game_temp.party_direct_damage_taken = []
$player.party.each_with_index do |pkmn, i|
$game_temp.party_levels_before_battle[i] = pkmn.level
$game_temp.party_critical_hits_dealt[i] = 0
$game_temp.party_direct_damage_taken[i] = 0
end
}
)
@@ -611,8 +605,6 @@ EventHandlers.add(:on_end_battle, :evolve_and_black_out,
pbEvolutionCheck if Settings::CHECK_EVOLUTION_AFTER_ALL_BATTLES ||
(decision != 2 && decision != 5) # not a loss or a draw
$game_temp.party_levels_before_battle = nil
$game_temp.party_critical_hits_dealt = nil
$game_temp.party_direct_damage_taken = nil
# Check for blacking out or gaining Pickup/Huney Gather items
case decision
when 1, 4 # Win, capture
@@ -639,7 +631,7 @@ def pbEvolutionCheck
if new_species.nil? && $game_temp.party_levels_before_battle &&
$game_temp.party_levels_before_battle[i] &&
$game_temp.party_levels_before_battle[i] < pkmn.level
new_species = pkmn.check_evolution_on_level_up
new_species = pkmn.check_evolution_on_battle_level_up
end
new_species = pkmn.check_evolution_after_battle(i) if new_species.nil?
next if new_species.nil?