[CLB] Implemented Gray Harbor Merfolk

This commit is contained in:
Evan Kranzler 2022-05-30 09:18:16 -04:00
parent 46507b5b09
commit f9a388fffa
2 changed files with 68 additions and 0 deletions

View file

@ -0,0 +1,67 @@
package mage.cards.g;
import mage.MageInt;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.condition.Condition;
import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition;
import mage.abilities.decorator.ConditionalContinuousEffect;
import mage.abilities.effects.common.continuous.BoostSourceEffect;
import mage.abilities.hint.ConditionHint;
import mage.abilities.hint.Hint;
import mage.abilities.keyword.CantBeBlockedSourceAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.TargetController;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterCreatureOrPlaneswalkerPermanent;
import mage.filter.predicate.mageobject.CommanderPredicate;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class GrayHarborMerfolk extends CardImpl {
private static final FilterPermanent filter = new FilterCreatureOrPlaneswalkerPermanent();
static {
filter.add(TargetController.YOU.getControllerPredicate());
filter.add(CommanderPredicate.instance);
}
private static final Condition condition = new PermanentsOnTheBattlefieldCondition(filter);
private static final Hint hint = new ConditionHint(
condition, "You control a commander that's a creature or planeswalker"
);
public GrayHarborMerfolk(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{U}");
this.subtype.add(SubType.MERFOLK);
this.subtype.add(SubType.ROGUE);
this.power = new MageInt(0);
this.toughness = new MageInt(3);
// Gray Harbor Merfolk can't be blocked.
this.addAbility(new CantBeBlockedSourceAbility());
// Gray Harbor Merfolk gets +2/+0 as long as you control a commander that's a creature or planeswalker.
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
new BoostSourceEffect(2, 0, Duration.WhileOnBattlefield), condition,
"{this} gets +2/+0 as long as you control a commander that's a creature or planeswalker"
)));
}
private GrayHarborMerfolk(final GrayHarborMerfolk card) {
super(card);
}
@Override
public GrayHarborMerfolk copy() {
return new GrayHarborMerfolk(this);
}
}

View file

@ -130,6 +130,7 @@ public final class CommanderLegendsBattleForBaldursGate extends ExpansionSet {
cards.add(new SetCardInfo("Goggles of Night", 74, Rarity.COMMON, mage.cards.g.GogglesOfNight.class));
cards.add(new SetCardInfo("Goliath Paladin", 21, Rarity.COMMON, mage.cards.g.GoliathPaladin.class));
cards.add(new SetCardInfo("Gorion, Wise Mentor", 276, Rarity.RARE, mage.cards.g.GorionWiseMentor.class));
cards.add(new SetCardInfo("Gray Harbor Merfolk", 75, Rarity.COMMON, mage.cards.g.GrayHarborMerfolk.class));
cards.add(new SetCardInfo("Gray Slaad", 129, Rarity.COMMON, mage.cards.g.GraySlaad.class));
cards.add(new SetCardInfo("Greatsword of Tyr", 22, Rarity.COMMON, mage.cards.g.GreatswordOfTyr.class));
cards.add(new SetCardInfo("Guardian Naga", 23, Rarity.COMMON, mage.cards.g.GuardianNaga.class));