mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-15 18:28:00 +00:00
- Improved ChooseSource AI handling spells.
This commit is contained in:
@@ -77,11 +77,15 @@ public class ChooseSourceAi extends SpellAiLogic {
|
||||
} else {
|
||||
objects.addAll(threatTgt.getTargetPlayers());
|
||||
}
|
||||
if (objects.contains(ai)) {
|
||||
return true;
|
||||
}
|
||||
if (!objects.contains(ai) || topStack.hasParam("NoPrevention")) {
|
||||
return false;
|
||||
}
|
||||
int dmg = AbilityFactory.calculateAmount(source, topStack.getParam("NumDmg"), topStack);
|
||||
if (ai.predictDamage(dmg, source, false) <= 0) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
if (!Singletons.getModel().getGame().getPhaseHandler().getPhase()
|
||||
.equals(PhaseType.COMBAT_DECLARE_BLOCKERS_INSTANT_ABILITY)) {
|
||||
return false;
|
||||
|
||||
@@ -163,10 +163,14 @@ public class ChooseSourceEffect extends SpellEffect {
|
||||
} else {
|
||||
objects.addAll(threatTgt.getTargetPlayers());
|
||||
}
|
||||
if (objects.contains(ai)) {
|
||||
chosen.add(topStack.getSourceCard());
|
||||
}
|
||||
if (!objects.contains(ai) || topStack.hasParam("NoPrevention")) {
|
||||
break;
|
||||
}
|
||||
int dmg = AbilityFactory.calculateAmount(source, topStack.getParam("NumDmg"), topStack);
|
||||
if (ai.predictDamage(dmg, source, false) <= 0) {
|
||||
break;
|
||||
}
|
||||
chosen.add(topStack.getSourceCard());
|
||||
} else {
|
||||
sourcesToChooseFrom = CardLists.filter(sourcesToChooseFrom, new Predicate<Card>() {
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user