Merge branch 'averna' into 'master'

CMR: multi-Averna fix

See merge request core-developers/forge!3433
This commit is contained in:
Michael Kamensky
2020-11-25 14:33:49 +00:00

View File

@@ -1176,9 +1176,14 @@ public class CardFactoryUtil {
return doXMath(Integer.parseInt(sq[cc.hasThreshold() ? 1 : 2]), m, c); return doXMath(Integer.parseInt(sq[cc.hasThreshold() ? 1 : 2]), m, c);
} }
if (sq[0].contains("Averna")) { if (sq[0].contains("Averna")) {
if (cc.hasKeyword("As you cascade, you may put a land card from among the exiled cards onto the" + int kwcount = 0;
" battlefield tapped.")) { return 1; } for (String kw : cc.getKeywords()) {
else return 0; if (kw.equals("As you cascade, you may put a land card from among the exiled cards onto the " +
"battlefield tapped.")) {
kwcount++;
}
}
return kwcount;
} }
if (sq[0].startsWith("Kicked")) { if (sq[0].startsWith("Kicked")) {
return doXMath(Integer.parseInt(sq[c.getKickerMagnitude() > 0 ? 1 : 2]), m, c); return doXMath(Integer.parseInt(sq[c.getKickerMagnitude() > 0 ? 1 : 2]), m, c);
@@ -2368,9 +2373,9 @@ public class CardFactoryUtil {
SpellAbility dig = AbilityFactory.getAbility(abString, card); SpellAbility dig = AbilityFactory.getAbility(abString, card);
dig.setSVar("CascadeX", "Count$CardManaCost"); dig.setSVar("CascadeX", "Count$CardManaCost");
final String dbLandPut = "DB$ ChangeZone | ConditionCheckSVar$ X | ConditionSVarCompare$ EQ1" + final String dbLandPut = "DB$ ChangeZone | ConditionCheckSVar$ X | ConditionSVarCompare$ GE1" +
" | Hidden$ True | Origin$ Exile | Destination$ Battlefield | ChangeType$ Land.IsRemembered" + " | Hidden$ True | Origin$ Exile | Destination$ Battlefield | ChangeType$ Land.IsRemembered" +
" | ChangeNum$ 1 | Tapped$ True | ForgetChanged$ True" + " | ChangeNum$ X | Tapped$ True | ForgetChanged$ True" +
" | SelectPrompt$ You may select a land to put on the battlefield tapped"; " | SelectPrompt$ You may select a land to put on the battlefield tapped";
AbilitySub landPut = (AbilitySub)AbilityFactory.getAbility(dbLandPut, card); AbilitySub landPut = (AbilitySub)AbilityFactory.getAbility(dbLandPut, card);
landPut.setSVar("X", "Count$Averna"); landPut.setSVar("X", "Count$Averna");