Package net.sf.colossus.ai
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
continue making splits. Return true if done. -
muster
void muster()make recruits for current player -
reinforce
pick one reinforcement for legion -
flee
choose whether legion should flee from enemy -
concede
choose whether legion should concede to enemy -
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
pick an entry side -
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
pick a legion marker -
handleCarries
choose carry target -
pickStrikePenalty
pick an optional strike penalty -
getVariantRecruitHint
CreatureType getVariantRecruitHint(LegionClientSide legion, MasterHex hex, List<CreatureType> recruits) -
getCaretaker
Caretaker getCaretaker()
-