public WildOnslaught(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{3}{G}"); // Kicker {4} (You may pay an additional {4} as you cast this spell.) this.addAbility(new KickerAbility("{4}")); // Put a +1/+1 counter on each creature you control. If this spell was kicked, put two +1/+1 counters on each creature you control instead. this.getSpellAbility().addEffect(new ConditionalOneShotEffect( new AddCountersAllEffect(CounterType.P1P1.createInstance(2), StaticFilters.FILTER_CONTROLLED_CREATURE), new AddCountersAllEffect(CounterType.P1P1.createInstance(), StaticFilters.FILTER_CONTROLLED_CREATURE), KickedCondition.instance, "Put a +1/+1 counter on each creature you control. If this spell was kicked, put two +1/+1 counters on each creature you control instead.")); }
public BellowingAegisaur(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{5}{W}"); this.subtype.add(SubType.DINOSAUR); this.power = new MageInt(3); this.toughness = new MageInt(5); // Enrage - Whenever Bellowing Aegisaur is dealt damage, put a +1/+1 counter on each other creature you control. Ability ability = new DealtDamageToSourceTriggeredAbility(Zone.BATTLEFIELD, new AddCountersAllEffect(CounterType.P1P1.createInstance(), filter), false, true); this.addAbility(ability); }
public MidnightBanshee(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{B}{B}{B}"); this.subtype.add(SubType.SPIRIT); this.power = new MageInt(5); this.toughness = new MageInt(5); this.addAbility(WitherAbility.getInstance()); // At the beginning of your upkeep, put a -1/-1 counter on each nonblack creature. this.addAbility(new BeginningOfUpkeepTriggeredAbility(new AddCountersAllEffect(CounterType.M1M1.createInstance(), filter), TargetController.YOU, false)); }
public SteelOverseer(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT,CardType.CREATURE},"{2}"); this.subtype.add(SubType.CONSTRUCT); this.power = new MageInt(1); this.toughness = new MageInt(1); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersAllEffect(CounterType.P1P1.createInstance(), filter), new TapSourceCost())); }
public AkuDjinn(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{B}{B}"); this.subtype.add(SubType.DJINN); this.power = new MageInt(5); this.toughness = new MageInt(6); // Trample this.addAbility(TrampleAbility.getInstance()); // At the beginning of your upkeep, put a +1/+1 counter on each creature each opponent controls. this.addAbility(new BeginningOfUpkeepTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), filter), TargetController.YOU, false)); }
public FangrenFirstborn(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}{G}{G}"); this.subtype.add(SubType.BEAST); this.power = new MageInt(4); this.toughness = new MageInt(2); // Whenever Fangren Firstborn attacks, put a +1/+1 counter on each attacking creature. this.addAbility(new AttacksTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), new FilterAttackingCreature()), false)); }
public PhalanxLeader(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{W}{W}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.SOLDIER); this.power = new MageInt(1); this.toughness = new MageInt(1); // <i>Heroic</i> Whenever you cast a spell that targets Phalanx Leader, put a +1/+1 counter on each creature you control. this.addAbility(new HeroicAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), new FilterControlledCreaturePermanent()))); }
public AbzanAscendancy(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{W}{B}{G}"); // When Abzan Ascendancy enters the battlefield, put a +1/+1 counter on each creature you control. this.addAbility(new EntersBattlefieldTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), StaticFilters.FILTER_CONTROLLED_CREATURE), false)); // Whenever a nontoken creature you control dies, create a 1/1 white Spirit creature token with flying. this.addAbility(new DiesCreatureTriggeredAbility(new CreateTokenEffect(new SpiritWhiteToken("KTK")), false, filter)); }
public TitaniasBoon(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{3}{G}"); // Put a +1/+1 counter on each creature you control. this.getSpellAbility().addEffect(new AddCountersAllEffect(CounterType.P1P1.createInstance(), new FilterControlledCreaturePermanent("creature you control"))); }
public CelestialAncient(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{W}{W}"); this.subtype.add(SubType.ELEMENTAL); this.power = new MageInt(3); this.toughness = new MageInt(3); // Flying this.addAbility(FlyingAbility.getInstance()); // Whenever you cast an enchantment spell, put a +1/+1 counter on each creature you control. this.addAbility(new SpellCastControllerTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), new FilterControlledCreaturePermanent()),filter, false)); }
public PrimevalProtector(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{10}{G}"); this.subtype.add(SubType.AVATAR); this.power = new MageInt(10); this.toughness = new MageInt(10); // Primeval Protector costs {1} less to cast for each creature your opponents control. Ability ability = new SimpleStaticAbility(Zone.ALL, new PrimevalProtectorCostReductionEffect()); ability.setRuleAtTheTop(true); this.addAbility(ability); // When Primeval Protector enters the battlefield, put +1/+1 counter on each other creature you control. this.addAbility(new EntersBattlefieldTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), filter), false)); }
public ThaliasLieutenant(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{W}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.SOLDIER); this.power = new MageInt(1); this.toughness = new MageInt(1); // When Thalia's Lieutenant enters the battlefield, put +1/+1 counter on each other Human you control. this.addAbility(new EntersBattlefieldTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), filter), false)); // Whenever another Human enters the battlefield under you control, put a +1/+1 counter on Thalia's Lieutenant. this.addAbility(new EntersBattlefieldAllTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), filter)); }
public Order66(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{7}{B}{B}"); // Put a bounty counter on each creature you don't control, then destroy all creatures you don't control. this.getSpellAbility().addEffect(new AddCountersAllEffect(CounterType.BOUNTY.createInstance(), filter)); this.getSpellAbility().addEffect(new DestroyAllEffect(filter)); }
public KiAdiMundi(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{G}{G}"); addSuperType(SuperType.LEGENDARY); this.subtype.add(SubType.CEREAN); this.subtype.add(SubType.JEDI); this.power = new MageInt(4); this.toughness = new MageInt(4); // When Ki-Adi-Mundi enters the battlefield, put a +1/+1 counter on each other creatures you control. this.addAbility(new EntersBattlefieldTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), filter))); // Meditate {1}{G} this.addAbility(new MeditateAbility(new ManaCostsImpl("{1}{G}"))); }
public Borborygmos(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{R}{R}{G}{G}"); addSuperType(SuperType.LEGENDARY); this.subtype.add(SubType.CYCLOPS); this.power = new MageInt(6); this.toughness = new MageInt(7); // Trample this.addAbility(TrampleAbility.getInstance()); // Whenever Borborygmos deals combat damage to a player, put a +1/+1 counter on each creature you control. this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), new FilterControlledCreaturePermanent()), false)); }
public MazirekKraulDeathPriest(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{B}{G}"); addSuperType(SuperType.LEGENDARY); this.subtype.add(SubType.INSECT); this.subtype.add(SubType.SHAMAN); this.power = new MageInt(2); this.toughness = new MageInt(2); // Flying this.addAbility(FlyingAbility.getInstance()); // Whenever a player sacrifices another permanent, put a +1/+1 counter on each creature you control. this.addAbility(new PlayerSacrificesPermanentTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), new FilterControlledCreaturePermanent()), false)); }
public OathOfAjani(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{G}{W}"); addSuperType(SuperType.LEGENDARY); // When Oath of Ajani enters the battlefield, put a +1/+1 counter on each creature you control. this.addAbility(new EntersBattlefieldTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), new FilterControlledCreaturePermanent()))); // Planeswalker spells you cast cost {1} less to cast. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostReductionControllerEffect(new FilterPlaneswalkerCard("Planeswalker spells"), 1))); }
public IndulgentAristocrat(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{B}"); this.subtype.add(SubType.VAMPIRE); this.power = new MageInt(1); this.toughness = new MageInt(1); // Lifelink this.addAbility(LifelinkAbility.getInstance()); // {2}, Sacrifice a creature: Put a +1/+1 counter on each Vampire you control. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersAllEffect(CounterType.P1P1.createInstance(), filter), new GenericManaCost(2)); ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))); this.addAbility(ability); }
public SporesowerThallid(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{G}{G}"); this.subtype.add(SubType.FUNGUS); this.power = new MageInt(4); this.toughness = new MageInt(4); // At the beginning of your upkeep, put a spore counter on each Fungus you control. this.addAbility(new BeginningOfUpkeepTriggeredAbility(new AddCountersAllEffect(CounterType.SPORE.createInstance(), filter), TargetController.YOU, false)); // Remove three spore counters from Sporesower Thallid: Create a 1/1 green Saproling creature token. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SaprolingToken()), new RemoveCountersSourceCost(CounterType.SPORE.createInstance(3)))); }
public DecreeOfSavagery(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{7}{G}{G}"); // Put four +1/+1 counters on each creature you control. this.getSpellAbility().addEffect(new AddCountersAllEffect(CounterType.P1P1.createInstance(4), new FilterControlledCreaturePermanent())); // Cycling {4}{G}{G} this.addAbility(new CyclingAbility(new ManaCostsImpl("{4}{G}{G}"))); // When you cycle Decree of Savagery, you may put four +1/+1 counters on target creature. Ability ability = new CycleTriggeredAbility(new AddCountersTargetEffect(CounterType.P1P1.createInstance(4)), true); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); }