mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-07 21:24:59 +00:00
93 lines
3.1 KiB
Ruby
93 lines
3.1 KiB
Ruby
#===============================================================================
|
|
# Used when generating new trainers for battle challenges
|
|
#===============================================================================
|
|
class Battle::DebugSceneNoLogging
|
|
def initialize
|
|
@battle = nil
|
|
@lastCmd = [0, 0, 0, 0]
|
|
@lastMove = [0, 0, 0, 0]
|
|
end
|
|
|
|
# Called whenever the battle begins.
|
|
def pbStartBattle(battle)
|
|
@battle = battle
|
|
@lastCmd = [0, 0, 0, 0]
|
|
@lastMove = [0, 0, 0, 0]
|
|
end
|
|
|
|
def pbBlitz(keys)
|
|
return rand(30)
|
|
end
|
|
|
|
# Called whenever a new round begins.
|
|
def pbBeginCommandPhase; end
|
|
def pbBeginAttackPhase; end
|
|
def pbBeginEndOfRoundPhase; end
|
|
def pbShowOpponent(idxTrainer); end
|
|
def pbDamageAnimation(battler, effectiveness = 0); end
|
|
def pbCommonAnimation(animName, user = nil, target = nil); end
|
|
def pbAnimation(moveID, user, targets, hitNum = 0); end
|
|
def pbHitAndHPLossAnimation(targets); end
|
|
def pbShowPartyLineup(side, fullAnim = false); end
|
|
def pbShowAbilitySplash(battler, delay = false, logTrigger = true); end
|
|
def pbReplaceAbilitySplash(battler); end
|
|
def pbHideAbilitySplash(battler); end
|
|
def pbEndBattle(result); end
|
|
def pbWildBattleSuccess; end
|
|
def pbTrainerBattleSuccess; end
|
|
def pbBattleArenaJudgment(b1, b2, r1, r2); end
|
|
def pbBattleArenaBattlers(b1, b2); end
|
|
|
|
def pbUpdate(cw = nil); end
|
|
def pbRefresh; end
|
|
def pbRefreshOne(idxBattler); end
|
|
|
|
def pbDisplayMessage(msg, brief = false); end
|
|
alias pbDisplay pbDisplayMessage
|
|
def pbDisplayPausedMessage(msg); end
|
|
def pbDisplayConfirmMessage(msg); return true; end
|
|
def pbShowCommands(msg, commands, defaultValue); return 0; end
|
|
|
|
def pbSendOutBattlers(sendOuts, startBattle = false); end
|
|
def pbRecall(idxBattler); end
|
|
def pbItemMenu(idxBattler, firstAction); return -1; end
|
|
def pbResetMoveIndex(idxBattler); end
|
|
|
|
def pbHPChanged(battler, oldHP, showAnim = false); end
|
|
def pbChangePokemon(idxBattler, pkmn); end
|
|
def pbFaintBattler(battler); end
|
|
def pbEXPBar(battler, startExp, endExp, tempExp1, tempExp2); end
|
|
def pbLevelUp(pkmn, battler, oldTotalHP, oldAttack, oldDefense, oldSpAtk, oldSpDef, oldSpeed); end
|
|
def pbForgetMove(pkmn, moveToLearn); return 0; end # Always forget first move
|
|
|
|
def pbCommandMenu(idxBattler, firstAction)
|
|
return 1 if rand(15) == 0 # Bag
|
|
return 4 if rand(10) == 0 # Call
|
|
return 0 # Fight
|
|
end
|
|
|
|
def pbFightMenu(idxBattler, megaEvoPossible = false)
|
|
battler = @battle.battlers[idxBattler]
|
|
50.times do
|
|
break if yield rand(battler.move.length)
|
|
end
|
|
end
|
|
|
|
def pbChooseTarget(idxBattler, target_data, visibleSprites = nil)
|
|
targets = @battle.allOtherSideBattlers(idxBattler).map { |b| b.index }
|
|
return -1 if targets.length == 0
|
|
return targets.sample
|
|
end
|
|
|
|
def pbPartyScreen(idxBattler, canCancel = false)
|
|
replacements = []
|
|
@battle.eachInTeamFromBattlerIndex(idxBattler) do |_b, idxParty|
|
|
replacements.push(idxParty) if !@battle.pbFindBattler(idxParty, idxBattler)
|
|
end
|
|
return if replacements.length == 0
|
|
50.times do
|
|
break if yield replacements[rand(replacements.length)], self
|
|
end
|
|
end
|
|
end
|