mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 03:38:01 +00:00
- Improve AI for Scry when X payment is necessary. (#6506)
This commit is contained in:
@@ -4,6 +4,7 @@ import java.util.Map;
|
|||||||
|
|
||||||
import com.google.common.base.Predicates;
|
import com.google.common.base.Predicates;
|
||||||
|
|
||||||
|
import forge.ai.ComputerUtilCost;
|
||||||
import forge.ai.ComputerUtilMana;
|
import forge.ai.ComputerUtilMana;
|
||||||
import forge.ai.SpecialCardAi;
|
import forge.ai.SpecialCardAi;
|
||||||
import forge.ai.SpellAbilityAi;
|
import forge.ai.SpellAbilityAi;
|
||||||
@@ -48,6 +49,15 @@ public class ScryAi extends SpellAbilityAi {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ("X".equals(sa.getParam("ScryNum")) && sa.getSVar("X").equals("Count$xPaid")) {
|
||||||
|
int xPay = ComputerUtilCost.getMaxXValue(sa, ai, sa.isTrigger());
|
||||||
|
if (xPay == 0) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
sa.getRootAbility().setXManaCostPaid(xPay);
|
||||||
|
}
|
||||||
|
|
||||||
return mandatory || sa.isTargetNumberValid();
|
return mandatory || sa.isTargetNumberValid();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -165,6 +175,14 @@ public class ScryAi extends SpellAbilityAi {
|
|||||||
randomReturn = sa.isTargetNumberValid();
|
randomReturn = sa.isTargetNumberValid();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ("X".equals(sa.getParam("ScryNum")) && sa.getSVar("X").equals("Count$xPaid")) {
|
||||||
|
int xPay = ComputerUtilCost.getMaxXValue(sa, ai, sa.isTrigger());
|
||||||
|
if (xPay == 0) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
sa.getRootAbility().setXManaCostPaid(xPay);
|
||||||
|
}
|
||||||
|
|
||||||
return randomReturn;
|
return randomReturn;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user