forked from External/mage
Cover non-universal type change effects that also say 'land'.
This commit is contained in:
parent
c7f92a093b
commit
370ce47303
5 changed files with 10 additions and 11 deletions
|
|
@ -3,12 +3,14 @@ package mage.cards.n;
|
||||||
import mage.ObjectColor;
|
import mage.ObjectColor;
|
||||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||||
import mage.abilities.common.SimpleStaticAbility;
|
import mage.abilities.common.SimpleStaticAbility;
|
||||||
|
import mage.abilities.effects.ContinuousEffect;
|
||||||
import mage.abilities.effects.common.ReturnToHandChosenControlledPermanentEffect;
|
import mage.abilities.effects.common.ReturnToHandChosenControlledPermanentEffect;
|
||||||
import mage.abilities.effects.common.continuous.BecomesCreatureAllEffect;
|
import mage.abilities.effects.common.continuous.BecomesCreatureAllEffect;
|
||||||
import mage.abilities.keyword.FirstStrikeAbility;
|
import mage.abilities.keyword.FirstStrikeAbility;
|
||||||
import mage.cards.CardImpl;
|
import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
|
import mage.constants.DependencyType;
|
||||||
import mage.constants.Duration;
|
import mage.constants.Duration;
|
||||||
import mage.filter.StaticFilters;
|
import mage.filter.StaticFilters;
|
||||||
import mage.filter.common.FilterControlledEnchantmentPermanent;
|
import mage.filter.common.FilterControlledEnchantmentPermanent;
|
||||||
|
|
@ -37,12 +39,14 @@ public final class NaturalEmergence extends CardImpl {
|
||||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new ReturnToHandChosenControlledPermanentEffect(filter), false));
|
this.addAbility(new EntersBattlefieldTriggeredAbility(new ReturnToHandChosenControlledPermanentEffect(filter), false));
|
||||||
|
|
||||||
// Lands you control are 2/2 creatures with first strike. They're still lands.
|
// Lands you control are 2/2 creatures with first strike. They're still lands.
|
||||||
this.addAbility(new SimpleStaticAbility(new BecomesCreatureAllEffect(
|
ContinuousEffect effect = new BecomesCreatureAllEffect(
|
||||||
new CreatureToken(
|
new CreatureToken(
|
||||||
2, 2, "2/2 creatures with first strike"
|
2, 2, "2/2 creatures with first strike"
|
||||||
).withAbility(FirstStrikeAbility.getInstance()), "lands",
|
).withAbility(FirstStrikeAbility.getInstance()), "lands",
|
||||||
StaticFilters.FILTER_CONTROLLED_PERMANENT_LANDS, Duration.WhileOnBattlefield, false
|
StaticFilters.FILTER_CONTROLLED_PERMANENT_LANDS, Duration.WhileOnBattlefield, false
|
||||||
)));
|
);
|
||||||
|
effect.getDependedToTypes().add(DependencyType.BecomeNonbasicLand);
|
||||||
|
this.addAbility(new SimpleStaticAbility(effect));
|
||||||
}
|
}
|
||||||
|
|
||||||
private NaturalEmergence(final NaturalEmergence card) {
|
private NaturalEmergence(final NaturalEmergence card) {
|
||||||
|
|
|
||||||
|
|
@ -50,6 +50,7 @@ class BecomesColorlessForestLandEffect extends ContinuousEffectImpl {
|
||||||
BecomesColorlessForestLandEffect() {
|
BecomesColorlessForestLandEffect() {
|
||||||
super(Duration.WhileOnBattlefield, Outcome.Detriment);
|
super(Duration.WhileOnBattlefield, Outcome.Detriment);
|
||||||
this.staticText = "Enchanted permanent is a colorless Forest land";
|
this.staticText = "Enchanted permanent is a colorless Forest land";
|
||||||
|
dependencyTypes.add(DependencyType.BecomeNonbasicLand);
|
||||||
dependencyTypes.add(DependencyType.BecomeForest);
|
dependencyTypes.add(DependencyType.BecomeForest);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
package mage.cards.u;
|
package mage.cards.u;
|
||||||
|
|
||||||
import mage.abilities.common.SimpleStaticAbility;
|
import mage.abilities.common.SimpleStaticAbility;
|
||||||
import mage.abilities.effects.ContinuousEffect;
|
|
||||||
import mage.abilities.effects.common.continuous.AddBasicLandTypeAllLandsEffect;
|
import mage.abilities.effects.common.continuous.AddBasicLandTypeAllLandsEffect;
|
||||||
import mage.cards.CardImpl;
|
import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
|
|
@ -19,9 +18,7 @@ public final class UrborgTombOfYawgmoth extends CardImpl {
|
||||||
this.supertype.add(SuperType.LEGENDARY);
|
this.supertype.add(SuperType.LEGENDARY);
|
||||||
|
|
||||||
// Each land is a Swamp in addition to its other land types.
|
// Each land is a Swamp in addition to its other land types.
|
||||||
ContinuousEffect effect = new AddBasicLandTypeAllLandsEffect(SubType.SWAMP);
|
this.addAbility(new SimpleStaticAbility(new AddBasicLandTypeAllLandsEffect(SubType.SWAMP)));
|
||||||
effect.getDependedToTypes().add(DependencyType.BecomeNonbasicLand);
|
|
||||||
this.addAbility(new SimpleStaticAbility(effect));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private UrborgTombOfYawgmoth(final UrborgTombOfYawgmoth card) {
|
private UrborgTombOfYawgmoth(final UrborgTombOfYawgmoth card) {
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,10 @@
|
||||||
package mage.cards.y;
|
package mage.cards.y;
|
||||||
|
|
||||||
import mage.abilities.common.SimpleStaticAbility;
|
import mage.abilities.common.SimpleStaticAbility;
|
||||||
import mage.abilities.effects.ContinuousEffect;
|
|
||||||
import mage.abilities.effects.common.continuous.AddBasicLandTypeAllLandsEffect;
|
import mage.abilities.effects.common.continuous.AddBasicLandTypeAllLandsEffect;
|
||||||
import mage.cards.CardImpl;
|
import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.CardType;
|
||||||
import mage.constants.DependencyType;
|
|
||||||
import mage.constants.SubType;
|
import mage.constants.SubType;
|
||||||
import mage.constants.SuperType;
|
import mage.constants.SuperType;
|
||||||
|
|
||||||
|
|
@ -23,9 +21,7 @@ public final class YavimayaCradleOfGrowth extends CardImpl {
|
||||||
this.supertype.add(SuperType.LEGENDARY);
|
this.supertype.add(SuperType.LEGENDARY);
|
||||||
|
|
||||||
// Each land is a Forest in addition to its other land types.
|
// Each land is a Forest in addition to its other land types.
|
||||||
ContinuousEffect effect = new AddBasicLandTypeAllLandsEffect(SubType.FOREST);
|
this.addAbility(new SimpleStaticAbility(new AddBasicLandTypeAllLandsEffect(SubType.FOREST)));
|
||||||
effect.getDependedToTypes().add(DependencyType.BecomeNonbasicLand);
|
|
||||||
this.addAbility(new SimpleStaticAbility(effect));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private YavimayaCradleOfGrowth(final YavimayaCradleOfGrowth card) {
|
private YavimayaCradleOfGrowth(final YavimayaCradleOfGrowth card) {
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,7 @@ public class AddBasicLandTypeAllLandsEffect extends ContinuousEffectImpl {
|
||||||
this.subType = subType;
|
this.subType = subType;
|
||||||
this.staticText = "Each land is " + subType.getIndefiniteArticle() + " "
|
this.staticText = "Each land is " + subType.getIndefiniteArticle() + " "
|
||||||
+ subType.getDescription() + " in addition to its other land types";
|
+ subType.getDescription() + " in addition to its other land types";
|
||||||
|
this.dependendToTypes.add(DependencyType.BecomeNonbasicLand);
|
||||||
switch (subType) {
|
switch (subType) {
|
||||||
case PLAINS:
|
case PLAINS:
|
||||||
this.dependencyTypes.add(DependencyType.BecomePlains);
|
this.dependencyTypes.add(DependencyType.BecomePlains);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue