@Override public PlayAdditionalLandsAllEffect copy() { return new PlayAdditionalLandsAllEffect(this); }
public RitesOfFlourishing(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{2}{G}"); // At the beginning of each player's draw step, that player draws an additional card. this.addAbility(new RitesOfFlourishingAbility()); // Each player may play an additional land on each of their turns. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new PlayAdditionalLandsAllEffect())); }
public StormCauldron(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{5}"); // Each player may play an additional land during each of their turns. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new PlayAdditionalLandsAllEffect())); // Whenever a land is tapped for mana, return it to its owner's hand. Effect effect = new ReturnToHandTargetEffect(); effect.setText("return it to its owner's hand"); this.addAbility(new TapLandForManaAllTriggeredAbility(effect, false, true)); }
public GhirapurOrrery(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{4}"); // Each player may play an additional land on each of their turns. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new PlayAdditionalLandsAllEffect())); // At the beginning of each player's upkeep, if that player has no cards in hand, that player draws three cards. this.addAbility(new ConditionalInterveningIfTriggeredAbility( new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new DrawCardTargetEffect(3), TargetController.ANY, false, true), new GhirapurOrreryCondition(), "At the beginning of each player's upkeep, if that player has no cards in hand, that player draws three cards.")); }
public NayaPlane() { this.setName("Plane - Naya"); this.setExpansionSetCodeForImage("PCA"); // You may play any number of lands on each of your turns Ability ability = new SimpleStaticAbility(Zone.COMMAND, new PlayAdditionalLandsAllEffect(Integer.MAX_VALUE)); this.getAbilities().add(ability); // Active player can roll the planar die: Whenever you roll {CHAOS}, target red, green or white creature you control gets +1/+1 until end of turn for each land you control DynamicValue dynamicValue = new PermanentsOnBattlefieldCount(StaticFilters.FILTER_CONTROLLED_PERMANENT_LANDS); Effect chaosEffect = new BoostTargetEffect(dynamicValue, dynamicValue, Duration.EndOfTurn); Target chaosTarget = new TargetControlledCreaturePermanent(1, 1, filter, false); List<Effect> chaosEffects = new ArrayList<>(); chaosEffects.add(chaosEffect); List<Target> chaosTargets = new ArrayList<>(); chaosTargets.add(chaosTarget); ActivateIfConditionActivatedAbility chaosAbility = new ActivateIfConditionActivatedAbility(Zone.COMMAND, new RollPlanarDieEffect(chaosEffects, chaosTargets), new GenericManaCost(0), MainPhaseStackEmptyCondition.instance); chaosAbility.addWatcher(new PlanarRollWatcher()); this.getAbilities().add(chaosAbility); chaosAbility.setMayActivate(TargetController.ANY); this.getAbilities().add(new SimpleStaticAbility(Zone.ALL, new PlanarDieRollCostIncreasingEffect(chaosAbility.getOriginalId()))); } }