CardFactoryUtil.java add Blitz alt cost and static

This commit is contained in:
Northmoc
2022-04-10 13:16:30 -04:00
parent c2996b5576
commit 8645a29296

View File

@@ -2693,6 +2693,26 @@ public class CardFactoryUtil {
sa.setAlternativeCost(AlternativeCost.Bestow);
sa.setIntrinsic(intrinsic);
inst.addSpellAbility(sa);
} else if (keyword.startsWith("Blitz")) {
final String[] k = keyword.split(":");
final Cost blitzCost = new Cost(k[1], false);
final SpellAbility newSA = card.getFirstSpellAbility().copyWithDefinedCost(blitzCost);
final StringBuilder desc = new StringBuilder();
desc.append("Blitz ").append(blitzCost.toSimpleString()).append(" (");
desc.append(inst.getReminderText());
desc.append(")");
newSA.setDescription(desc.toString());
final StringBuilder sb = new StringBuilder();
sb.append(card.getName()).append(" (Blitz)");
newSA.setStackDescription(sb.toString());
newSA.setAlternativeCost(AlternativeCost.Blitz);
newSA.setIntrinsic(intrinsic);
inst.addSpellAbility(newSA);
} else if (keyword.startsWith("Class")) {
final String[] k = keyword.split(":");
final int level = Integer.valueOf(k[1]);
@@ -3442,6 +3462,18 @@ public class CardFactoryUtil {
StaticAbility st = StaticAbility.create(effect, state.getCard(), state, intrinsic);
st.setSVar("AffinityX", "Count$Valid " + t + ".YouCtrl");
inst.addStaticAbility(st);
} else if (keyword.startsWith("Blitz")) {
String effect = "Mode$ Continuous | Affected$ Card.Self+blitzed | AddKeyword$ Haste | AddTrigger$ Dies";
String trig = "Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | " +
"Execute$ TrigDraw | TriggerDescription$ When this creature dies, draw a card.";
String ab = "DB$ Draw | NumCards$ 1";
StaticAbility st = StaticAbility.create(effect, state.getCard(), state, intrinsic);
st.setSVar("Dies", trig);
st.setSVar("TrigDraw", ab);
inst.addStaticAbility(st);
} else if (keyword.equals("Changeling")) {
String effect = "Mode$ Continuous | EffectZone$ All | Affected$ Card.Self" +