- Added Taste of Paradise with pseudokicker structure

This commit is contained in:
Sol
2015-05-15 21:55:25 +00:00
parent 2c42c9bd76
commit c6a55f6af2
6 changed files with 37 additions and 5 deletions

View File

@@ -1785,8 +1785,7 @@ public class Card extends GameEntity implements Comparable<Card> {
|| keyword.startsWith("May be played") || keyword.startsWith("Conspire")
|| keyword.startsWith("Cascade") || keyword.startsWith("Wither")
|| (keyword.startsWith("Epic") && !sb.toString().contains("Epic"))
|| (keyword.startsWith("Split second") && !sb.toString().contains("Split second"))
|| (keyword.startsWith("Multikicker") && !sb.toString().contains("Multikicker"))) {
|| (keyword.startsWith("Split second") && !sb.toString().contains("Split second"))) {
sb.append(keyword).append("\r\n");
}
else if (keyword.equals("You may cast CARDNAME as though it had flash if you pay 2 more to cast it.")) {
@@ -1818,6 +1817,11 @@ public class Card extends GameEntity implements Comparable<Card> {
sb.append("Entwine ").append(cost.toSimpleString());
sb.append(" (Choose both if you pay the entwine cost.)");
sb.append("\r\n");
} else if (keyword.startsWith("Multikicker")) {
if (!keyword.endsWith("Generic")) {
final Cost cost = new Cost(keyword.substring(7), false);
sb.append("Multikicker " + cost.toSimpleString() + "\r\n");
}
} else if (keyword.startsWith("Kicker")) {
if (!keyword.endsWith("Generic")) {
final Cost cost = new Cost(keyword.substring(7), false);

View File

@@ -1372,6 +1372,9 @@ public class CardFactoryUtil {
if (sq[0].contains("TimesKicked")) {
return doXMath(c.getKickerMagnitude(), m, c);
}
if (sq[0].contains("TimesPseudokicked")) {
return doXMath(c.getPseudoKickerMagnitude(), m, c);
}
// Count$IfMainPhase.<numMain>.<numNotMain> // 7/10
if (sq[0].contains("IfMainPhase")) {
@@ -2107,10 +2110,14 @@ public class CardFactoryUtil {
for (String keyword : card.getKeywords()) {
if (keyword.startsWith("Multikicker")) {
final String[] k = keyword.split("kicker ");
String mkCost = k[1].split(":")[0];
final SpellAbility sa = card.getFirstSpellAbility();
sa.setMultiKickerManaCost(new ManaCost(new ManaCostParser(k[1])));
sa.addAnnounceVar("Multikicker");
sa.setMultiKickerManaCost(new ManaCost(new ManaCostParser(mkCost)));
if (k[1].endsWith("Generic")) {
sa.addAnnounceVar("Pseudo-multikicker");
} else {
sa.addAnnounceVar("Multikicker");
}
}
else if (keyword.startsWith("Replicate")) {
card.getFirstSpellAbility().addAnnounceVar("Replicate");