Fixes real shinies being considered fake when fused as the head of a fusion

This commit is contained in:
infinitefusion
2022-12-06 17:38:03 -05:00
parent bc90211693
commit 9b3185f299
23 changed files with 67 additions and 10 deletions

View File

@@ -299,9 +299,14 @@ class PokemonLoadScreen
end
def pbStartLoadScreen
if($game_temp.unimportedSprites.size >0)
if($game_temp.unimportedSprites && $game_temp.unimportedSprites.size >0)
handleReplaceExistingSprites()
end
if ($game_temp.nb_imported_sprites && $game_temp.nb_imported_sprites > 0)
pbMessage(_INTL("{1} new custom sprites were imported into the game",$game_temp.nb_imported_sprites.to_s))
end
$game_temp.nb_imported_sprites=nil
copyKeybindings()
save_file_list = SaveData::AUTO_SLOTS + SaveData::MANUAL_SLOTS
first_time = true

View File

@@ -1411,7 +1411,6 @@ def pbFuse(pokemon, poke2, supersplicers = false)
end
def pbUnfuse(pokemon, scene, supersplicers, pcPosition = nil)
bodyPoke = getBasePokemonID(pokemon.species_data.id_number, true)
headPoke = getBasePokemonID(pokemon.species_data.id_number, false)
@@ -1468,12 +1467,16 @@ def pbUnfuse(pokemon, scene, supersplicers, pcPosition = nil)
if pokemon.bodyShiny? && pokemon.headShiny?
pokemon.shiny = true
poke2.shiny = true
pokemon.natural_shiny = true if pokemon.natural_shiny && !pokemon.debug_shiny
poke2.natural_shiny = true if pokemon.natural_shiny && !pokemon.debug_shiny
elsif pokemon.bodyShiny?
pokemon.shiny = true
poke2.shiny = false
pokemon.natural_shiny = true if pokemon.natural_shiny && !pokemon.debug_shiny
elsif pokemon.headShiny?
poke2.shiny = true
pokemon.shiny = false
poke2.natural_shiny = true if pokemon.natural_shiny && !pokemon.debug_shiny
else #shiny was obtained already fused
if rand(2) == 0
pokemon.shiny = true
@@ -1485,6 +1488,7 @@ def pbUnfuse(pokemon, scene, supersplicers, pcPosition = nil)
pokemon.debug_shiny=true if pokemon.debug_shiny && pokemon.body_shiny
poke2.debug_shiny=true if pokemon.debug_shiny && poke2.head_shiny
pokemon.body_shiny=false
pokemon.head_shiny=false