[CMR] Implemented Kangee's Lieutenant

This commit is contained in:
Evan Kranzler 2020-11-03 19:11:00 -05:00
parent cff9f45330
commit 4a5bf4a6dc
2 changed files with 62 additions and 0 deletions

View file

@ -0,0 +1,61 @@
package mage.cards.k;
import mage.MageInt;
import mage.abilities.common.AttacksTriggeredAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.continuous.BoostAllEffect;
import mage.abilities.keyword.EncoreAbility;
import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.AbilityPredicate;
import mage.filter.predicate.permanent.AttackingPredicate;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class KangeesLieutenant extends CardImpl {
private static final FilterCreaturePermanent filter
= new FilterCreaturePermanent("attacking creatures with flying");
static {
filter.add(AttackingPredicate.instance);
filter.add(new AbilityPredicate(FlyingAbility.class));
}
public KangeesLieutenant(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{W}");
this.subtype.add(SubType.BIRD);
this.subtype.add(SubType.SOLDIER);
this.power = new MageInt(1);
this.toughness = new MageInt(1);
// Flying
this.addAbility(FlyingAbility.getInstance());
// Whenever Kangee's Lieutenant attacks, attacking creatures with flying get +1/+1 until end of turn.
this.addAbility(new AttacksTriggeredAbility(new BoostAllEffect(
1, 1, Duration.EndOfTurn, filter, false
), false));
// Encore {5}{W}
this.addAbility(new EncoreAbility(new ManaCostsImpl<>("{5}{W}")));
}
private KangeesLieutenant(final KangeesLieutenant card) {
super(card);
}
@Override
public KangeesLieutenant copy() {
return new KangeesLieutenant(this);
}
}

View file

@ -126,6 +126,7 @@ public final class CommanderLegends extends ExpansionSet {
cards.add(new SetCardInfo("Jeweled Lotus", 319, Rarity.MYTHIC, mage.cards.j.JeweledLotus.class)); cards.add(new SetCardInfo("Jeweled Lotus", 319, Rarity.MYTHIC, mage.cards.j.JeweledLotus.class));
cards.add(new SetCardInfo("Kamahl's Will", 238, Rarity.RARE, mage.cards.k.KamahlsWill.class)); cards.add(new SetCardInfo("Kamahl's Will", 238, Rarity.RARE, mage.cards.k.KamahlsWill.class));
cards.add(new SetCardInfo("Kamahl, Heart of Krosa", 237, Rarity.MYTHIC, mage.cards.k.KamahlHeartOfKrosa.class)); cards.add(new SetCardInfo("Kamahl, Heart of Krosa", 237, Rarity.MYTHIC, mage.cards.k.KamahlHeartOfKrosa.class));
cards.add(new SetCardInfo("Kangee's Lieutenant", 26, Rarity.COMMON, mage.cards.k.KangeesLieutenant.class));
cards.add(new SetCardInfo("Karametra, God of Harvests", 522, Rarity.MYTHIC, mage.cards.k.KarametraGodOfHarvests.class)); cards.add(new SetCardInfo("Karametra, God of Harvests", 522, Rarity.MYTHIC, mage.cards.k.KarametraGodOfHarvests.class));
cards.add(new SetCardInfo("Kediss, Emberclaw Familiar", 188, Rarity.UNCOMMON, mage.cards.k.KedissEmberclawFamiliar.class)); cards.add(new SetCardInfo("Kediss, Emberclaw Familiar", 188, Rarity.UNCOMMON, mage.cards.k.KedissEmberclawFamiliar.class));
cards.add(new SetCardInfo("Keeper of the Accord", 27, Rarity.RARE, mage.cards.k.KeeperOfTheAccord.class)); cards.add(new SetCardInfo("Keeper of the Accord", 27, Rarity.RARE, mage.cards.k.KeeperOfTheAccord.class));