[VOC] Implemented Doom Weaver

This commit is contained in:
Evan Kranzler 2021-11-13 09:44:36 -05:00
parent 756e0b40b0
commit ac4d64a08f
2 changed files with 56 additions and 0 deletions

View file

@ -0,0 +1,55 @@
package mage.cards.d;
import mage.MageInt;
import mage.abilities.common.DiesSourceTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.SourcePermanentPowerCount;
import mage.abilities.effects.common.DrawCardSourceControllerEffect;
import mage.abilities.effects.common.continuous.GainAbilityPairedEffect;
import mage.abilities.keyword.ReachAbility;
import mage.abilities.keyword.SoulbondAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class DoomWeaver extends CardImpl {
private static final DynamicValue xValue = new SourcePermanentPowerCount();
public DoomWeaver(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{B}{B}");
this.subtype.add(SubType.SPIDER);
this.subtype.add(SubType.HORROR);
this.power = new MageInt(1);
this.toughness = new MageInt(8);
// Reach
this.addAbility(ReachAbility.getInstance());
// Soulbond
this.addAbility(new SoulbondAbility());
// As long as Doom Weaver is paired with another creature, each of those creatures has "When this creature dies, draw cards equal to its power."
this.addAbility(new SimpleStaticAbility(new GainAbilityPairedEffect(new DiesSourceTriggeredAbility(
new DrawCardSourceControllerEffect(xValue).setText("draw cards equal to its power")
).setTriggerPhrase("When this creature dies, "), "As long as {this} is paired with another creature, " +
"each of those creatures has \"When this creature dies, draw cards equal to its power.\"")));
}
private DoomWeaver(final DoomWeaver card) {
super(card);
}
@Override
public DoomWeaver copy() {
return new DoomWeaver(this);
}
}

View file

@ -54,6 +54,7 @@ public final class CrimsonVowCommander extends ExpansionSet {
cards.add(new SetCardInfo("Dark Impostor", 127, Rarity.RARE, mage.cards.d.DarkImpostor.class));
cards.add(new SetCardInfo("Darksteel Mutation", 84, Rarity.UNCOMMON, mage.cards.d.DarksteelMutation.class));
cards.add(new SetCardInfo("Distant Melody", 103, Rarity.COMMON, mage.cards.d.DistantMelody.class));
cards.add(new SetCardInfo("Doom Weaver", 34, Rarity.RARE, mage.cards.d.DoomWeaver.class));
cards.add(new SetCardInfo("Dovin, Grand Arbiter", 153, Rarity.MYTHIC, mage.cards.d.DovinGrandArbiter.class));
cards.add(new SetCardInfo("Drogskol Captain", 154, Rarity.UNCOMMON, mage.cards.d.DrogskolCaptain.class));
cards.add(new SetCardInfo("Ethereal Investigator", 12, Rarity.RARE, mage.cards.e.EtherealInvestigator.class));