public NyleasEmissary(UUID ownerId) { super( ownerId, 168, "Nylea's Emissary", Rarity.UNCOMMON, new CardType[] {CardType.ENCHANTMENT, CardType.CREATURE}, "{3}{G}"); this.expansionSetCode = "THS"; this.subtype.add("Cat"); this.color.setGreen(true); this.power = new MageInt(3); this.toughness = new MageInt(3); // Bestow {5}{G} this.addAbility(new BestowAbility(this, "{5}{G}")); // Trample this.addAbility(TrampleAbility.getInstance()); // Enchanted creature gets +3/+3 and has trample. Ability ability = new SimpleStaticAbility( Zone.BATTLEFIELD, new BoostEnchantedEffect(3, 3, Duration.WhileOnBattlefield)); ability.addEffect( new GainAbilityAttachedEffect( TrampleAbility.getInstance(), AttachmentType.AURA, Duration.WhileOnBattlefield, "and has trample")); this.addAbility(ability); }
public SunriseSovereign(UUID ownerId) { super( ownerId, 192, "Sunrise Sovereign", Rarity.RARE, new CardType[] {CardType.CREATURE}, "{5}{R}"); this.expansionSetCode = "LRW"; this.subtype.add("Giant"); this.subtype.add("Warrior"); this.color.setRed(true); this.power = new MageInt(5); this.toughness = new MageInt(5); // Other Giant creatures you control get +2/+2 and have trample. this.addAbility( new SimpleStaticAbility( Constants.Zone.BATTLEFIELD, new BoostControlledEffect(2, 2, Constants.Duration.WhileOnBattlefield, filter, true))); this.addAbility( new SimpleStaticAbility( Constants.Zone.BATTLEFIELD, new GainAbilityControlledEffect( TrampleAbility.getInstance(), Constants.Duration.WhileOnBattlefield, filter, true))); }
public KolaghanForerunners(UUID ownerId) { super( ownerId, 144, "Kolaghan Forerunners", Rarity.UNCOMMON, new CardType[] {CardType.CREATURE}, "{2}{R}"); this.expansionSetCode = "DTK"; this.subtype.add("Human"); this.subtype.add("Berserker"); this.power = new MageInt(0); this.toughness = new MageInt(3); // Trample this.addAbility(TrampleAbility.getInstance()); // Kolaghan Forerunners' power is equal to the number of creatures you control. Effect effect = new SetPowerSourceEffect( new PermanentsOnBattlefieldCount( new FilterControlledCreaturePermanent("creatures you control")), Duration.EndOfGame); this.addAbility(new SimpleStaticAbility(Zone.ALL, effect)); // Dash {2}{R} <i.(You may cast this spell for its dash cost. If you do it gains haste and it's // returned to its owner's hand at the beginning of the next end step.)</i> this.addAbility(new DashAbility(this, "{2}{R}")); }
public SwordOfVengeance(UUID ownerId) { super( ownerId, 216, "Sword of Vengeance", Rarity.RARE, new CardType[] {CardType.ARTIFACT}, "{3}"); this.expansionSetCode = "M11"; this.subtype.add("Equipment"); this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3))); this.addAbility( new SimpleStaticAbility( Zone.BATTLEFIELD, new GainAbilityAttachedEffect( FirstStrikeAbility.getInstance(), AttachmentType.EQUIPMENT))); this.addAbility( new SimpleStaticAbility( Zone.BATTLEFIELD, new GainAbilityAttachedEffect(TrampleAbility.getInstance(), AttachmentType.EQUIPMENT))); this.addAbility( new SimpleStaticAbility( Zone.BATTLEFIELD, new GainAbilityAttachedEffect( VigilanceAbility.getInstance(), AttachmentType.EQUIPMENT))); this.addAbility( new SimpleStaticAbility( Zone.BATTLEFIELD, new GainAbilityAttachedEffect(HasteAbility.getInstance(), AttachmentType.EQUIPMENT))); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(2, 0))); }
public SoulOfNewPhyrexia(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[] {CardType.ARTIFACT, CardType.CREATURE}, "{6}"); this.subtype.add("Avatar"); this.power = new MageInt(6); this.toughness = new MageInt(6); // Trample this.addAbility(TrampleAbility.getInstance()); // {5}: Permanents you control gain indestructible until end of turn. this.addAbility( new SimpleActivatedAbility( Zone.BATTLEFIELD, new GainAbilityControlledEffect( IndestructibleAbility.getInstance(), Duration.EndOfTurn), new GenericManaCost(5))); // {5}, Exile Soul of New Phyrexia from your graveyard: Permanents you control gain // indestructible until end of turn. Ability ability = new SimpleActivatedAbility( Zone.GRAVEYARD, new GainAbilityControlledEffect( IndestructibleAbility.getInstance(), Duration.EndOfTurn), new GenericManaCost(5)); ability.addCost(new ExileSourceFromGraveCost()); this.addAbility(ability); }
public BringerOfTheGreenDawn(UUID ownerId) { super( ownerId, 83, "Bringer of the Green Dawn", Rarity.RARE, new CardType[] {CardType.CREATURE}, "{7}{G}{G}"); this.expansionSetCode = "5DN"; this.subtype.add("Bringer"); this.color.setGreen(true); this.power = new MageInt(5); this.toughness = new MageInt(5); // You may pay {W}{U}{B}{R}{G} rather than pay Bringer of the Green Dawn's mana cost. this.addAbility(new AlternativeCostSourceAbility(new ManaCostsImpl("{W}{U}{B}{R}{G}"))); // Trample this.addAbility(TrampleAbility.getInstance()); // At the beginning of your upkeep,s you may put a 3/3 green Beast creature token onto the // battlefield. Ability ability = new BeginningOfUpkeepTriggeredAbility( Zone.BATTLEFIELD, new CreateTokenEffect(new BeastToken()), TargetController.YOU, true); this.addAbility(ability); }
public WoodlandWanderer(UUID ownerId) { super( ownerId, 198, "Woodland Wanderer", Rarity.RARE, new CardType[] {CardType.CREATURE}, "{3}{G}"); this.expansionSetCode = "BFZ"; this.subtype.add("Elemental"); this.power = new MageInt(2); this.toughness = new MageInt(2); // Vigilance this.addAbility(VigilanceAbility.getInstance()); // Trample this.addAbility(TrampleAbility.getInstance()); // <i>Converge</i> - Woodland Wanderer enters the battlefield with a +1/+1 counter on it for // each color of mana spent to cast it. this.addAbility( new EntersBattlefieldAbility( new AddCountersSourceEffect( CounterType.P1P1.createInstance(), ColorsOfManaSpentToCastCount.getInstance(), true), null, true, "<i>Converge</i> — {this} enters the battlefield with a +1/+1 counter on it for each color of mana spent to cast it.", null)); }
public ColossusOfSardia(UUID ownerId) { super( ownerId, 358, "Colossus of Sardia", Rarity.RARE, new CardType[] {CardType.ARTIFACT, CardType.CREATURE}, "{9}"); this.expansionSetCode = "5ED"; this.subtype.add("Golem"); this.power = new MageInt(9); this.toughness = new MageInt(9); // Trample this.addAbility(TrampleAbility.getInstance()); // Colossus of Sardia doesn't untap during your untap step. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SkipUntapSourceEffect())); // {9}: Untap Colossus of Sardia. Activate this ability only during your upkeep. Ability ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new UntapSourceEffect(), new ManaCostsImpl("{9}")); ability.addCost(new OnlyDuringUpkeepCost()); this.addAbility(ability); }
public MinaAndDennWildborn(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[] {CardType.CREATURE}, "{2}{R}{G}"); this.supertype.add("Legendary"); this.subtype.add("Elf"); this.subtype.add("Ally"); this.power = new MageInt(4); this.toughness = new MageInt(4); // You may play an additional land on each of your turns. this.addAbility( new SimpleStaticAbility( Zone.BATTLEFIELD, new PlayAdditionalLandsControllerEffect(1, Duration.WhileOnBattlefield))); // {R}{G}, Return a land you control to its owner's hand: Target creature gains trample until // end of turn. Ability ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{R}{G}")); ability.addCost( new ReturnToHandChosenControlledPermanentCost(new TargetControlledPermanent(filter))); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); }
public WorldspineWurm(UUID ownerId) { super( ownerId, 140, "Worldspine Wurm", Rarity.MYTHIC, new CardType[] {CardType.CREATURE}, "{8}{G}{G}{G}"); this.expansionSetCode = "RTR"; this.subtype.add("Wurm"); this.power = new MageInt(15); this.toughness = new MageInt(15); // Trample this.addAbility(TrampleAbility.getInstance()); // When Worldspine Wurm dies, put three 5/5 green Wurm creature tokens with trample onto the // battlefield. this.addAbility(new DiesTriggeredAbility(new CreateTokenEffect(new WorldspineWurmToken(), 3))); // When Worldspine Wurm is put into a graveyard from anywhere, shuffle it into its owner's // library. this.addAbility( new PutIntoGraveFromAnywhereSourceTriggeredAbility(new ShuffleIntoLibrarySourceEffect())); }
public BeastbreakerOfBalaGed(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[] {CardType.CREATURE}, "{1}{G}"); this.subtype.add("Human"); this.subtype.add("Warrior"); this.color.setGreen(true); this.power = new MageInt(2); this.toughness = new MageInt(2); // Level up {2}{G} ({2}{G}: Put a level counter on this. Level up only as a sorcery.) this.addAbility(new LevelUpAbility(new ManaCostsImpl("{2}{G}"))); Abilities<Ability> levelAbilities = new AbilitiesImpl<Ability>(); levelAbilities.add(TrampleAbility.getInstance()); this.addAbilities( LevelerCardBuilder.construct( // LEVEL 1-3 // 4/4 new LevelerCardBuilder.LevelAbility(1, 3, new AbilitiesImpl<Ability>(), 4, 4), // LEVEL 1-3 // 4/4 // Trample new LevelerCardBuilder.LevelAbility(4, -1, levelAbilities, 6, 6))); setMaxLevelCounters(4); }
public MolimoMaroSorcerer(UUID ownerId) { super( ownerId, 280, "Molimo, Maro-Sorcerer", Rarity.RARE, new CardType[] {CardType.CREATURE}, "{4}{G}{G}{G}"); this.expansionSetCode = "10E"; this.supertype.add("Legendary"); this.subtype.add("Elemental"); this.color.setGreen(true); this.power = new MageInt(0); this.toughness = new MageInt(0); // Trample this.addAbility(TrampleAbility.getInstance()); // Molimo, Maro-Sorcerer's power and toughness are each equal to the number of lands you // control. this.addAbility( new SimpleStaticAbility( Zone.ALL, new SetPowerToughnessSourceEffect( new PermanentsOnBattlefieldCount(filter), Duration.EndOfGame))); }
public KessigDireSwine(UUID ownerId) { super( ownerId, 214, "Kessig Dire Swine", Rarity.COMMON, new CardType[] {CardType.CREATURE}, "{4}{G}{G}"); this.expansionSetCode = "SOI"; this.subtype.add("Boar"); this.subtype.add("Horror"); this.power = new MageInt(6); this.toughness = new MageInt(6); // <i>Delirium</i> — Kessig Dire Swine has trample as long as there are four or more card // types among cards in your graveyard. this.addAbility( new SimpleStaticAbility( Zone.BATTLEFIELD, new ConditionalContinuousEffect( new GainAbilitySourceEffect( TrampleAbility.getInstance(), Duration.WhileOnBattlefield), new DeliriumCondition(), "<i>Delirium</i> — {this} has trample as long as there are four or more card types among cards in your graveyard"))); }
public Splinterfright(UUID ownerId) { super( ownerId, 205, "Splinterfright", Rarity.RARE, new CardType[] {CardType.CREATURE}, "{2}{G}"); this.expansionSetCode = "ISD"; this.subtype.add("Elemental"); this.color.setGreen(true); this.power = new MageInt(0); this.toughness = new MageInt(0); this.addAbility(TrampleAbility.getInstance()); // Splinterfright's power and toughness are each equal to the number of creature cards in your // graveyard. CardsInControllerGraveyardCount count = new CardsInControllerGraveyardCount(new FilterCreatureCard("creature cards")); this.addAbility( new SimpleStaticAbility( Zone.ALL, new SetPowerToughnessSourceEffect(count, Duration.EndOfGame))); // At the beginning of your upkeep, put the top two cards of your library into your graveyard. this.addAbility( new OnEventTriggeredAbility( EventType.UPKEEP_STEP_PRE, "beginning of your upkeep", new PutTopCardOfLibraryIntoGraveControllerEffect(2), false)); }
public BackwoodsSurvivalists(UUID ownerId) { super( ownerId, 150, "Backwoods Survivalists", Rarity.COMMON, new CardType[] {CardType.CREATURE}, "{3}{G}"); this.expansionSetCode = "EMN"; this.subtype.add("Human"); this.subtype.add("Warrior"); this.power = new MageInt(4); this.toughness = new MageInt(3); // <i>Delirium</i> — Backwoods Survivalists gets +1/+1 and has trample as long as there // are four or more card types among cards in your graveyard. ConditionalContinuousEffect effect = new ConditionalContinuousEffect( new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), DeliriumCondition.getInstance(), "<i>Delirium</i> — {this} gets +1/+1"); Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect); ability.addEffect( new ConditionalContinuousEffect( new GainAbilitySourceEffect(TrampleAbility.getInstance()), DeliriumCondition.getInstance(), "and has trample as long as there are four or more card types among cards in your graveyard.")); this.addAbility(ability); }
public ElderwoodScion(UUID ownerId) { super( ownerId, 88, "Elderwood Scion", Rarity.RARE, new CardType[] {CardType.CREATURE}, "{3}{G}{W}"); this.expansionSetCode = "PC2"; this.subtype.add("Elemental"); this.power = new MageInt(4); this.toughness = new MageInt(4); // Trample this.addAbility(TrampleAbility.getInstance()); // Lifelink this.addAbility(LifelinkAbility.getInstance()); // Spells you cast that target Elderwood Scion cost {2} less to cast. this.addAbility( new SimpleStaticAbility(Zone.BATTLEFIELD, new ElderwoodScionCostReductionEffect())); // Spells your opponents cast that target Elderwood Scion cost {2} more to cast. this.addAbility( new SimpleStaticAbility(Zone.BATTLEFIELD, new ElderwoodScionCostReductionEffect2())); }
public HuntersProwess(UUID ownerId) { super( ownerId, 124, "Hunter's Prowess", Rarity.RARE, new CardType[] {CardType.SORCERY}, "{4}{G}"); this.expansionSetCode = "BNG"; this.color.setGreen(true); // Until end of turn, target creature gets +3/+3 and gains trample and "Whenever this creature // deals combat damage to a player, draw that many cards." Effect effect = new BoostTargetEffect(3, 3, Duration.EndOfTurn); effect.setText("Until end of turn, target creature gets +3/+3"); this.getSpellAbility().addEffect(effect); effect = new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn); effect.setText("and gains trample"); this.getSpellAbility().addEffect(effect); Ability grantedAbility = new DealsCombatDamageToAPlayerTriggeredAbility(new HuntersProwessDrawEffect(), false, true); this.getSpellAbility() .addEffect( new GainAbilityTargetEffect( grantedAbility, Duration.EndOfTurn, "and \"Whenever this creature deals combat damage to a player, draw that many cards.\"")); this.getSpellAbility().addTarget(new TargetCreaturePermanent(true)); }
public RootbreakerWurm(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[] {CardType.CREATURE}, "{5}{G}{G}"); this.subtype.add("Wurm"); this.power = new MageInt(6); this.toughness = new MageInt(6); this.addAbility(TrampleAbility.getInstance()); }
public RhinoToken() { super("Rhino", "4/4 green Rhino creature token with trample"); cardType.add(CardType.CREATURE); color.setGreen(true); subtype.add("Rhino"); power = new MageInt(4); toughness = new MageInt(4); addAbility(TrampleAbility.getInstance()); }
ApeToken() { super("Ape", "a 3/3 green Ape creature with trample"); cardType.add(CardType.CREATURE); this.subtype.add("Ape"); color.setGreen(true); power = new MageInt(3); toughness = new MageInt(3); this.addAbility(TrampleAbility.getInstance()); }
public WorldspineWurmToken() { super("Wurm", "5/5 green Wurm creature tokens with trample"); cardType.add(CardType.CREATURE); color.setGreen(true); subtype.add("Wurm"); power = new MageInt(5); toughness = new MageInt(5); this.addAbility(TrampleAbility.getInstance()); }
public BodyOfJukai(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[] {CardType.CREATURE}, "{7}{G}{G}"); this.subtype.add("Spirit"); this.power = new MageInt(8); this.toughness = new MageInt(5); this.addAbility(TrampleAbility.getInstance()); this.addAbility(new SoulshiftAbility(8)); }
public MalachiteGolem(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[] {CardType.ARTIFACT, CardType.CREATURE}, "{6}"); this.subtype.add("Golem"); this.power = new MageInt(5); this.toughness = new MageInt(3); this.addAbility( new SimpleActivatedAbility( Zone.BATTLEFIELD, new GainAbilitySourceEffect(TrampleAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{1}{G}"))); }
public Enlarge(UUID ownerId) { super(ownerId, 170, "Enlarge", Rarity.UNCOMMON, new CardType[] {CardType.SORCERY}, "{3}{G}{G}"); this.expansionSetCode = "M14"; // Target creature gets +7/+7 and gains trample until end of turn. It must be blocked this turn // if able. this.getSpellAbility().addEffect(new BoostTargetEffect(7, 7, Duration.EndOfTurn)); this.getSpellAbility() .addEffect(new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn)); this.getSpellAbility().addEffect(new MustBeBlockedByAtLeastOneTargetEffect(Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); }
VoiceOfTheWoodsElementalToken() { super("Elemental", "7/7 green Elemental creature token with trample"); this.setOriginalExpansionSetCode("EVG"); cardType.add(CardType.CREATURE); subtype.add("Elemental"); color.setGreen(true); power = new MageInt(7); toughness = new MageInt(7); addAbility(TrampleAbility.getInstance()); }
public ShivanWumpus(UUID ownerId) { super(ownerId, 121, "Shivan Wumpus", Rarity.RARE, new CardType[] {CardType.CREATURE}, "{3}{R}"); this.expansionSetCode = "PLC"; this.subtype.add("Beast"); this.power = new MageInt(6); this.toughness = new MageInt(6); // Trample this.addAbility(TrampleAbility.getInstance()); // When Shivan Wumpus enters the battlefield, any player may sacrifice a land. If a player does, // put Shivan Wumpus on top of its owner's library. this.addAbility(new EntersBattlefieldTriggeredAbility(new ShivanWumpusEffect(), false)); }
public AutochthonWurm(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[] {CardType.CREATURE}, "{10}{G}{G}{G}{W}{W}"); this.subtype.add("Wurm"); this.power = new MageInt(9); this.toughness = new MageInt(14); // Convoke (Each creature you tap while casting this spell reduces its cost by {1} or by one // mana of that creature's color.) this.addAbility(new ConvokeAbility()); // Trample this.addAbility(TrampleAbility.getInstance()); }
public Carnassid(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[] {CardType.CREATURE}, "{4}{G}{G}"); this.subtype.add("Beast"); this.power = new MageInt(5); this.toughness = new MageInt(4); // Trample this.addAbility(TrampleAbility.getInstance()); // {1}{G}: Regenerate Carnassid. this.addAbility( new SimpleActivatedAbility( Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{1}{G}"))); }
public StomperCub(UUID ownerId) { super( ownerId, 210, "Stomper Cub", Rarity.COMMON, new CardType[] {CardType.CREATURE}, "{3}{G}{G}"); this.expansionSetCode = "ROE"; this.subtype.add("Beast"); this.power = new MageInt(5); this.toughness = new MageInt(3); this.addAbility(TrampleAbility.getInstance()); }
public RealitySmasher(UUID ownerId) { super(ownerId, 7, "Reality Smasher", Rarity.RARE, new CardType[] {CardType.CREATURE}, "{4}{C}"); this.expansionSetCode = "OGW"; this.subtype.add("Eldrazi"); this.power = new MageInt(5); this.toughness = new MageInt(5); // Trample this.addAbility(TrampleAbility.getInstance()); // Haste this.addAbility(HasteAbility.getInstance()); // Whenever Reality Smasher becomes the target of a spell an opponent controls, counter that // spell unless its controller discards a card. this.addAbility(new RealitySmasherTriggeredAbility()); }