mirror of
https://github.com/correl/mage.git
synced 2024-12-26 11:09:27 +00:00
- Fixed #6930
This commit is contained in:
parent
bfbb76fcf1
commit
b17150188f
1 changed files with 13 additions and 7 deletions
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
package mage.cards.n;
|
package mage.cards.n;
|
||||||
|
|
||||||
import java.util.LinkedHashSet;
|
import java.util.LinkedHashSet;
|
||||||
|
@ -36,7 +35,7 @@ import mage.players.Player;
|
||||||
public final class NissaNaturesArtisan extends CardImpl {
|
public final class NissaNaturesArtisan extends CardImpl {
|
||||||
|
|
||||||
public NissaNaturesArtisan(UUID ownerId, CardSetInfo setInfo) {
|
public NissaNaturesArtisan(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId,setInfo,new CardType[]{CardType.PLANESWALKER},"{4}{G}{G}");
|
super(ownerId, setInfo, new CardType[]{CardType.PLANESWALKER}, "{4}{G}{G}");
|
||||||
this.addSuperType(SuperType.LEGENDARY);
|
this.addSuperType(SuperType.LEGENDARY);
|
||||||
this.subtype.add(SubType.NISSA);
|
this.subtype.add(SubType.NISSA);
|
||||||
|
|
||||||
|
@ -45,14 +44,18 @@ public final class NissaNaturesArtisan extends CardImpl {
|
||||||
// +3: You gain 3 life.
|
// +3: You gain 3 life.
|
||||||
this.addAbility(new LoyaltyAbility(new GainLifeEffect(3), 3));
|
this.addAbility(new LoyaltyAbility(new GainLifeEffect(3), 3));
|
||||||
|
|
||||||
// -4: Reveal the top two cards of your library. Put all land cards from among them onto the battlefield and the rest into your hand.
|
// -4: Reveal the top two cards of your library. Put all land cards from among
|
||||||
|
// them onto the battlefield and the rest into your hand.
|
||||||
this.addAbility(new LoyaltyAbility(new NissaNaturesArtisanEffect(), -4));
|
this.addAbility(new LoyaltyAbility(new NissaNaturesArtisanEffect(), -4));
|
||||||
|
|
||||||
// -12: Creatures you control get +5/+5 and gain trample until end of turn.
|
// -12: Creatures you control get +5/+5 and gain trample until end of turn.
|
||||||
Effect effect = new BoostControlledEffect(5, 5, Duration.EndOfTurn);
|
Effect effect = new BoostControlledEffect(5, 5, Duration.EndOfTurn);
|
||||||
effect.setText("Creature you control get +5/+5");
|
effect.setText("Creature you control get +5/+5");
|
||||||
LoyaltyAbility ability = new LoyaltyAbility(effect, -12);
|
LoyaltyAbility ability = new LoyaltyAbility(effect, -12);
|
||||||
ability.addEffect(new GainAbilityControlledEffect(TrampleAbility.getInstance(), Duration.EndOfTurn));
|
Effect effect2 = new GainAbilityControlledEffect(
|
||||||
|
TrampleAbility.getInstance(), Duration.EndOfTurn);
|
||||||
|
effect2.setText("and gain trample until end of turn");
|
||||||
|
ability.addEffect(effect2);
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -70,7 +73,8 @@ class NissaNaturesArtisanEffect extends OneShotEffect {
|
||||||
|
|
||||||
public NissaNaturesArtisanEffect() {
|
public NissaNaturesArtisanEffect() {
|
||||||
super(Outcome.PutCardInPlay);
|
super(Outcome.PutCardInPlay);
|
||||||
staticText = "Reveal the top two cards of your library. Put all land cards from among them onto the battlefield and the rest into your hand";
|
staticText = "Reveal the top two cards of your library. Put all land cards "
|
||||||
|
+ "from among them onto the battlefield and the rest into your hand";
|
||||||
}
|
}
|
||||||
|
|
||||||
public NissaNaturesArtisanEffect(final NissaNaturesArtisanEffect effect) {
|
public NissaNaturesArtisanEffect(final NissaNaturesArtisanEffect effect) {
|
||||||
|
@ -88,11 +92,13 @@ class NissaNaturesArtisanEffect extends OneShotEffect {
|
||||||
if (!cards.isEmpty()) {
|
if (!cards.isEmpty()) {
|
||||||
controller.revealCards(sourceObject.getIdName(), cards, game);
|
controller.revealCards(sourceObject.getIdName(), cards, game);
|
||||||
Set<Card> toBattlefield = new LinkedHashSet<>();
|
Set<Card> toBattlefield = new LinkedHashSet<>();
|
||||||
for (Card card : cards.getCards(new FilterLandCard(), source.getSourceId(), source.getControllerId(), game)) {
|
for (Card card : cards.getCards(new FilterLandCard(),
|
||||||
|
source.getSourceId(), source.getControllerId(), game)) {
|
||||||
cards.remove(card);
|
cards.remove(card);
|
||||||
toBattlefield.add(card);
|
toBattlefield.add(card);
|
||||||
}
|
}
|
||||||
controller.moveCards(toBattlefield, Zone.BATTLEFIELD, source, game, false, false, true, null);
|
controller.moveCards(toBattlefield, Zone.BATTLEFIELD, source,
|
||||||
|
game, false, false, true, null);
|
||||||
controller.moveCards(cards, Zone.HAND, source, game);
|
controller.moveCards(cards, Zone.HAND, source, game);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
|
Loading…
Reference in a new issue