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 legionvoid
a Battle is finishedboolean
choose whether legion should concede to enemyboolean
choose whether legion should flee from enemygetVariantRecruitHint
(LegionClientSide legion, MasterHex hex, List<CreatureType> recruits) void
handleCarries
(int carryDamage, Set<String> carryTargets) choose carry targetvoid
a Battle startboolean
make masterboard moves for current player in the Gamevoid
muster()
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 penaltyvoid
pick one reinforcement for legionvoid
retryFailedBattleMoves
(List<CritterMove> bestMoveOrder) Try another move for creatures whose moves failed.void
setVariant
(Variant variant) boolean
split()
make splits for current player.boolean
splitCallback
(Legion parent, Legion child) continue making splits.boolean
make 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()
-