mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-10 06:34:59 +00:00
Fixed Battle Tower/Cups/Palace, fixed bug when using Metronome, fixed bad AI for Conversion/Conversion 2
This commit is contained in:
@@ -22,10 +22,10 @@ class PBPokemon
|
||||
itm = GameData::Item.try_get(item)
|
||||
@item = itm ? itm.id : nil
|
||||
@nature = nature
|
||||
@move1 = move1 ? move1 : 0
|
||||
@move2 = move2 ? move2 : 0
|
||||
@move3 = move3 ? move3 : 0
|
||||
@move4 = move4 ? move4 : 0
|
||||
@move1 = move1 ? move1 : nil
|
||||
@move2 = move2 ? move2 : nil
|
||||
@move3 = move3 ? move3 : nil
|
||||
@move4 = move4 ? move4 : nil
|
||||
@ev = ev
|
||||
end
|
||||
|
||||
@@ -55,7 +55,9 @@ class PBPokemon
|
||||
move_data = GameData::Move.try_get(moves[i])
|
||||
moveid.push(move_data.id) if move_data
|
||||
end
|
||||
moveid=[GameData::Move.get(1)] if moveid.length==0
|
||||
if moveid.length==0
|
||||
GameData::Move.each { |mov| moveid.push(mov.id); break }
|
||||
end
|
||||
return self.new(species, item, nature, moveid[0], moveid[1], moveid[2], moveid[3], ev_array)
|
||||
end
|
||||
|
||||
@@ -154,9 +156,7 @@ class PBPokemon
|
||||
pokemon=Pokemon.new(@species,level,trainer,false)
|
||||
pokemon.item = @item
|
||||
pokemon.personalID = rand(2**16) | rand(2**16) << 16
|
||||
pokemon.personalID -= pokemon.personalID % 25
|
||||
pokemon.personalID += nature
|
||||
pokemon.personalID &= 0xFFFFFFFF
|
||||
pokemon.nature = nature
|
||||
pokemon.happiness=0
|
||||
pokemon.moves[0] = Pokemon::Move.new(self.convertMove(@move1))
|
||||
pokemon.moves[1] = Pokemon::Move.new(self.convertMove(@move2))
|
||||
@@ -468,7 +468,7 @@ class BattleChallenge
|
||||
end
|
||||
|
||||
def start(*args)
|
||||
ensureType(@id)
|
||||
t = ensureType(@id)
|
||||
@currentChallenge=@id # must appear before pbStart
|
||||
@bc.pbStart(t,@numRounds)
|
||||
end
|
||||
@@ -680,8 +680,9 @@ end
|
||||
def pbBattleChallengeGraphic(event)
|
||||
nextTrainer=pbBattleChallenge.nextTrainer
|
||||
bttrainers=pbGetBTTrainers(pbBattleChallenge.currentChallenge)
|
||||
filename=GameData::TrainerType.charset_filename_brief((bttrainers[nextTrainer][0] rescue 0))
|
||||
filename=GameData::TrainerType.charset_filename_brief((bttrainers[nextTrainer][0] rescue nil))
|
||||
begin
|
||||
filename = "NPC 01" if nil_or_empty?(filename)
|
||||
bitmap=AnimatedBitmap.new("Graphics/Characters/"+filename)
|
||||
bitmap.dispose
|
||||
event.character_name=filename
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
def pbRandomMove
|
||||
keys = GameData::Move::DATA.keys.sort
|
||||
keys = GameData::Move::DATA.keys
|
||||
loop do
|
||||
move_id = keys[rand(keys.length)]
|
||||
move = GameData::Move.get(move_id)
|
||||
@@ -249,7 +249,7 @@ def pbRandomPokemonFromRule(rule,trainer)
|
||||
iteration+=1
|
||||
species=nil
|
||||
level=rule.ruleset.suggestedLevel
|
||||
keys = GameData::Species::DATA.keys.sort
|
||||
keys = GameData::Species::DATA.keys
|
||||
loop do
|
||||
loop do
|
||||
species = keys[rand(keys.length)]
|
||||
@@ -910,9 +910,10 @@ def pbTrainerInfo(pokemonlist,trfile,rules)
|
||||
if GameData::TrainerType.exists?(:YOUNGSTER) && rand(30) == 0
|
||||
trainerid = :YOUNGSTER
|
||||
else
|
||||
tr_type_values = GameData::TrainerType::DATA.values
|
||||
tr_typekeys = GameData::TrainerType::DATA.keys
|
||||
loop do
|
||||
tr_type_data = tr_type_values[rand(tr_type_values.length)]
|
||||
tr_type = tr_typekeys[rand(tr_typekeys.length)]
|
||||
tr_type_data = GameData::TrainerType.get(tr_type)
|
||||
next if tr_type_data.base_money >= 100
|
||||
trainerid = tr_type_data.id
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user