- Updated the quest deck Riddler 4 and improved AI handling of Guilty Conscience.

This commit is contained in:
Sloth
2013-04-20 12:27:11 +00:00
parent 280a9a7d4c
commit acfd320657
2 changed files with 46 additions and 30 deletions

View File

@@ -1,27 +1,33 @@
[duel] [duel]
[metadata] [metadata]
Name=Riddler 4 Name=Riddler 4
Title=Riddler Title=Riddler
Difficulty=very hard Difficulty=very hard
Description=WR deck with mass damage spells, Stuffy Doll and Guilty Conscience Description=WR deck with mass damage spells, Stuffy Doll and Guilty Conscience
Icon=Riddler.jpg Icon=Riddler.jpg
Deck Type=constructed Deck Type=constructed
[main] [main]
4 Arid Mesa 4 Arid Mesa
4 Plateau 4 Plateau
4 Windswept Heath 4 Windswept Heath
3 Scalding Tarn 3 Flooded Strand
6 Plains|M11 1 Plains|M11
1 Mountain|M11 1 Mountain|M11
4 Spitemare 1 Mox Emerald
4 Swans of Bryn Argoll 1 Mox Sapphire
4 Stuffy Doll 1 Mox Jet
4 Wall of Hope 1 Mox Ruby
4 Guilty Conscience 1 Mox Pearl
4 Pyroclasm 4 Boros Reckoner
4 Volcanic Fallout 4 Spitemare
2 Tremor 2 Swans of Bryn Argoll
2 Chain Reaction 4 Stuffy Doll
4 Enlightened Tutor 2 Wall of Hope
2 Idyllic Tutor 4 Guilty Conscience
[sideboard] 4 Pyroclasm
4 Volcanic Fallout
2 Tremor
2 Chain Reaction
2 Idyllic Tutor
4 Blasphemous Act
[sideboard]

View File

@@ -395,10 +395,20 @@ public class AttachAi extends SpellAbilityAi {
private static Card attachAISpecificCardPreference(final SpellAbility sa, final List<Card> list, final boolean mandatory, private static Card attachAISpecificCardPreference(final SpellAbility sa, final List<Card> list, final boolean mandatory,
final Card attachSource) { final Card attachSource) {
// I know this isn't much better than Hardcoding, but some cards need it for now // I know this isn't much better than Hardcoding, but some cards need it for now
Player ai = sa.getActivatingPlayer(); final Player ai = sa.getActivatingPlayer();
Card chosen = null; Card chosen = null;
if ("Guilty Conscience".equals(sa.getSourceCard().getName())) { if ("Guilty Conscience".equals(sa.getSourceCard().getName())) {
List<Card> aiStuffies = CardLists.filter(list, Predicates.and(CardPredicates.isController(ai), CardPredicates.nameEquals("Stuffy Doll"))); List<Card> aiStuffies = CardLists.filter(list, new Predicate<Card>() {
@Override
public boolean apply(final Card c) {
// Don't enchant creatures that can survive
if (!c.getController().equals(ai)) {
return false;
}
final String name = c.getName();
return name.equals("Stuffy Doll") || name.equals("Boros Reckoner") || name.equals("Spitemare");
}
});
if (!aiStuffies.isEmpty()) { if (!aiStuffies.isEmpty()) {
chosen = aiStuffies.get(0); chosen = aiStuffies.get(0);
} else { } else {
@@ -407,7 +417,7 @@ public class AttachAi extends SpellAbilityAi {
@Override @Override
public boolean apply(final Card c) { public boolean apply(final Card c) {
// Don't enchant creatures that can survive // Don't enchant creatures that can survive
if (!c.canBeDestroyed() || c.getNetCombatDamage() < c.getNetDefense()) { if (!c.canBeDestroyed() || c.getNetCombatDamage() < c.getNetDefense() || c.isEnchantedBy("Guilty Conscience")) {
return false; return false;
} }
return true; return true;