mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-10 06:34:59 +00:00
fixed abilities and rival evolution
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -701,7 +701,7 @@ end
|
||||
#===============================================================================
|
||||
# Picking up an item found on the ground
|
||||
#===============================================================================
|
||||
def pbItemBall(item,quantity=1)
|
||||
def pbItemBall(item,quantity=1,item_name="",canRandom=true)
|
||||
item = GameData::Item.get(item)
|
||||
return false if !item || quantity<1
|
||||
itemname = (quantity>1) ? item.name_plural : item.name
|
||||
@@ -745,7 +745,8 @@ end
|
||||
#===============================================================================
|
||||
# Being given an item
|
||||
#===============================================================================
|
||||
def pbReceiveItem(item,quantity=1)
|
||||
def pbReceiveItem(item,quantity=1,item_name="",music=nil)
|
||||
#item_name -> pour donner un autre nom à l'item. Pas encore réimplémenté et surtout là pour éviter que ça plante quand des events essaient de le faire
|
||||
item = GameData::Item.get(item)
|
||||
return false if !item || quantity<1
|
||||
itemname = (quantity>1) ? item.name_plural : item.name
|
||||
|
||||
@@ -154,7 +154,7 @@ class PokemonIconSprite < SpriteWrapper
|
||||
end
|
||||
|
||||
def useRegularIcon(species)
|
||||
dexNum = convertSpeciesSymbolToDexNumber(species)
|
||||
dexNum = getDexNumberForSpecies(species)
|
||||
return true if dexNum <= Settings::NB_POKEMON
|
||||
return false if $game_variables == nil
|
||||
return true if $game_variables[220] != 0
|
||||
|
||||
@@ -15,7 +15,7 @@ class PokemonBoxIcon < IconSprite
|
||||
end
|
||||
|
||||
def useRegularIcon(species)
|
||||
dexNum = convertSpeciesSymbolToDexNumber(species)
|
||||
dexNum = getDexNumberForSpecies(species)
|
||||
return true if dexNum <= Settings::NB_POKEMON
|
||||
return false if $game_variables == nil
|
||||
return true if $game_variables[220] != 0
|
||||
|
||||
@@ -466,30 +466,31 @@ module PBItems
|
||||
AIRMAIL = 462
|
||||
MOSAICMAIL = 463
|
||||
BRICKMAIL = 464
|
||||
XATTACK = 465
|
||||
XATTACK2 = 466
|
||||
XATTACK3 = 467
|
||||
XATTACK6 = 468
|
||||
XDEFENSE = 469
|
||||
XDEFENSE2 = 470
|
||||
XDEFENSE3 = 471
|
||||
XDEFENSE6 = 472
|
||||
XSPATK = 473
|
||||
XSPATK2 = 474
|
||||
XSPATK3 = 475
|
||||
XSPATK6 = 476
|
||||
XSPDEF = 477
|
||||
XSPDEF2 = 478
|
||||
XSPDEF3 = 479
|
||||
XSPDEF6 = 480
|
||||
XSPEED = 481
|
||||
XSPEED2 = 482
|
||||
XSPEED3 = 483
|
||||
XSPEED6 = 484
|
||||
XACCURACY = 485
|
||||
XACCURACY2 = 486
|
||||
XACCURACY3 = 487
|
||||
XACCURACY6 = 488
|
||||
XATTACK = 465
|
||||
XATTACK2 = 466
|
||||
XATTACK3 = 467
|
||||
XATTACK6 = 468
|
||||
XDEFENSE = 469
|
||||
XDEFENSE2 = 470
|
||||
XDEFENSE3 = 471
|
||||
XDEFENSE6 = 472
|
||||
XSPATK = 473
|
||||
XSPECIAL = 473
|
||||
XSPATK2 = 474
|
||||
XSPATK3 = 475
|
||||
XSPATK6 = 476
|
||||
XSPDEF = 477
|
||||
XSPDEF2 = 478
|
||||
XSPDEF3 = 479
|
||||
XSPDEF6 = 480
|
||||
XSPEED = 481
|
||||
XSPEED2 = 482
|
||||
XSPEED3 = 483
|
||||
XSPEED6 = 484
|
||||
XACCURACY = 485
|
||||
XACCURACY2 = 486
|
||||
XACCURACY3 = 487
|
||||
XACCURACY6 = 488
|
||||
DIREHIT = 489
|
||||
DIREHIT2 = 490
|
||||
DIREHIT3 = 491
|
||||
|
||||
@@ -130,8 +130,8 @@ end
|
||||
|
||||
#in: pokemon number
|
||||
def Kernel.isPartPokemon(src, target)
|
||||
src = convertSpeciesSymbolToDexNumber(src)
|
||||
target = convertSpeciesSymbolToDexNumber(target)
|
||||
src = getDexNumberForSpecies(src)
|
||||
target = getDexNumberForSpecies(target)
|
||||
return true if src == target
|
||||
return false if src <= NB_POKEMON
|
||||
bod = getBasePokemonID(src, true)
|
||||
@@ -152,8 +152,6 @@ def getBasePokemonID(pokemon, body = true)
|
||||
|
||||
# cname = getConstantName(PBSpecies, pokemon) rescue nil
|
||||
cname = GameData::Species.get(pokemon).id.to_s
|
||||
|
||||
|
||||
return pokemon if pokemon <= NB_POKEMON
|
||||
return pokemon if cname == nil
|
||||
|
||||
|
||||
@@ -116,7 +116,7 @@ def pbCheckPokemonIconFiles(speciesNum,egg=false, dna=false)
|
||||
end
|
||||
|
||||
|
||||
def convertSpeciesSymbolToDexNumber(species)
|
||||
def getDexNumberForSpecies(species)
|
||||
return species if species.is_a?(Integer)
|
||||
if species.is_a?(Symbol)
|
||||
dexNum = GameData::Species.get(species).id_number
|
||||
@@ -158,13 +158,13 @@ def getRandomCustomFusion(returnRandomPokemonIfNoneFound=true,customPokeList=[],
|
||||
end
|
||||
|
||||
def getBodyID(species)
|
||||
dexNum = convertSpeciesSymbolToDexNumber(species)
|
||||
dexNum = getDexNumberForSpecies(species)
|
||||
return (dexNum / NB_POKEMON).round
|
||||
end
|
||||
|
||||
def getHeadID(species, bodyId)
|
||||
head_dexNum = convertSpeciesSymbolToDexNumber(species)
|
||||
body_dexNum = convertSpeciesSymbolToDexNumber(bodyId)
|
||||
head_dexNum = getDexNumberForSpecies(species)
|
||||
body_dexNum = getDexNumberForSpecies(bodyId)
|
||||
calculated_number = (head_dexNum - (body_dexNum * NB_POKEMON)).round
|
||||
return calculated_number == 0 ? 420 : calculated_number
|
||||
end
|
||||
|
||||
@@ -788,9 +788,9 @@ def pbChooseAbility(poke, hidden1 = false, hidden2 = false)
|
||||
ability2_name = GameData::Ability.get(abID2).name
|
||||
|
||||
if (Kernel.pbMessage("Choose an ability.", [_INTL("{1}", ability1_name), _INTL("{1}", ability2_name)], 2)) == 0
|
||||
return hidden1 ? 4 : 0
|
||||
return abID1#hidden1 ? 4 : 0
|
||||
end
|
||||
return hidden2 ? 5 : 1
|
||||
return abID2#hidden2 ? 5 : 1
|
||||
end
|
||||
|
||||
def pbChooseNature(species1_nature, species2_nature)
|
||||
|
||||
@@ -148,17 +148,15 @@ def getEvolution(species)
|
||||
head = getBasePokemonID(species,false)
|
||||
ret_evoB = pbGetEvolvedFormData(body)
|
||||
ret_evoH = pbGetEvolvedFormData(head)
|
||||
|
||||
evoBody = ret_evoB.any? ? ret_evoB[0][2] : -1
|
||||
evoHead = ret_evoH.any? ? ret_evoH[0][2] : -1
|
||||
|
||||
return -1 if isNegativeOrNull(evoBody) && isNegativeOrNull(evoHead)
|
||||
return body*Settings::NB_POKEMON+evoHead if isNegativeOrNull(evoBody) #only head evolves
|
||||
return evoBody*Settings::NB_POKEMON + head if isNegativeOrNull(evoHead) #only body evolves
|
||||
return evoBody*Settings::NB_POKEMON+evoHead #both evolve
|
||||
else
|
||||
evo = pbGetEvolvedFormData(species)
|
||||
return evo.any? ? evo[0][2] : -1
|
||||
return evo.any? ? getDexNumberForSpecies(evo[0][0]) : -1
|
||||
end
|
||||
end
|
||||
|
||||
@@ -169,25 +167,27 @@ def getFusionSpecies(body,head)
|
||||
end
|
||||
#
|
||||
def evolveHead(species)
|
||||
if species <= Settings::NB_POKEMON
|
||||
evo = getEvolution(species)
|
||||
return evo == -1 ? species : evo
|
||||
species_id = getDexNumberForSpecies(species)
|
||||
if species_id <= Settings::NB_POKEMON
|
||||
evo = getEvolution(species_id)
|
||||
return evo == -1 ? species_id : evo
|
||||
end
|
||||
head = getBasePokemonID(species,false)
|
||||
body = getBasePokemonID(species)
|
||||
head = getBasePokemonID(species_id,false)
|
||||
body = getBasePokemonID(species_id)
|
||||
headEvo = getEvolution(head)
|
||||
return headEvo == -1 ? species : getFusionSpecies(body,headEvo)
|
||||
return headEvo == -1 ? species_id : getFusionSpecies(body,headEvo)
|
||||
end
|
||||
|
||||
def evolveBody(species)
|
||||
if species <= Settings::NB_POKEMON
|
||||
evo = getEvolution(species)
|
||||
return evo == -1 ? species : evo
|
||||
species_id = getDexNumberForSpecies(species)
|
||||
if species_id <= Settings::NB_POKEMON
|
||||
evo = getEvolution(species_id)
|
||||
return evo == -1 ? species_id : evo
|
||||
end
|
||||
head = getBasePokemonID(species,false)
|
||||
body = getBasePokemonID(species)
|
||||
head = getBasePokemonID(species_id,false)
|
||||
body = getBasePokemonID(species_id)
|
||||
bodyEvo = getEvolution(body)
|
||||
return bodyEvo == -1 ? species : getFusionSpecies(bodyEvo,head)
|
||||
return bodyEvo == -1 ? species_id : getFusionSpecies(bodyEvo,head)
|
||||
end
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user