[LCC] Implement Storm Fleet Negotiator (#11513)

This commit is contained in:
arcox 2023-12-05 20:27:00 -05:00 committed by GitHub
parent 4c251f5c73
commit d5c03ddb0b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 53 additions and 0 deletions

View file

@ -0,0 +1,51 @@
package mage.cards.s;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.AttacksTriggeredAbility;
import mage.abilities.dynamicvalue.common.ParleyCount;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.common.DrawCardAllEffect;
import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.AbilityWord;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.game.permanent.token.MapToken;
/**
* @author
*/
public final class StormFleetNegotiator extends CardImpl {
public StormFleetNegotiator(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{U}");
this.subtype.add(SubType.SIREN);
this.subtype.add(SubType.PIRATE);
this.power = new MageInt(2);
this.toughness = new MageInt(2);
// Flying
this.addAbility(FlyingAbility.getInstance());
// Parley Whenever Storm Fleet Negotiator attacks, each player reveals the top card of their library. For each nonland card revealed this way, you create a Map token. Then each player draws a card.
Ability ability = new AttacksTriggeredAbility(new CreateTokenEffect(
new MapToken(), ParleyCount.getInstance(), true, false
).setText("each player reveals the top card of their library. " +
"For each nonland card revealed this way, you create a Map token"));
ability.addEffect(new DrawCardAllEffect(1).concatBy("Then"));
this.addAbility(ability.setAbilityWord(AbilityWord.PARLEY));
}
private StormFleetNegotiator(final StormFleetNegotiator card) {
super(card);
}
@Override
public StormFleetNegotiator copy() {
return new StormFleetNegotiator(this);
}
}

View file

@ -2,6 +2,7 @@
package mage.sets;
import mage.cards.ExpansionSet;
import mage.cards.s.StormFleetNegotiator;
import mage.constants.Rarity;
import mage.constants.SetType;
@ -240,6 +241,7 @@ public final class LostCavernsOfIxalanCommander extends ExpansionSet {
cards.add(new SetCardInfo("Sorin, Lord of Innistrad", 289, Rarity.MYTHIC, mage.cards.s.SorinLordOfInnistrad.class));
cards.add(new SetCardInfo("Spectral Sailor", 172, Rarity.UNCOMMON, mage.cards.s.SpectralSailor.class));
cards.add(new SetCardInfo("Stonybrook Banneret", 173, Rarity.COMMON, mage.cards.s.StonybrookBanneret.class));
cards.add(new SetCardInfo("Storm Fleet Negotiator", 78, Rarity.RARE, StormFleetNegotiator.class));
cards.add(new SetCardInfo("Strionic Resonator", 116, Rarity.RARE, mage.cards.s.StrionicResonator.class));
cards.add(new SetCardInfo("Sulfur Falls", 354, Rarity.RARE, mage.cards.s.SulfurFalls.class));
cards.add(new SetCardInfo("Sunken Hollow", 355, Rarity.RARE, mage.cards.s.SunkenHollow.class));