foul-magics/Mage.Sets/src/mage/cards/p/PrairieStream.java
2021-02-02 17:07:37 -05:00

54 lines
1.9 KiB
Java

package mage.cards.p;
import java.util.UUID;
import mage.abilities.common.EntersBattlefieldAbility;
import mage.abilities.condition.Condition;
import mage.abilities.condition.InvertCondition;
import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition;
import mage.abilities.decorator.ConditionalOneShotEffect;
import mage.abilities.effects.common.TapSourceEffect;
import mage.abilities.mana.BlueManaAbility;
import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.ComparisonType;
import mage.constants.SuperType;
import mage.filter.common.FilterLandPermanent;
/**
*
* @author fireshoes
*/
public final class PrairieStream extends CardImpl {
private static final FilterLandPermanent filter = new FilterLandPermanent();
static {
filter.add(SuperType.BASIC.getPredicate());
}
public PrairieStream(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.LAND},"");
this.subtype.add(SubType.PLAINS);
this.subtype.add(SubType.ISLAND);
// Prairie Stream enters the battlefield tapped unless you control two or more basic lands.
Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1));
String abilityText = "tapped unless you control two or more basic lands";
this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText));
this.addAbility(new WhiteManaAbility());
this.addAbility(new BlueManaAbility());
}
private PrairieStream(final PrairieStream card) {
super(card);
}
@Override
public PrairieStream copy() {
return new PrairieStream(this);
}
}