public UrzasTower(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); this.subtype.add(SubType.URZAS, SubType.TOWER); // {T}: Add {C}. If you control an Urza's Mine and an Urza's Power-Plant, add {C}{C}{C} instead. Ability urzaManaAbility = new DynamicManaAbility(Mana.ColorlessMana(1), new UrzaTerrainValue(3), "Add {C}. If you control an Urza's Mine and an Urza's Power-Plant, add {C}{C}{C} instead"); this.addAbility(urzaManaAbility); }
public UrzasMine(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); this.subtype.add(SubType.URZAS, SubType.MINE); // {T}: Add {C}. If you control an Urza's Power-Plant and an Urza's Tower, add {C}{C} instead. Ability urzaManaAbility = new DynamicManaAbility(Mana.ColorlessMana(1), new UrzaTerrainValue(2), "Add {C}. If you control an Urza's Power-Plant and an Urza's Tower, add {C}{C} instead"); this.addAbility(urzaManaAbility); }
public UrzasPowerPlant(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); this.subtype.add(SubType.URZAS, SubType.POWER_PLANT); // {T}: Add {C}. If you control an Urza's Mine and an Urza's Tower, add {C}{C} instead. Ability urzaManaAbility = new DynamicManaAbility(Mana.ColorlessMana(1), new UrzaTerrainValue(2), "Add {C}. If you control an Urza's Mine and an Urza's Tower, add {C}{C} instead"); this.addAbility(urzaManaAbility); }
public SerrasSanctum(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); addSuperType(SuperType.LEGENDARY); DynamicManaAbility ability = new DynamicManaAbility(Mana.WhiteMana(1), new PermanentsOnBattlefieldCount(filter)); this.addAbility(ability); }
public ItlimocCradleOfTheSun(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); this.addSuperType(SuperType.LEGENDARY); // (Transforms from Growing Rites of Itlimoc.)/ this.nightCard = true; // {T}: Add {G}. this.addAbility(new GreenManaAbility()); // {T}: Add {G} for each creature you control. this.addAbility(new DynamicManaAbility(Mana.GreenMana(1), new PermanentsOnBattlefieldCount(filter))); }
public Cloudpost(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); this.subtype.add(SubType.LOCUS); // Cloudpost enters the battlefield tapped. this.addAbility(new EntersBattlefieldTappedAbility()); // {tap}: Add {C} for each Locus on the battlefield. this.addAbility(new DynamicManaAbility(Mana.ColorlessMana(1), new PermanentsOnBattlefieldCount(filter))); }
public CabalCoffers(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); // {2}, {T}: Add {B} for each Swamp you control. Ability ability = new DynamicManaAbility(Mana.BlackMana(1), new PermanentsOnBattlefieldCount(filter), new GenericManaCost(2)); ability.addCost(new TapSourceCost()); this.addAbility(ability); }
public ViridianJoiner(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{G}"); this.subtype.add(SubType.ELF); this.subtype.add(SubType.DRUID); this.power = new MageInt(1); this.toughness = new MageInt(2); // {tap}: Add an amount of {G} equal to Viridian Joiner's power. this.addAbility(new DynamicManaAbility(Mana.GreenMana(1), new SourcePermanentPowerCount())); }
public PriestOfTitania(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}"); this.subtype.add(SubType.ELF); this.subtype.add(SubType.DRUID); this.power = new MageInt(1); this.toughness = new MageInt(1); // {T}: Add {G} for each Elf on the battlefield. this.addAbility(new DynamicManaAbility(Mana.GreenMana(1), new PermanentsOnBattlefieldCount(filter))); }
public OvergrownBattlement(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}"); this.subtype.add(SubType.WALL); this.power = new MageInt(0); this.toughness = new MageInt(4); this.addAbility(DefenderAbility.getInstance()); this.addAbility(new DynamicManaAbility(Mana.GreenMana(1), new PermanentsOnBattlefieldCount(filter))); }
public RofellosLlanowarEmissary(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{G}{G}"); addSuperType(SuperType.LEGENDARY); this.subtype.add(SubType.ELF); this.subtype.add(SubType.DRUID); this.power = new MageInt(2); this.toughness = new MageInt(1); // {tap}: Add {G} for each Forest you control. this.addAbility(new DynamicManaAbility(Mana.GreenMana(1), new PermanentsOnBattlefieldCount(filter))); }
public GyreSage(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}"); this.subtype.add(SubType.ELF); this.subtype.add(SubType.DRUID); this.power = new MageInt(1); this.toughness = new MageInt(2); // Evolve (Whenever a creature enters the battlefield under your control, if that creature // has greater power or toughness than this creature, put a +1/+1 counter on this creature.) this.addAbility(new EvolveAbility()); //{T} : Add {G} for each +1/+1 counter on Gyre Sage. this.addAbility(new DynamicManaAbility(Mana.GreenMana(1), new CountersSourceCount(CounterType.P1P1))); }
public AxebaneGuardian(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{G}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.DRUID); this.power = new MageInt(0); this.toughness = new MageInt(3); // Defender this.addAbility(DefenderAbility.getInstance()); // {tap}: Add X mana in any combination of colors, where X is the number of creatures with defender you control. this.addAbility(new DynamicManaAbility(new Mana(0,0,0,0,0,0,1, 0), new PermanentsOnBattlefieldCount(filter), "Add X mana in any combination of colors, where X is the number of creatures with defender you control.")); }
public SanctumOfTheSun(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); this.addSuperType(SuperType.LEGENDARY); this.nightCard = true; // <i>(Transforms from Azor's Gateway.)</i> this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new InfoEffect("<i>(Transforms from Azor's Gateway.)</i>")).setRuleAtTheTop(true)); // {T}: Add X mana of any one color, where X is your life total. this.addAbility(new DynamicManaAbility(new Mana(0, 0, 0, 0, 0, 0, 1, 0), ControllerLifeCount.instance, new TapSourceCost(), "Add X mana of any one color, where X is is your life total", true)); }
public HarabazDruid(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.DRUID); this.subtype.add(SubType.ALLY); this.power = new MageInt(0); this.toughness = new MageInt(1); // {T}: Add X mana of any one color, where X is the number of Allies you control. this.addAbility(new DynamicManaAbility(new Mana(0,0,0,0,0,0,1, 0), new PermanentsOnBattlefieldCount(filter), new TapSourceCost(), "Add X mana of any one color, where X is the number of Allies you control", true)); }
public ElvishArchdruid(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}{G}"); this.subtype.add(SubType.ELF); this.subtype.add(SubType.DRUID); this.power = new MageInt(2); this.toughness = new MageInt(2); // Other Elf creatures you control get +1/+1. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filter, true))); // {T}: Add {G} for each Elf you control. this.addAbility(new DynamicManaAbility(Mana.GreenMana(1), new PermanentsOnBattlefieldCount(filterCount))); }
public CryptOfAgadeem(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); // Crypt of Agadeem enters the battlefield tapped. this.addAbility(new EntersBattlefieldTappedAbility()); // {T}: Add {B}. this.addAbility(new BlackManaAbility()); // {2}, {T}: Add {B} for each black creature card in your graveyard. DynamicManaAbility ability = new DynamicManaAbility(Mana.BlackMana(1), new CardsInControllerGraveyardCount(filter), new GenericManaCost(2)); ability.addCost(new TapSourceCost()); this.addAbility(ability); }
public MarwynTheNurturer(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{G}"); this.addSuperType(SuperType.LEGENDARY); this.subtype.add(SubType.ELF, SubType.DRUID); this.power = new MageInt(1); this.toughness = new MageInt(1); // Whenever another Elf enters the battlefield under your control, put a +1/+1 counter on Marwyn, the Nurturer. this.addAbility(new EntersBattlefieldControlledTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), filter)); // {T}: Add an amount of {G} equal to Marwyn's power. this.addAbility(new DynamicManaAbility(Mana.GreenMana(1), new SourcePermanentPowerCount(), "Add an amount of {G} equal to {this}'s power")); }
public LotusBlossom(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}"); // At the beginning of your upkeep, you may put a petal counter on Lotus Blossom. this.addAbility(new BeginningOfUpkeepTriggeredAbility(new AddCountersSourceEffect(CounterType.PETAL.createInstance(), true), TargetController.YOU, true)); // {tap}, Sacrifice Lotus Blossom: Add X mana of any one color, where X is the number of petal counters on Lotus Blossom. DynamicManaAbility ability = new DynamicManaAbility(new Mana(0, 0, 0, 0, 0, 0, 1, 0), new CountersSourceCount(CounterType.PETAL), new TapSourceCost(), "Add X mana of any one color, where X is the number of petal counters on {this}", true); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); }
public ShrineOfBoundlessGrowth (UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{3}"); // At the beginning of your upkeep or whenever you cast a green spell, put a charge counter on Shrine of Boundless Growth. this.addAbility(new OrTriggeredAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.CHARGE.createInstance()), new BeginningOfUpkeepTriggeredAbility(null, TargetController.YOU, false), new SpellCastControllerTriggeredAbility(null, filter, false))); // {T}, Sacrifice Shrine of Boundless Growth: Add {C} for each charge counter on Shrine of Boundless Growth. Ability ability = new DynamicManaAbility(Mana.ColorlessMana(1), new CountersSourceCount(CounterType.CHARGE), new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); }