@Override public BecomesCreatureAllEffect copy() { return new BecomesCreatureAllEffect(this); }
public LivingPlane(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{G}{G}"); this.addSuperType(SuperType.WORLD); // All lands are 1/1 creatures that are still lands. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BecomesCreatureAllEffect( new CreatureToken(1, 1), "lands", StaticFilters.FILTER_LANDS, Duration.WhileOnBattlefield, false))); }
public LivingLands(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{G}"); // All Forests are 1/1 creatures that are still lands. ContinuousEffect effect = new BecomesCreatureAllEffect( new CreatureToken(1, 1), "lands", filter, Duration.WhileOnBattlefield, false); effect.getDependencyTypes().add(DependencyType.BecomeForest); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); }
public NaturalAffinity(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{2}{G}"); // All lands become 2/2 creatures until end of turn. They're still lands. this.getSpellAbility().addEffect(new BecomesCreatureAllEffect( new CreatureToken(2, 2), "lands", StaticFilters.FILTER_LANDS, Duration.EndOfTurn, false)); }
public NaturesRevolt(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{G}{G}"); // All lands are 2/2 creatures that are still lands. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BecomesCreatureAllEffect( new CreatureToken(2, 2), "lands", new FilterLandPermanent(), Duration.WhileOnBattlefield, false))); }
public NaturalEmergence(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{R}{G}"); // When Natural Emergence enters the battlefield, return a red or green enchantment you control to its owner's hand. Effect effect = new ReturnToHandChosenControlledPermanentEffect(filter); effect.setText("return a red or green enchantment you control to its owner's hand"); this.addAbility(new EntersBattlefieldTriggeredAbility(effect, false)); // Lands you control are 2/2 creatures with first strike. They're still lands. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BecomesCreatureAllEffect( new CreatureToken(2, 2, "2/2 creatures with first strike").withAbility(FirstStrikeAbility.getInstance()), "lands", new FilterControlledLandPermanent("lands you control"), Duration.WhileOnBattlefield, false))); }
@Override public boolean apply(Game game, Ability source) { Player targetPlayer = game.getPlayer(getTargetPointer().getFirst(game, source)); if (targetPlayer != null) { FilterPermanent filter = new FilterLandPermanent(); filter.add(new ControllerIdPredicate(targetPlayer.getId())); game.addEffect(new BecomesCreatureAllEffect(new CreatureToken(3, 3), "lands", filter, Duration.EndOfTurn, false), source); return true; } return false; } }
public KormusBell(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{4}"); // All Swamps are 1/1 black creatures that are still lands. ContinuousEffect effect = new BecomesCreatureAllEffect( new CreatureToken(1, 1, "1/1 black creature").withColor("B"), "lands", new FilterPermanent(SubType.SWAMP, "Swamps"), Duration.WhileOnBattlefield, true); effect.setDependedToType(DependencyType.BecomeSwamp); effect.addDependedToType(DependencyType.BecomeIsland); effect.addDependedToType(DependencyType.BecomeMountain); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); }
public SylvanAwakening(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{2}{G}"); // Until your next turn, all lands you control become 2/2 Elemental creatures with reach, indestructible, and haste. They're still lands. this.getSpellAbility().addEffect(new BecomesCreatureAllEffect( new CreatureToken(2, 2, "2/2 Elemental creatures with reach, indestructible, and haste") .withSubType(SubType.ELEMENTAL) .withAbility(ReachAbility.getInstance()) .withAbility(IndestructibleAbility.getInstance()) .withAbility(HasteAbility.getInstance()), "lands", new FilterControlledLandPermanent("all lands you control"), Duration.UntilYourNextTurn, false) ); }
public LifeDeath(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{G}", "{1}{B}", SpellAbilityType.SPLIT); // Life // All lands you control become 1/1 creatures until end of turn. They're still lands. getLeftHalfCard().getSpellAbility().addEffect(new BecomesCreatureAllEffect( new CreatureToken(1, 1), "lands", new FilterControlledLandPermanent("lands you control"), Duration.EndOfTurn, false)); // Death // Return target creature card from your graveyard to the battlefield. You lose life equal to its converted mana cost. Target target = new TargetCardInYourGraveyard(1, StaticFilters.FILTER_CARD_CREATURE_YOUR_GRAVEYARD); getRightHalfCard().getSpellAbility().addTarget(target); getRightHalfCard().getSpellAbility().addEffect(new DeathEffect()); }
public TheloniteDruid(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{G}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.CLERIC); this.subtype.add(SubType.DRUID); this.power = new MageInt(1); this.toughness = new MageInt(1); // {1}{G}, {tap}, Sacrifice a creature: Forests you control become 2/3 creatures until end of turn. They're still lands. ContinuousEffect effect = new BecomesCreatureAllEffect( new CreatureToken(2, 3), "Forests", filter, Duration.EndOfTurn, false); effect.getDependencyTypes().add(DependencyType.BecomeForest); Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{1}{G}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))); this.addAbility(ability); }
public AmbushCommander(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{G}{G}"); this.subtype.add(SubType.ELF); this.power = new MageInt(2); this.toughness = new MageInt(2); // Forests you control are 1/1 green Elf creatures that are still lands. ContinuousEffect effect = new BecomesCreatureAllEffect( new CreatureToken(1, 1, "1/1 green Elf creature").withColor("G").withSubType(SubType.ELF), "lands", filter2, Duration.WhileOnBattlefield, true); effect.getDependencyTypes().add(DependencyType.BecomeForest); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); // {1}{G}, Sacrifice an Elf: Target creature gets +3/+3 until end of turn. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(3, 3, Duration.EndOfTurn), new ManaCostsImpl("{1}{G}")); ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(1, 1, filter, true))); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); }
public RudeAwakening(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{4}{G}"); // Choose one - this.getSpellAbility().getModes().setMinModes(1); this.getSpellAbility().getModes().setMaxModes(1); // Untap all lands you control; this.getSpellAbility().addEffect(new UntapAllLandsControllerEffect()); // or until end of turn, lands you control become 2/2 creatures that are still lands. Mode mode = new Mode(); mode.addEffect(new BecomesCreatureAllEffect( new CreatureToken(2, 2), "lands", new FilterControlledLandPermanent("lands you control"), Duration.EndOfTurn, false)); this.getSpellAbility().getModes().addMode(mode); // Entwine {2}{G} this.addAbility(new EntwineAbility("{2}{G}")); }
public Dragonshift(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{1}{U}{R}"); // Until end of turn, target creature you control becomes a blue and red Dragon with base power and toughness 4/4, loses all abilities, and gains flying. Effect effect = new BecomesCreatureTargetEffect( new CreatureToken(4, 4, "blue and red Dragon with base power and toughness 4/4") .withSubType(SubType.DRAGON) .withColor("UR") .withAbility(FlyingAbility.getInstance()), true, false, Duration.EndOfTurn); effect.setText("Until end of turn, target creature you control becomes a blue and red Dragon with base power and toughness 4/4, loses all abilities, and gains flying."); this.getSpellAbility().addEffect(effect); this.getSpellAbility().addTarget(new TargetControlledCreaturePermanent()); // Overload {3}{U}{U}{R}{R} Ability ability = new OverloadAbility(this, new LoseAllAbilitiesAllEffect(new FilterControlledCreaturePermanent(""), Duration.EndOfTurn), new ManaCostsImpl("{3}{U}{U}{R}{R}")); ability.addEffect(new BecomesCreatureAllEffect( new CreatureToken(4, 4, "blue and red Dragon with base power and toughness 4/4 and with flying") .withColor("UR") .withSubType(SubType.DRAGON) .withAbility(FlyingAbility.getInstance()), null, filter, Duration.EndOfTurn, true)); this.addAbility(ability); }