mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2026-01-22 14:26:01 +00:00
Moved methods that return item/trainer graphics, refactored evolution helper methods, rearranged some methods
This commit is contained in:
@@ -1326,6 +1326,9 @@ end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
# Open the party screen
|
||||
#===============================================================================
|
||||
def pbPokemonScreen
|
||||
pbFadeOutIn {
|
||||
sscene = PokemonParty_Scene.new
|
||||
@@ -1333,3 +1336,67 @@ def pbPokemonScreen
|
||||
sscreen.pbPokemonScreen
|
||||
}
|
||||
end
|
||||
|
||||
#===============================================================================
|
||||
# Choose a Pokémon in the party
|
||||
#===============================================================================
|
||||
# Choose a Pokémon/egg from the party.
|
||||
# Stores result in variable _variableNumber_ and the chosen Pokémon's name in
|
||||
# variable _nameVarNumber_; result is -1 if no Pokémon was chosen
|
||||
def pbChoosePokemon(variableNumber,nameVarNumber,ableProc=nil,allowIneligible=false)
|
||||
chosen = 0
|
||||
pbFadeOutIn {
|
||||
scene = PokemonParty_Scene.new
|
||||
screen = PokemonPartyScreen.new(scene,$Trainer.party)
|
||||
if ableProc
|
||||
chosen=screen.pbChooseAblePokemon(ableProc,allowIneligible)
|
||||
else
|
||||
screen.pbStartScene(_INTL("Choose a Pokémon."),false)
|
||||
chosen = screen.pbChoosePokemon
|
||||
screen.pbEndScene
|
||||
end
|
||||
}
|
||||
pbSet(variableNumber,chosen)
|
||||
if chosen>=0
|
||||
pbSet(nameVarNumber,$Trainer.party[chosen].name)
|
||||
else
|
||||
pbSet(nameVarNumber,"")
|
||||
end
|
||||
end
|
||||
|
||||
def pbChooseNonEggPokemon(variableNumber,nameVarNumber)
|
||||
pbChoosePokemon(variableNumber,nameVarNumber,proc { |pkmn| !pkmn.egg? })
|
||||
end
|
||||
|
||||
def pbChooseAblePokemon(variableNumber,nameVarNumber)
|
||||
pbChoosePokemon(variableNumber,nameVarNumber,proc { |pkmn| !pkmn.egg? && pkmn.hp>0 })
|
||||
end
|
||||
|
||||
# Same as pbChoosePokemon, but prevents choosing an egg or a Shadow Pokémon.
|
||||
def pbChooseTradablePokemon(variableNumber,nameVarNumber,ableProc=nil,allowIneligible=false)
|
||||
chosen = 0
|
||||
pbFadeOutIn {
|
||||
scene = PokemonParty_Scene.new
|
||||
screen = PokemonPartyScreen.new(scene,$Trainer.party)
|
||||
if ableProc
|
||||
chosen=screen.pbChooseTradablePokemon(ableProc,allowIneligible)
|
||||
else
|
||||
screen.pbStartScene(_INTL("Choose a Pokémon."),false)
|
||||
chosen = screen.pbChoosePokemon
|
||||
screen.pbEndScene
|
||||
end
|
||||
}
|
||||
pbSet(variableNumber,chosen)
|
||||
if chosen>=0
|
||||
pbSet(nameVarNumber,$Trainer.party[chosen].name)
|
||||
else
|
||||
pbSet(nameVarNumber,"")
|
||||
end
|
||||
end
|
||||
|
||||
def pbChoosePokemonForTrade(variableNumber,nameVarNumber,wanted)
|
||||
wanted = getID(PBSpecies,wanted)
|
||||
pbChooseTradablePokemon(variableNumber,nameVarNumber,proc { |pkmn|
|
||||
next pkmn.species==wanted
|
||||
})
|
||||
end
|
||||
|
||||
@@ -1346,3 +1346,25 @@ class PokemonSummaryScreen
|
||||
return ret
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
#
|
||||
#===============================================================================
|
||||
def pbChooseMove(pokemon,variableNumber,nameVarNumber)
|
||||
return if !pokemon
|
||||
ret = -1
|
||||
pbFadeOutIn {
|
||||
scene = PokemonSummary_Scene.new
|
||||
screen = PokemonSummaryScreen.new(scene)
|
||||
ret = screen.pbStartForgetScreen([pokemon],0,nil)
|
||||
}
|
||||
$game_variables[variableNumber] = ret
|
||||
if ret>=0
|
||||
$game_variables[nameVarNumber] = pokemon.moves[ret].name
|
||||
else
|
||||
$game_variables[nameVarNumber] = ""
|
||||
end
|
||||
$game_map.need_refresh = true if $game_map
|
||||
end
|
||||
|
||||
@@ -133,7 +133,7 @@ class PokemonRegionMap_Scene
|
||||
@sprites["mapbottom"].mapdetails = pbGetMapDetails(@mapX,@mapY)
|
||||
if playerpos && mapindex==playerpos[0]
|
||||
@sprites["player"] = IconSprite.new(0,0,@viewport)
|
||||
@sprites["player"].setBitmap(pbPlayerHeadFile($Trainer.trainertype))
|
||||
@sprites["player"].setBitmap(GameData::TrainerType.player_map_icon_filename($Trainer.trainertype))
|
||||
@sprites["player"].x = -SQUAREWIDTH/2+(@mapX*SQUAREWIDTH)+(Graphics.width-@sprites["map"].bitmap.width)/2
|
||||
@sprites["player"].y = -SQUAREHEIGHT/2+(@mapY*SQUAREHEIGHT)+(Graphics.height-@sprites["map"].bitmap.height)/2
|
||||
end
|
||||
|
||||
@@ -54,7 +54,7 @@ class PokemonPhoneScene
|
||||
addBackgroundPlane(@sprites,"bg","phonebg",@viewport)
|
||||
@sprites["icon"] = IconSprite.new(70,102,@viewport)
|
||||
if @trainers[0].length==4
|
||||
filename = pbTrainerCharFile(@trainers[0][0])
|
||||
filename = GameData::TrainerType.charset_filename(@trainers[0][0])
|
||||
else
|
||||
filename = sprintf("Graphics/Characters/phone%03d",@trainers[0][0])
|
||||
end
|
||||
@@ -106,7 +106,7 @@ class PokemonPhoneScene
|
||||
if @sprites["list"].index!=oldindex
|
||||
trainer = @trainers[@sprites["list"].index]
|
||||
if trainer.length==4
|
||||
filename = pbTrainerCharFile(trainer[0])
|
||||
filename = GameData::TrainerType.charset_filename(trainer[0])
|
||||
else
|
||||
filename = sprintf("Graphics/Characters/phone%03d",trainer[0])
|
||||
end
|
||||
|
||||
@@ -23,7 +23,7 @@ class PokemonTrainerCard_Scene
|
||||
@sprites["overlay"] = BitmapSprite.new(Graphics.width,Graphics.height,@viewport)
|
||||
pbSetSystemFont(@sprites["overlay"].bitmap)
|
||||
@sprites["trainer"] = IconSprite.new(336,112,@viewport)
|
||||
@sprites["trainer"].setBitmap(pbPlayerSpriteFile($Trainer.trainertype))
|
||||
@sprites["trainer"].setBitmap(GameData::TrainerType.player_front_sprite_filename($Trainer.trainertype))
|
||||
@sprites["trainer"].x -= (@sprites["trainer"].bitmap.width-128)/2
|
||||
@sprites["trainer"].y -= (@sprites["trainer"].bitmap.height-128)
|
||||
@sprites["trainer"].z = 2
|
||||
|
||||
@@ -36,8 +36,7 @@ class PokemonMartAdapter
|
||||
end
|
||||
|
||||
def getItemIcon(item)
|
||||
return nil if !item
|
||||
return pbItemIconFile(item)
|
||||
return (item) ? GameData::Item.icon_filename(item) : nil
|
||||
end
|
||||
|
||||
# Unused
|
||||
|
||||
@@ -241,7 +241,7 @@ class HallOfFame_Scene
|
||||
|
||||
def createTrainerBattler
|
||||
@sprites["trainer"]=IconSprite.new(@viewport)
|
||||
@sprites["trainer"].setBitmap(pbTrainerSpriteFile($Trainer.trainertype))
|
||||
@sprites["trainer"].setBitmap(GameData::TrainerType.front_sprite_filename($Trainer.trainertype))
|
||||
if !SINGLEROW
|
||||
@sprites["trainer"].x=Graphics.width-96
|
||||
@sprites["trainer"].y=160
|
||||
|
||||
Reference in New Issue
Block a user