mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 11:48:02 +00:00
- Implemented AI for Crater's Claws
This commit is contained in:
@@ -51,11 +51,15 @@ public class DamageDealAi extends DamageAiBase {
|
||||
final String damage = sa.getParam("NumDmg");
|
||||
int dmg = AbilityUtils.calculateAmount(sa.getHostCard(), damage, sa);
|
||||
|
||||
if (damage.equals("X") && sa.getSVar(damage).equals("Count$xPaid")) {
|
||||
if ((damage.equals("X") && sa.getSVar(damage).equals("Count$xPaid") ||
|
||||
sa.getHostCard().getName().equals("Crater's Claws"))) {
|
||||
// Set PayX here to maximum value.
|
||||
dmg = ComputerUtilMana.determineLeftoverMana(sa, ai);
|
||||
source.setSVar("PayX", Integer.toString(dmg));
|
||||
}
|
||||
if (sa.getHostCard().getName().equals("Crater's Claws") && ai.hasFerocious()) {
|
||||
dmg += 2;
|
||||
}
|
||||
String logic = sa.getParam("AILogic");
|
||||
|
||||
if ("DiscardLands".equals(logic)) {
|
||||
@@ -95,7 +99,8 @@ public class DamageDealAi extends DamageAiBase {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (damage.equals("X") && source.getSVar(damage).equals("Count$xPaid")) {
|
||||
if ((damage.equals("X") && source.getSVar(damage).equals("Count$xPaid")) ||
|
||||
sa.getHostCard().getName().equals("Crater's Claws")){
|
||||
// If I can kill my target by paying less mana, do it
|
||||
if (sa.usesTargeting() && !sa.getTargets().isTargetingAnyPlayer() && !sa.hasParam("DividedAsYouChoose")) {
|
||||
int actualPay = 0;
|
||||
@@ -106,6 +111,9 @@ public class DamageDealAi extends DamageAiBase {
|
||||
actualPay = adjDamage;
|
||||
}
|
||||
}
|
||||
if (sa.getHostCard().getName().equals("Crater's Claws") && ai.hasFerocious()) {
|
||||
actualPay = actualPay > 2 ? actualPay - 2 : 0;
|
||||
}
|
||||
source.setSVar("PayX", Integer.toString(actualPay));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user