public class TacticalAI extends AggressiveAI
Constructor and Description |
---|
TacticalAI(BattleParticipant participant)
Initializes the AI.
|
Modifier and Type | Method and Description |
---|---|
protected java.util.List<MoveChoice> |
getBestChoices(java.util.List<MoveChoice> choices)
Chooses the best move choices from a list of choices.
|
protected java.util.List<MoveChoice> |
getBestChoices(java.util.List<MoveChoice> choices,
boolean excludeStatus)
Chooses the best move choices from a list of choices.
|
protected OpponentMemory |
getMemory(PixelmonWrapper pw)
Finds the memory of a certain Pokémon.
|
MoveChoice |
getNextMove(PixelmonWrapper pw)
Gets the move the AI will make next.
|
protected java.util.List<MoveChoice> |
getWeightedAttackChoices(PixelmonWrapper pw)
Gets all attack choices the Pokémon has, along with the choices' weights.
|
protected MoveChoice |
pickBestChoice(java.util.List<MoveChoice> bestChoices)
Picks a single move choice from a list of the best choices.
|
protected MoveChoice |
pickBestChoice(java.util.List<MoveChoice> choices,
java.util.List<MoveChoice> bestChoices)
Picks a single move choice from a list of the best choices.
|
void |
registerMove(PixelmonWrapper user)
Registers an enemy move into the AI's memory.
|
void |
simulateStatusMove(PixelmonWrapper pw,
MoveChoice choice)
Generates move results for status moves by simulating them.
|
getFaintedPokemonToRevive, getNextMoveAttackOnly, getNextSwitch, resetSwitchSimulation, validateSwitch
getAttackChoices, getAttackChoicesOpponentOnly, getBestAttackChoices, getBestAttackChoices, getChoices, getMoveset, getPossibleReviveIDs, getPossibleSwitchIDs, getRandomAttackChoice, getSwitchChoices, getWeightedOffensiveChoices, registerSwitch, weightFromOpponentOptions, weightFromOpponentOptions, weightFromUserOptions, weightFromUserOptions, weightOffensiveMove, weightOffensiveMove, weightOffensiveMoves, weightRandomMove, weightSingleTypeChange, weightStatusOpponentOptions, weightTypeChange, weightTypeChange
public TacticalAI(BattleParticipant participant)
participant
- The participant controlled by the AI.public MoveChoice getNextMove(PixelmonWrapper pw)
BattleAIBase
getNextMove
in class AggressiveAI
pw
- The Pokémon to make a move with.protected java.util.List<MoveChoice> getWeightedAttackChoices(PixelmonWrapper pw)
pw
- The Pokémon deciding on a choice.protected MoveChoice pickBestChoice(java.util.List<MoveChoice> bestChoices)
bestChoices
- All best choices the Pokémon has.protected MoveChoice pickBestChoice(java.util.List<MoveChoice> choices, java.util.List<MoveChoice> bestChoices)
choices
- All choices the Pokémon has.bestChoices
- All best choices the Pokémon has.public void registerMove(PixelmonWrapper user)
BattleAIBase
registerMove
in class BattleAIBase
public void simulateStatusMove(PixelmonWrapper pw, MoveChoice choice)
pw
- The Pokémon using the move.choice
- The move choice to be tested.protected OpponentMemory getMemory(PixelmonWrapper pw)
pw
- The Pokémon to get the memory for.protected java.util.List<MoveChoice> getBestChoices(java.util.List<MoveChoice> choices)
choices
- The choices to pick the best choices from.protected java.util.List<MoveChoice> getBestChoices(java.util.List<MoveChoice> choices, boolean excludeStatus)
choices
- The choices to pick the best choices from.excludeStatus
- Whether to exclude status moves from the choices.