CardFactoryUtil: Strive is a keyword now using better raise cost

This commit is contained in:
Hanmac
2016-07-26 07:52:16 +00:00
parent 35bba44c04
commit eee1e26bc2
2 changed files with 16 additions and 1 deletions

View File

@@ -1400,6 +1400,7 @@ public class Card extends GameEntity implements Comparable<Card> {
sbLong.append(keyword).append("\r\n");
} else if (keyword.startsWith("Sunburst") && hasStartOfKeyword("Modular")) {
} else if (keyword.startsWith("Modular") || keyword.startsWith("Soulshift") || keyword.startsWith("Bloodthirst")
|| keyword.startsWith("Strive")
|| keyword.startsWith("ETBReplacement") || keyword.startsWith("MayEffectFromOpeningHand")) {
} else if (keyword.startsWith("Provoke") || keyword.startsWith("Devour") || keyword.equals("Unleash")) {
sbLong.append(keyword + " (" + Keyword.getInstance(keyword).getReminderText() + ")");

View File

@@ -2532,6 +2532,9 @@ public class CardFactoryUtil {
else if (keyword.startsWith("Rampage")) {
addTriggerAbility(keyword, card, null);
}
else if (keyword.startsWith("Strive")) {
addStaticAbility(keyword, card, null);
}
else if (keyword.startsWith("Bushido")) {
addTriggerAbility(keyword, card, null);
}
@@ -3274,7 +3277,18 @@ public class CardFactoryUtil {
public static void addStaticAbility(final String keyword, final Card card, final KeywordsChange kws) {
final boolean intrinsic = kws == null;
if (keyword.equals("Unleash")) {
if (keyword.startsWith("Strive")) {
final String[] k = keyword.split(":");
final String manacost = k[1];
final String effect = "Mode$ RaiseCost | ValidCard$ Card.Self | Type$ Spell | Amount$ Strive | Cost$ "+ manacost +" | EffectZone$ All" +
" | Description$ Strive - CARDNAME costs " + ManaCostParser.parse(manacost) + " more to cast for each target beyond the first.";
StaticAbility st = card.addStaticAbility(effect);
st.setIntrinsic(intrinsic);
if (!intrinsic) {
kws.addStaticAbility(st);
}
} else if (keyword.equals("Unleash")) {
final String effect = "Mode$ Continuous | Affected$ Card.Self+counters_GE1_P1P1 | AddHiddenKeyword$ CARDNAME can't block.";
StaticAbility st = card.addStaticAbility(effect);