Interface AI
- All Known Implementing Classes:
AbstractAI, CowardSimpleAI, ExperimentalAI, HumanHaterRationalAI, MilvangAI, ParallelEvaluatorAI, RationalAI, SimpleAI
public interface AI
interface to allow for multiple AI implementations
- Author:
- Bruce Sherrod, David Ripton
-
Method Summary
Modifier and TypeMethodDescriptionacquireAngel(Legion legion, List<CreatureType> recruits) choose whether to acquire an angel or archangelreturn a list of battle moves for the active legionvoida Battle is finishedbooleanchoose whether legion should concede to enemybooleanchoose whether legion should flee from enemygetVariantRecruitHint(LegionClientSide legion, MasterHex hex, List<CreatureType> recruits) voidhandleCarries(int carryDamage, Set<String> carryTargets) choose carry targetvoida Battle startbooleanmake masterboard moves for current player in the Gamevoidmuster()make recruits for current playerpickColor(List<PlayerColor> colors, List<PlayerColor> favoriteColors) pick a color of legion markerspick an engagement to resolvepickEntrySide(MasterHex hex, Legion legion, Set<EntrySide> entrySides) pick an entry sidepickMarker(Set<String> markerIds, String preferredShortColor) pick a legion markerpickStrikePenalty(List<String> choices) pick an optional strike penaltyvoidpick one reinforcement for legionvoidretryFailedBattleMoves(List<CritterMove> bestMoveOrder) Try another move for creatures whose moves failed.voidsetVariant(Variant variant) booleansplit()make splits for current player.booleansplitCallback(Legion parent, Legion child) continue making splits.booleanmake battle strikes for legionsummonAngel(Legion summoner, List<Legion> possibleDonors) choose whether to summon an angel or archangel
-
Method Details
-
setVariant
-
masterMove
boolean masterMove()make masterboard moves for current player in the Game -
split
boolean split()make splits for current player. Return true if done -
splitCallback
-
muster
void muster()make recruits for current player -
reinforce
pick one reinforcement for legion -
flee
-
concede
-
strike
make battle strikes for legion -
initBattle
void initBattle()a Battle start -
battleMove
List<CritterMove> battleMove()return a list of battle moves for the active legion -
cleanupBattle
void cleanupBattle()a Battle is finished -
retryFailedBattleMoves
Try another move for creatures whose moves failed. -
pickEntrySide
-
pickEngagement
MasterHex pickEngagement()pick an engagement to resolve -
acquireAngel
choose whether to acquire an angel or archangel -
summonAngel
choose whether to summon an angel or archangel -
pickColor
pick a color of legion markers -
pickMarker
-
handleCarries
-
pickStrikePenalty
-
getVariantRecruitHint
CreatureType getVariantRecruitHint(LegionClientSide legion, MasterHex hex, List<CreatureType> recruits) -
getCaretaker
Caretaker getCaretaker()
-