diff --git a/Data/Map015.rxdata b/Data/Map015.rxdata index 50076074e..3b176289c 100644 Binary files a/Data/Map015.rxdata and b/Data/Map015.rxdata differ diff --git a/Data/Map018.rxdata b/Data/Map018.rxdata index 134d96262..820d696a2 100644 Binary files a/Data/Map018.rxdata and b/Data/Map018.rxdata differ diff --git a/Data/Map066.rxdata b/Data/Map066.rxdata index 197542807..ffebcb784 100644 Binary files a/Data/Map066.rxdata and b/Data/Map066.rxdata differ diff --git a/Data/Map415.rxdata b/Data/Map415.rxdata index 642a87ce3..b0ee3a0a7 100644 Binary files a/Data/Map415.rxdata and b/Data/Map415.rxdata differ diff --git a/Data/Map542.rxdata b/Data/Map542.rxdata index b7a38a84c..a4d5930a6 100644 Binary files a/Data/Map542.rxdata and b/Data/Map542.rxdata differ diff --git a/Data/MapInfos.rxdata b/Data/MapInfos.rxdata index 6eebe95a0..05beebc6c 100644 Binary files a/Data/MapInfos.rxdata and b/Data/MapInfos.rxdata differ diff --git a/Data/Scripts/048_Fusion/PokemonFusion.rb b/Data/Scripts/048_Fusion/PokemonFusion.rb index dc0e69ed5..976b3ed3c 100644 --- a/Data/Scripts/048_Fusion/PokemonFusion.rb +++ b/Data/Scripts/048_Fusion/PokemonFusion.rb @@ -630,6 +630,8 @@ class PokemonFusionScene end # Opens the fusion screen + + def pbFusionScreen(cancancel = false, superSplicer = false) metaplayer1 = SpriteMetafilePlayer.new(@metafile1, @sprites["rsprite1"]) metaplayer2 = SpriteMetafilePlayer.new(@metafile2, @sprites["rsprite2"]) @@ -706,13 +708,15 @@ class PokemonFusionScene hiddenAbility1 = @pokemon1.ability == @pokemon1.getAbilityList[0][-1] hiddenAbility2 = @pokemon2.ability == @pokemon2.getAbilityList[0][-1] - setFusionMoves(@pokemon1, @pokemon2) if !noMoves + #change species @pokemon1.species = newSpecies - @pokemon1.ability = pbChooseAbility(@pokemon1, hiddenAbility1, hiddenAbility2) - if superSplicer - @pokemon1.nature = pbChooseNature(@pokemon1.nature, @pokemon2.nature) - end + #@pokemon1.ability = pbChooseAbility(@pokemon1, hiddenAbility1, hiddenAbility2) + setFusionMoves(@pokemon1, @pokemon2) if !noMoves + + # if superSplicer + # @pokemon1.nature = pbChooseNature(@pokemon1.nature, @pokemon2.nature) + # end #Check moves for new species # movelist = @pokemon1.getMoveList # for i in movelist @@ -750,6 +754,16 @@ def clearUIForMoves end +def setAbilityAndNature(abilitiesList, naturesList) + scene = FusionSelectOptionsScene.new(abilitiesList,naturesList) + screen = PokemonOptionScreen.new(scene) + screen.pbStartScreen + + @pokemon1.ability = scene.selectedAbility + @pokemon1.nature = scene.selectedNature + +end + def setFusionMoves(fusedPoke, poke2) clearUIForMoves @@ -818,11 +832,16 @@ def pbChooseAbility(poke, hidden1 = false, hidden2 = false) ability1_name = GameData::Ability.get(abID1).name ability2_name = GameData::Ability.get(abID2).name + availableNatures = [] + availableNatures << @pokemon1.nature + availableNatures << @pokemon2.nature - if (Kernel.pbMessage("Choose an ability. ???", [_INTL("{1}", ability1_name), _INTL("{1}", ability2_name)], 2)) == 0 - return abID1 #hidden1 ? 4 : 0 - end - return abID2 #hidden2 ? 5 : 1 + setAbilityAndNature([GameData::Ability.get(abID1),GameData::Ability.get(abID2)],availableNatures) + + # if (Kernel.pbMessage("Choose an ability. ???", [_INTL("{1}", ability1_name), _INTL("{1}", ability2_name)], 2)) == 0 + # return abID1 #hidden1 ? 4 : 0 + # end + # return abID2 #hidden2 ? 5 : 1 end def pbChooseNature(species1_nature, species2_nature) diff --git a/Data/System.rxdata b/Data/System.rxdata index e22703424..3da4de85b 100644 Binary files a/Data/System.rxdata and b/Data/System.rxdata differ diff --git a/Data/Tilesets.rxdata b/Data/Tilesets.rxdata index 2c6933d73..cf2b1fa27 100644 Binary files a/Data/Tilesets.rxdata and b/Data/Tilesets.rxdata differ