Moved Poké Radar encounters into encounters.txt, added Setting/map metadata for reflection rippling, fixed def minimum_level, fixed ice/waterfalls forcing movement even when holding Ctrl in Debug mode, Pokédex no longer shows genders for species without gender differences

This commit is contained in:
Maruno17
2023-06-04 20:40:42 +01:00
parent 3470f9769c
commit 679e9d42dc
19 changed files with 137 additions and 98 deletions

View File

@@ -495,16 +495,21 @@ module Compiler
all_evos = {}
GameData::Species.each do |species| # Build a hash of prevolutions for each species
species.evolutions.each do |evo|
all_evos[evo[0]] = [species.species, evo[1], evo[2], true] if !evo[3] && !all_evos[evo[0]]
next if evo[3]
all_evos[evo[0]] = [species.species, evo[1], evo[2], true] if !all_evos[evo[0]]
if species.form > 0
all_evos[[evo[0], species.form]] = [species.species, evo[1], evo[2], true] if !all_evos[[evo[0], species.form]]
end
end
end
GameData::Species.each do |species| # Distribute prevolutions
next if species.evolutions.any? { |evo| evo[3] } # Already has prevo listed
next if !all_evos[species.species]
prevo_data = all_evos[[species.species, species.base_form]] || all_evos[species.species]
next if !prevo_data
# Record what species evolves from
species.evolutions.push(all_evos[species.species].clone)
species.evolutions.delete_if { |evo| evo[3] }
species.evolutions.push(prevo_data.clone)
# Record that the prevolution can evolve into species
prevo = GameData::Species.get(all_evos[species.species][0])
prevo = GameData::Species.get(prevo_data[0])
if prevo.evolutions.none? { |evo| !evo[3] && evo[0] == species.species }
prevo.evolutions.push([species.species, :None, nil])
end