public interface AI
Modifier and Type | Method and Description |
---|---|
CreatureType |
acquireAngel(Legion legion,
java.util.List<CreatureType> recruits)
choose whether to acquire an angel or archangel
|
java.util.List<CritterMove> |
battleMove()
return a list of battle moves for the active legion
|
void |
cleanupBattle()
a Battle is finished
|
boolean |
concede(Legion legion,
Legion enemy)
choose whether legion should concede to enemy
|
boolean |
flee(Legion legion,
Legion enemy)
choose whether legion should flee from enemy
|
Caretaker |
getCaretaker() |
CreatureType |
getVariantRecruitHint(LegionClientSide legion,
MasterHex hex,
java.util.List<CreatureType> recruits) |
void |
handleCarries(int carryDamage,
java.util.Set<java.lang.String> carryTargets)
choose carry target
|
void |
initBattle()
a Battle start
|
boolean |
masterMove()
make masterboard moves for current player in the Game
|
void |
muster()
make recruits for current player
|
PlayerColor |
pickColor(java.util.List<PlayerColor> colors,
java.util.List<PlayerColor> favoriteColors)
pick a color of legion markers
|
MasterHex |
pickEngagement()
pick an engagement to resolve
|
EntrySide |
pickEntrySide(MasterHex hex,
Legion legion,
java.util.Set<EntrySide> entrySides)
pick an entry side
|
java.lang.String |
pickMarker(java.util.Set<java.lang.String> markerIds,
java.lang.String preferredShortColor)
pick a legion marker
|
java.lang.String |
pickStrikePenalty(java.util.List<java.lang.String> choices)
pick an optional strike penalty
|
void |
reinforce(Legion legion)
pick one reinforcement for legion
|
void |
retryFailedBattleMoves(java.util.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 |
strike(Legion legion)
make battle strikes for legion
|
SummonInfo |
summonAngel(Legion summoner,
java.util.List<Legion> possibleDonors)
choose whether to summon an angel or archangel
|
void setVariant(Variant variant)
boolean masterMove()
boolean split()
boolean splitCallback(Legion parent, Legion child)
void muster()
void reinforce(Legion legion)
boolean strike(Legion legion)
void initBattle()
java.util.List<CritterMove> battleMove()
void cleanupBattle()
void retryFailedBattleMoves(java.util.List<CritterMove> bestMoveOrder)
EntrySide pickEntrySide(MasterHex hex, Legion legion, java.util.Set<EntrySide> entrySides)
MasterHex pickEngagement()
CreatureType acquireAngel(Legion legion, java.util.List<CreatureType> recruits)
SummonInfo summonAngel(Legion summoner, java.util.List<Legion> possibleDonors)
PlayerColor pickColor(java.util.List<PlayerColor> colors, java.util.List<PlayerColor> favoriteColors)
java.lang.String pickMarker(java.util.Set<java.lang.String> markerIds, java.lang.String preferredShortColor)
void handleCarries(int carryDamage, java.util.Set<java.lang.String> carryTargets)
java.lang.String pickStrikePenalty(java.util.List<java.lang.String> choices)
CreatureType getVariantRecruitHint(LegionClientSide legion, MasterHex hex, java.util.List<CreatureType> recruits)
Caretaker getCaretaker()