forked from External/mage
[BRC] Implement Hexavus (#9702)
This commit is contained in:
parent
fd99b5b464
commit
f0eb9fcb81
2 changed files with 78 additions and 0 deletions
77
Mage.Sets/src/mage/cards/h/Hexavus.java
Normal file
77
Mage.Sets/src/mage/cards/h/Hexavus.java
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
package mage.cards.h;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.RemoveCounterCost;
|
||||
import mage.abilities.costs.common.RemoveCountersSourceCost;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.effects.common.counter.AddCountersTargetEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.counters.CounterType;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.AnotherPredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @author PurpleCrowbar
|
||||
*/
|
||||
public final class Hexavus extends CardImpl {
|
||||
|
||||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("another creature you control");
|
||||
private static final FilterCreaturePermanent filter2 = new FilterCreaturePermanent("another target creature");
|
||||
|
||||
static {
|
||||
filter.add(AnotherPredicate.instance);
|
||||
filter2.add(AnotherPredicate.instance);
|
||||
}
|
||||
|
||||
public Hexavus(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT, CardType.CREATURE}, "{6}");
|
||||
this.subtype.add(SubType.CONSTRUCT);
|
||||
this.power = new MageInt(0);
|
||||
this.toughness = new MageInt(0);
|
||||
|
||||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
||||
// Hexavus enters the battlefield with six +1/+1 counters on it.
|
||||
this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(
|
||||
CounterType.P1P1.createInstance(6), true
|
||||
), "with six +1/+1 counters on it"));
|
||||
|
||||
// {1}, Remove a +1/+1 counter from Hexavus: Put a flying counter on another target creature.
|
||||
Ability ability = new SimpleActivatedAbility(
|
||||
new AddCountersTargetEffect(CounterType.FLYING.createInstance()), new GenericManaCost(1)
|
||||
);
|
||||
ability.addCost(new RemoveCountersSourceCost(CounterType.P1P1.createInstance()));
|
||||
ability.addTarget(new TargetCreaturePermanent(filter2));
|
||||
this.addAbility(ability);
|
||||
|
||||
// {1}, Remove a counter from another creature you control: Put a +1/+1 counter on Hexavus.
|
||||
Ability ability2 = new SimpleActivatedAbility(
|
||||
new AddCountersSourceEffect(CounterType.P1P1.createInstance()), new GenericManaCost(1)
|
||||
);
|
||||
ability2.addCost(new RemoveCounterCost(new TargetPermanent(1, 1, filter, true)));
|
||||
this.addAbility(ability2);
|
||||
}
|
||||
|
||||
private Hexavus(final Hexavus card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Hexavus copy() {
|
||||
return new Hexavus(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -76,6 +76,7 @@ public final class TheBrothersWarCommander extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Hedron Archive", 142, Rarity.UNCOMMON, mage.cards.h.HedronArchive.class));
|
||||
cards.add(new SetCardInfo("Hellkite Igniter", 117, Rarity.RARE, mage.cards.h.HellkiteIgniter.class));
|
||||
cards.add(new SetCardInfo("Herald of Anguish", 108, Rarity.MYTHIC, mage.cards.h.HeraldOfAnguish.class));
|
||||
cards.add(new SetCardInfo("Hexavus", 14, Rarity.RARE, mage.cards.h.Hexavus.class));
|
||||
cards.add(new SetCardInfo("Ichor Wellspring", 143, Rarity.UNCOMMON, mage.cards.i.IchorWellspring.class));
|
||||
cards.add(new SetCardInfo("Idol of Oblivion", 144, Rarity.RARE, mage.cards.i.IdolOfOblivion.class));
|
||||
cards.add(new SetCardInfo("Indomitable Archangel", 72, Rarity.MYTHIC, mage.cards.i.IndomitableArchangel.class));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue