mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 04:38:00 +00:00
- LifeInDanger AI: account for special cases with Worship and Elderscale Wurm
This commit is contained in:
@@ -32,13 +32,7 @@ import forge.game.GlobalRuleChange;
|
||||
import forge.game.ability.AbilityFactory;
|
||||
import forge.game.ability.AbilityUtils;
|
||||
import forge.game.ability.ApiType;
|
||||
import forge.game.card.Card;
|
||||
import forge.game.card.CardCollection;
|
||||
import forge.game.card.CardCollectionView;
|
||||
import forge.game.card.CardFactoryUtil;
|
||||
import forge.game.card.CardLists;
|
||||
import forge.game.card.CardUtil;
|
||||
import forge.game.card.CounterType;
|
||||
import forge.game.card.*;
|
||||
import forge.game.combat.Combat;
|
||||
import forge.game.combat.CombatUtil;
|
||||
import forge.game.cost.CostPayment;
|
||||
@@ -390,6 +384,18 @@ public class ComputerUtilCombat {
|
||||
return false;
|
||||
}
|
||||
|
||||
CardCollectionView otb = ai.getCardsIn(ZoneType.Battlefield);
|
||||
// Special cases:
|
||||
// AI can't lose in combat in presence of Worship (with creatures)
|
||||
if (!CardLists.filter(otb, CardPredicates.nameEquals("Worship")).isEmpty() && !ai.getCreaturesInPlay().isEmpty()) {
|
||||
return false;
|
||||
}
|
||||
// AI can't lose in combat in presence of Elderscale Wurm (at 7 life or more)
|
||||
if (!CardLists.filter(otb, CardPredicates.nameEquals("Elderscale Wurm")).isEmpty() && ai.getLife() >= 7) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
// check for creatures that must be blocked
|
||||
final List<Card> attackers = combat.getAttackersOf(ai);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user