diff --git a/Mage.Sets/src/mage/sets/MediaInserts.java b/Mage.Sets/src/mage/sets/MediaInserts.java new file mode 100644 index 0000000000..b1f0150527 --- /dev/null +++ b/Mage.Sets/src/mage/sets/MediaInserts.java @@ -0,0 +1,47 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets; + +import mage.cards.ExpansionSet; +import mage.constants.SetType; + +import java.util.GregorianCalendar; + +public class MediaInserts extends ExpansionSet { + private static final MediaInserts fINSTANCE = new MediaInserts(); + + public static MediaInserts getInstance() { + return fINSTANCE; + } + + private MediaInserts() { + super("Media Inserts", "MBP", "mage.sets.mediainserts", new GregorianCalendar(1990, 1, 1).getTime(), SetType.EXPANSION); + this.hasBoosters = false; + this.hasBasicLands = false; + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/AbzanRunemark.java b/Mage.Sets/src/mage/sets/fatereforged/AbzanRunemark.java new file mode 100644 index 0000000000..164f4fdaa1 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/AbzanRunemark.java @@ -0,0 +1,93 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.ObjectColor; +import mage.abilities.Ability; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; +import mage.abilities.decorator.ConditionalContinousEffect; +import mage.abilities.effects.common.AttachEffect; +import mage.abilities.effects.common.continious.BoostEnchantedEffect; +import mage.abilities.effects.common.continious.GainAbilityAttachedEffect; +import mage.abilities.keyword.EnchantAbility; +import mage.abilities.keyword.VigilanceAbility; +import mage.cards.CardImpl; +import mage.constants.AttachmentType; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Outcome; +import mage.constants.Rarity; +import mage.constants.Zone; +import mage.filter.common.FilterControlledPermanent; +import mage.filter.predicate.Predicates; +import mage.filter.predicate.mageobject.ColorPredicate; +import mage.target.TargetPermanent; +import mage.target.common.TargetCreaturePermanent; + +/** + * + * @author fireshoes + */ +public class AbzanRunemark extends CardImpl { + + private static final FilterControlledPermanent filter = new FilterControlledPermanent("as long as you control a black or green permanent"); + + static { + filter.add(Predicates.or(new ColorPredicate(ObjectColor.GREEN), new ColorPredicate(ObjectColor.BLACK))); + } + + public AbzanRunemark(UUID ownerId) { + super(ownerId, 3, "Abzan Runemark", Rarity.COMMON, new CardType[]{CardType.ENCHANTMENT}, "{2}{W}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Aura"); + + // Enchant creature + TargetPermanent auraTarget = new TargetCreaturePermanent(); + this.getSpellAbility().addTarget(auraTarget); + this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature)); + Ability ability = new EnchantAbility(auraTarget.getTargetName()); + this.addAbility(ability); + // Enchanted creature gets +2/+2. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield))); + // Enchanted creature has vigilance as long as you control a black or green permanent. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, + new ConditionalContinousEffect(new GainAbilityAttachedEffect(VigilanceAbility.getInstance(), AttachmentType.AURA), + new PermanentsOnTheBattlefieldCondition(filter), "{this} has vigilance as long as you control a black or green permanent"))); + } + + public AbzanRunemark(final AbzanRunemark card) { + super(card); + } + + @Override + public AbzanRunemark copy() { + return new AbzanRunemark(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/AbzanSkycaptain.java b/Mage.Sets/src/mage/sets/fatereforged/AbzanSkycaptain.java new file mode 100644 index 0000000000..6162630330 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/AbzanSkycaptain.java @@ -0,0 +1,67 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.common.DiesTriggeredAbility; +import mage.abilities.effects.keyword.BolsterEffect; +import mage.abilities.keyword.FlyingAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class AbzanSkycaptain extends CardImpl { + + public AbzanSkycaptain(UUID ownerId) { + super(ownerId, 4, "Abzan Skycaptain", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{3}{W}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Bird"); + this.subtype.add("Soldier"); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + // Flying + this.addAbility(FlyingAbility.getInstance()); + // When Abzan Captain dies, bolster 2. + this.addAbility(new DiesTriggeredAbility(new BolsterEffect(2))); + } + + public AbzanSkycaptain(final AbzanSkycaptain card) { + super(card); + } + + @Override + public AbzanSkycaptain copy() { + return new AbzanSkycaptain(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/ArashinCleric.java b/Mage.Sets/src/mage/sets/fatereforged/ArashinCleric.java new file mode 100644 index 0000000000..d5a92c13b2 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/ArashinCleric.java @@ -0,0 +1,65 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.effects.common.GainLifeEffect; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class ArashinCleric extends CardImpl { + + public ArashinCleric(UUID ownerId) { + super(ownerId, 5, "Arashin Cleric", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{1}{W}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Human"); + this.subtype.add("Cleric"); + this.power = new MageInt(1); + this.toughness = new MageInt(3); + + // When Arashin Cleric enters the battlefield, gain 3 life. + this.addAbility(new EntersBattlefieldTriggeredAbility(new GainLifeEffect(3))); + + } + + public ArashinCleric(final ArashinCleric card) { + super(card); + } + + @Override + public ArashinCleric copy() { + return new ArashinCleric(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/ArchersOfQarsi.java b/Mage.Sets/src/mage/sets/fatereforged/ArchersOfQarsi.java new file mode 100644 index 0000000000..370ba36afa --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/ArchersOfQarsi.java @@ -0,0 +1,66 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.keyword.DefenderAbility; +import mage.abilities.keyword.ReachAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class ArchersOfQarsi extends CardImpl { + + public ArchersOfQarsi(UUID ownerId) { + super(ownerId, 124, "Archers of Qarsi", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{3}{G}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Naga"); + this.subtype.add("Archer"); + this.power = new MageInt(5); + this.toughness = new MageInt(2); + + // Defender + this.addAbility(DefenderAbility.getInstance()); + // Reach + this.addAbility(ReachAbility.getInstance()); + } + + public ArchersOfQarsi(final ArchersOfQarsi card) { + super(card); + } + + @Override + public ArchersOfQarsi copy() { + return new ArchersOfQarsi(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/AvenSkirmisher.java b/Mage.Sets/src/mage/sets/fatereforged/AvenSkirmisher.java new file mode 100644 index 0000000000..c8b35ad541 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/AvenSkirmisher.java @@ -0,0 +1,63 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.keyword.FlyingAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class AvenSkirmisher extends CardImpl { + + public AvenSkirmisher(UUID ownerId) { + super(ownerId, 6, "Aven Skirmisher", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{W}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Bird"); + this.subtype.add("Warrior"); + this.power = new MageInt(1); + this.toughness = new MageInt(1); + + // Flying + this.addAbility(FlyingAbility.getInstance()); + } + + public AvenSkirmisher(final AvenSkirmisher card) { + super(card); + } + + @Override + public AvenSkirmisher copy() { + return new AvenSkirmisher(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/DouseInGloom.java b/Mage.Sets/src/mage/sets/fatereforged/DouseInGloom.java new file mode 100644 index 0000000000..a9f3d3e16a --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/DouseInGloom.java @@ -0,0 +1,52 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; + +/** + * + * @author fireshoes + */ +public class DouseInGloom extends mage.sets.guildpact.DouseInGloom { + + public DouseInGloom(UUID ownerId) { + super(ownerId); + this.cardNumber = 68; + this.expansionSetCode = "FRF"; + } + + public DouseInGloom(final DouseInGloom card) { + super(card); + } + + @Override + public DouseInGloom copy() { + return new DouseInGloom(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/DragonBellMonk.java b/Mage.Sets/src/mage/sets/fatereforged/DragonBellMonk.java new file mode 100644 index 0000000000..6d7ba735db --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/DragonBellMonk.java @@ -0,0 +1,66 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.keyword.VigilanceAbility; +import mage.abilities.keyword.ProwessAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class DragonBellMonk extends CardImpl { + + public DragonBellMonk(UUID ownerId) { + super(ownerId, 10, "Dragon Bell Monk", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{2}{W}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Human"); + this.subtype.add("Monk"); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + // Vigilance + this.addAbility(VigilanceAbility.getInstance()); + // Prowess + this.addAbility(new ProwessAbility()); + } + + public DragonBellMonk(final DragonBellMonk card) { + super(card); + } + + @Override + public DragonBellMonk copy() { + return new DragonBellMonk(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/EnhancedAwareness.java b/Mage.Sets/src/mage/sets/fatereforged/EnhancedAwareness.java new file mode 100644 index 0000000000..73cace76fc --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/EnhancedAwareness.java @@ -0,0 +1,59 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.abilities.effects.common.DrawDiscardControllerEffect; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class EnhancedAwareness extends CardImpl { + + public EnhancedAwareness(UUID ownerId) { + super(ownerId, 33, "Enhanced Awareness", Rarity.COMMON, new CardType[]{CardType.INSTANT}, "{4}{U}"); + this.expansionSetCode = "FRF"; + + // Draw three cards, then discard a card. + this.getSpellAbility().addEffect(new DrawDiscardControllerEffect(3,1)); + + } + + public EnhancedAwareness(final EnhancedAwareness card) { + super(card); + } + + @Override + public EnhancedAwareness copy() { + return new EnhancedAwareness(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/FeralKrushok.java b/Mage.Sets/src/mage/sets/fatereforged/FeralKrushok.java new file mode 100644 index 0000000000..df98d5def2 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/FeralKrushok.java @@ -0,0 +1,58 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.MageInt; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class FeralKrushok extends CardImpl { + + public FeralKrushok(UUID ownerId) { + super(ownerId, 128, "Feral Krushok", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{4}{G}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Beast"); + this.power = new MageInt(5); + this.toughness = new MageInt(4); + } + + public FeralKrushok(final FeralKrushok card) { + super(card); + } + + @Override + public FeralKrushok copy() { + return new FeralKrushok(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/GoreSwine.java b/Mage.Sets/src/mage/sets/fatereforged/GoreSwine.java new file mode 100644 index 0000000000..18cdabdb95 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/GoreSwine.java @@ -0,0 +1,58 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.MageInt; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class GoreSwine extends CardImpl { + + public GoreSwine(UUID ownerId) { + super(ownerId, 103, "Gore Swine", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{2}{R}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Boar"); + this.power = new MageInt(4); + this.toughness = new MageInt(1); + } + + public GoreSwine(final GoreSwine card) { + super(card); + } + + @Override + public GoreSwine copy() { + return new GoreSwine(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/GreatHornKrushok.java b/Mage.Sets/src/mage/sets/fatereforged/GreatHornKrushok.java new file mode 100644 index 0000000000..1d0903e0f3 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/GreatHornKrushok.java @@ -0,0 +1,58 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.MageInt; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class GreatHornKrushok extends CardImpl { + + public GreatHornKrushok(UUID ownerId) { + super(ownerId, 13, "Great-Horn Krushok", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{4}{W}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Beast"); + this.power = new MageInt(3); + this.toughness = new MageInt(5); + } + + public GreatHornKrushok(final GreatHornKrushok card) { + super(card); + } + + @Override + public GreatHornKrushok copy() { + return new GreatHornKrushok(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/HuntTheWeak.java b/Mage.Sets/src/mage/sets/fatereforged/HuntTheWeak.java new file mode 100644 index 0000000000..4806afb729 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/HuntTheWeak.java @@ -0,0 +1,52 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; + +/** + * + * @author fireshoes + */ +public class HuntTheWeak extends mage.sets.magic2014.HuntTheWeak { + + public HuntTheWeak(UUID ownerId) { + super(ownerId); + this.cardNumber = 133; + this.expansionSetCode = "FRF"; + } + + public HuntTheWeak(final HuntTheWeak card) { + super(card); + } + + @Override + public HuntTheWeak copy() { + return new HuntTheWeak(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/JeskaiRunemark.java b/Mage.Sets/src/mage/sets/fatereforged/JeskaiRunemark.java new file mode 100644 index 0000000000..04980ca197 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/JeskaiRunemark.java @@ -0,0 +1,93 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.ObjectColor; +import mage.abilities.Ability; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; +import mage.abilities.decorator.ConditionalContinousEffect; +import mage.abilities.effects.common.AttachEffect; +import mage.abilities.effects.common.continious.BoostEnchantedEffect; +import mage.abilities.effects.common.continious.GainAbilityAttachedEffect; +import mage.abilities.keyword.EnchantAbility; +import mage.abilities.keyword.FlyingAbility; +import mage.cards.CardImpl; +import mage.constants.AttachmentType; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Outcome; +import mage.constants.Rarity; +import mage.constants.Zone; +import mage.filter.common.FilterControlledPermanent; +import mage.filter.predicate.Predicates; +import mage.filter.predicate.mageobject.ColorPredicate; +import mage.target.TargetPermanent; +import mage.target.common.TargetCreaturePermanent; + +/** + * + * @author fireshoes + */ +public class JeskaiRunemark extends CardImpl { + + private static final FilterControlledPermanent filter = new FilterControlledPermanent("as long as you control a red or white permanent"); + + static { + filter.add(Predicates.or(new ColorPredicate(ObjectColor.WHITE), new ColorPredicate(ObjectColor.RED))); + } + + public JeskaiRunemark(UUID ownerId) { + super(ownerId, 37, "Jeskai Runemark", Rarity.COMMON, new CardType[]{CardType.ENCHANTMENT}, "{2}{U}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Aura"); + + // Enchant creature + TargetPermanent auraTarget = new TargetCreaturePermanent(); + this.getSpellAbility().addTarget(auraTarget); + this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature)); + Ability ability = new EnchantAbility(auraTarget.getTargetName()); + this.addAbility(ability); + // Enchanted creature gets +2/+2. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield))); + // Enchanted creature has flying as long as you control a red or white permanent. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, + new ConditionalContinousEffect(new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA), + new PermanentsOnTheBattlefieldCondition(filter), "{this} has flying as long as you control a red or white permanent"))); + } + + public JeskaiRunemark(final JeskaiRunemark card) { + super(card); + } + + @Override + public JeskaiRunemark copy() { + return new JeskaiRunemark(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/LotusEyeMystics.java b/Mage.Sets/src/mage/sets/fatereforged/LotusEyeMystics.java new file mode 100644 index 0000000000..a7394d8533 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/LotusEyeMystics.java @@ -0,0 +1,79 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect; +import mage.abilities.keyword.ProwessAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; +import mage.filter.FilterCard; +import mage.filter.predicate.mageobject.CardTypePredicate; +import mage.target.common.TargetCardInYourGraveyard; + +/** + * + * @author fireshoes + */ +public class LotusEyeMystics extends CardImpl { + + private static final FilterCard filter = new FilterCard("enchantment card from your graveyard"); + + static { + filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); + } + + public LotusEyeMystics(UUID ownerId) { + super(ownerId, 17, "Lotus-Eye Mystics", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{3}{W}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Human"); + this.subtype.add("Monk"); + this.power = new MageInt(3); + this.toughness = new MageInt(2); + + // Prowess + this.addAbility(new ProwessAbility()); + // When Lotus-Eye Mystics enters the battlefield, return target enchantment card from your graveyard to your hand. + Ability ability = new EntersBattlefieldTriggeredAbility(new ReturnFromGraveyardToHandTargetEffect(), false); + ability.addTarget(new TargetCardInYourGraveyard(filter)); + this.addAbility(ability); + } + + public LotusEyeMystics(final LotusEyeMystics card) { + super(card); + } + + @Override + public LotusEyeMystics copy() { + return new LotusEyeMystics(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/LotusPathDjinn.java b/Mage.Sets/src/mage/sets/fatereforged/LotusPathDjinn.java new file mode 100644 index 0000000000..b873d85014 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/LotusPathDjinn.java @@ -0,0 +1,66 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.keyword.FlyingAbility; +import mage.abilities.keyword.ProwessAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class LotusPathDjinn extends CardImpl { + + public LotusPathDjinn(UUID ownerId) { + super(ownerId, 39, "Lotus Path Djinn", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{3}{U}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Djinn"); + this.subtype.add("Monk"); + this.power = new MageInt(2); + this.toughness = new MageInt(3); + + // Flying + this.addAbility(FlyingAbility.getInstance()); + // Prowess + this.addAbility(new ProwessAbility()); + } + + public LotusPathDjinn(final LotusPathDjinn card) { + super(card); + } + + @Override + public LotusPathDjinn copy() { + return new LotusPathDjinn(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/MarduRunemark.java b/Mage.Sets/src/mage/sets/fatereforged/MarduRunemark.java new file mode 100644 index 0000000000..147768321f --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/MarduRunemark.java @@ -0,0 +1,93 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.ObjectColor; +import mage.abilities.Ability; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; +import mage.abilities.decorator.ConditionalContinousEffect; +import mage.abilities.effects.common.AttachEffect; +import mage.abilities.effects.common.continious.BoostEnchantedEffect; +import mage.abilities.effects.common.continious.GainAbilityAttachedEffect; +import mage.abilities.keyword.EnchantAbility; +import mage.abilities.keyword.FirstStrikeAbility; +import mage.cards.CardImpl; +import mage.constants.AttachmentType; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Outcome; +import mage.constants.Rarity; +import mage.constants.Zone; +import mage.filter.common.FilterControlledPermanent; +import mage.filter.predicate.Predicates; +import mage.filter.predicate.mageobject.ColorPredicate; +import mage.target.TargetPermanent; +import mage.target.common.TargetCreaturePermanent; + +/** + * + * @author fireshoes + */ +public class MarduRunemark extends CardImpl { + + private static final FilterControlledPermanent filter = new FilterControlledPermanent("as long as you control a white or black permanent"); + + static { + filter.add(Predicates.or(new ColorPredicate(ObjectColor.WHITE), new ColorPredicate(ObjectColor.BLACK))); + } + + public MarduRunemark(UUID ownerId) { + super(ownerId, 107, "Mardu Runemark", Rarity.COMMON, new CardType[]{CardType.ENCHANTMENT}, "{2}{R}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Aura"); + + // Enchant creature + TargetPermanent auraTarget = new TargetCreaturePermanent(); + this.getSpellAbility().addTarget(auraTarget); + this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature)); + Ability ability = new EnchantAbility(auraTarget.getTargetName()); + this.addAbility(ability); + // Enchanted creature gets +2/+2. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield))); + // Enchanted creature has first strike as long as you control a white or black permanent. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, + new ConditionalContinousEffect(new GainAbilityAttachedEffect(FirstStrikeAbility.getInstance(), AttachmentType.AURA), + new PermanentsOnTheBattlefieldCondition(filter), "{this} has first strike as long as you control a white or black permanent"))); + } + + public MarduRunemark(final MarduRunemark card) { + super(card); + } + + @Override + public MarduRunemark copy() { + return new MarduRunemark(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/MonasteryMentor.java b/Mage.Sets/src/mage/sets/fatereforged/MonasteryMentor.java index 3003a47931..af9b3ca8f4 100644 --- a/Mage.Sets/src/mage/sets/fatereforged/MonasteryMentor.java +++ b/Mage.Sets/src/mage/sets/fatereforged/MonasteryMentor.java @@ -29,14 +29,15 @@ package mage.sets.fatereforged; import java.util.UUID; import mage.MageInt; -import mage.abilities.Ability; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.effects.common.CreateTokenEffect; import mage.abilities.keyword.ProwessAbility; -import mage.abilities.keyword.TrampleAbility; import mage.cards.CardImpl; import mage.constants.CardType; import mage.constants.Rarity; +import mage.filter.FilterSpell; +import mage.filter.predicate.Predicates; +import mage.filter.predicate.mageobject.CardTypePredicate; import mage.game.permanent.token.Token; /** @@ -44,6 +45,11 @@ import mage.game.permanent.token.Token; * @author fireshoes */ public class MonasteryMentor extends CardImpl { + + private static final FilterSpell filter = new FilterSpell("a noncreature spell"); + static { + filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); + } public MonasteryMentor(UUID ownerId) { super(ownerId, 20, "Monastery Mentor", Rarity.MYTHIC, new CardType[]{CardType.CREATURE}, "{2}{W}"); @@ -56,7 +62,7 @@ public class MonasteryMentor extends CardImpl { // Prowess this.addAbility(new ProwessAbility()); // Whenever you cast a noncreature spell, put a 1/1 white Monk creature token with prowess onto the battlefield. - this.addAbility(new SpellCastControllerTriggeredAbility(new CreateTokenEffect(new MonasteryMentorToken()), false)); + this.addAbility(new SpellCastControllerTriggeredAbility(new CreateTokenEffect(new MonasteryMentorToken()), filter, false)); } public MonasteryMentor(final MonasteryMentor card) { diff --git a/Mage.Sets/src/mage/sets/fatereforged/PilgrimOfTheFires.java b/Mage.Sets/src/mage/sets/fatereforged/PilgrimOfTheFires.java new file mode 100644 index 0000000000..255c84750f --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/PilgrimOfTheFires.java @@ -0,0 +1,65 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.keyword.FirstStrikeAbility; +import mage.abilities.keyword.TrampleAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class PilgrimOfTheFires extends CardImpl { + + public PilgrimOfTheFires(UUID ownerId) { + super(ownerId, 162, "Pilgrim of the Fires", Rarity.UNCOMMON, new CardType[]{CardType.ARTIFACT, CardType.CREATURE}, "{7}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Golem"); + this.power = new MageInt(6); + this.toughness = new MageInt(4); + + // First strike + this.addAbility(FirstStrikeAbility.getInstance()); + // Trample + this.addAbility(TrampleAbility.getInstance()); + } + + public PilgrimOfTheFires(final PilgrimOfTheFires card) { + super(card); + } + + @Override + public PilgrimOfTheFires copy() { + return new PilgrimOfTheFires(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/PressurePoint.java b/Mage.Sets/src/mage/sets/fatereforged/PressurePoint.java new file mode 100644 index 0000000000..e7ea5abb70 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/PressurePoint.java @@ -0,0 +1,61 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.abilities.effects.common.DrawCardSourceControllerEffect; +import mage.abilities.effects.common.TapTargetEffect; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class PressurePoint extends CardImpl { + + public PressurePoint(UUID ownerId) { + super(ownerId, 21, "Pressure Point", Rarity.COMMON, new CardType[]{CardType.INSTANT}, "{1}{W}"); + this.expansionSetCode = "FRF"; + + // Tap target creature. + this.getSpellAbility().addEffect(new TapTargetEffect()); + // Draw a card. + this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1)); + } + + public PressurePoint(final PressurePoint card) { + super(card); + } + + @Override + public PressurePoint copy() { + return new PressurePoint(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/Pyrotechnics.java b/Mage.Sets/src/mage/sets/fatereforged/Pyrotechnics.java new file mode 100644 index 0000000000..7578e98ccf --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/Pyrotechnics.java @@ -0,0 +1,52 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; + +/** + * + * @author fireshoes + */ +public class Pyrotechnics extends mage.sets.seventhedition.Pyrotechnics { + + public Pyrotechnics(UUID ownerId) { + super(ownerId); + this.cardNumber = 111; + this.expansionSetCode = "FRF"; + } + + public Pyrotechnics(final Pyrotechnics card) { + super(card); + } + + @Override + public Pyrotechnics copy() { + return new Pyrotechnics(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/Sandblast.java b/Mage.Sets/src/mage/sets/fatereforged/Sandblast.java new file mode 100644 index 0000000000..d2b497ee17 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/Sandblast.java @@ -0,0 +1,59 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.abilities.effects.common.DamageTargetEffect; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; +import mage.target.common.TargetAttackingOrBlockingCreature; + +/** + * + * @author fireshoes + */ +public class Sandblast extends CardImpl { + + public Sandblast(UUID ownerId) { + super(ownerId, 24, "Sandblast", Rarity.COMMON, new CardType[]{CardType.INSTANT}, "{2}{W}"); + this.expansionSetCode = "FRF"; + + // Sandblast deals 5 damage to target attacking or blocking creature. + getSpellAbility().addEffect(new DamageTargetEffect(5)); + getSpellAbility().addTarget(new TargetAttackingOrBlockingCreature()); } + + public Sandblast(final Sandblast card) { + super(card); + } + + @Override + public Sandblast copy() { + return new Sandblast(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/SultaiRunemark.java b/Mage.Sets/src/mage/sets/fatereforged/SultaiRunemark.java new file mode 100644 index 0000000000..535317e1ca --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/SultaiRunemark.java @@ -0,0 +1,93 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.ObjectColor; +import mage.abilities.Ability; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; +import mage.abilities.decorator.ConditionalContinousEffect; +import mage.abilities.effects.common.AttachEffect; +import mage.abilities.effects.common.continious.BoostEnchantedEffect; +import mage.abilities.effects.common.continious.GainAbilityAttachedEffect; +import mage.abilities.keyword.DeathtouchAbility; +import mage.abilities.keyword.EnchantAbility; +import mage.cards.CardImpl; +import mage.constants.AttachmentType; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Outcome; +import mage.constants.Rarity; +import mage.constants.Zone; +import mage.filter.common.FilterControlledPermanent; +import mage.filter.predicate.Predicates; +import mage.filter.predicate.mageobject.ColorPredicate; +import mage.target.TargetPermanent; +import mage.target.common.TargetCreaturePermanent; + +/** + * + * @author fireshoes + */ +public class SultaiRunemark extends CardImpl { + + private static final FilterControlledPermanent filter = new FilterControlledPermanent("as long as you control a green or blue permanent"); + + static { + filter.add(Predicates.or(new ColorPredicate(ObjectColor.GREEN), new ColorPredicate(ObjectColor.BLUE))); + } + + public SultaiRunemark(UUID ownerId) { + super(ownerId, 86, "Sultai Runemark", Rarity.COMMON, new CardType[]{CardType.ENCHANTMENT}, "{2}{B}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Aura"); + + // Enchant creature + TargetPermanent auraTarget = new TargetCreaturePermanent(); + this.getSpellAbility().addTarget(auraTarget); + this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature)); + Ability ability = new EnchantAbility(auraTarget.getTargetName()); + this.addAbility(ability); + // Enchanted creature gets +2/+2. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield))); + // Enchanted creature has deathtouch as long as you control a green or blue permanent. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, + new ConditionalContinousEffect(new GainAbilityAttachedEffect(DeathtouchAbility.getInstance(), AttachmentType.AURA), + new PermanentsOnTheBattlefieldCondition(filter), "{this} has deathtouch as long as you control a green or blue permanent"))); + } + + public SultaiRunemark(final SultaiRunemark card) { + super(card); + } + + @Override + public SultaiRunemark copy() { + return new SultaiRunemark(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/TemurRunemark.java b/Mage.Sets/src/mage/sets/fatereforged/TemurRunemark.java new file mode 100644 index 0000000000..aeb2a1f38b --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/TemurRunemark.java @@ -0,0 +1,93 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; +import mage.ObjectColor; +import mage.abilities.Ability; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; +import mage.abilities.decorator.ConditionalContinousEffect; +import mage.abilities.effects.common.AttachEffect; +import mage.abilities.effects.common.continious.BoostEnchantedEffect; +import mage.abilities.effects.common.continious.GainAbilityAttachedEffect; +import mage.abilities.keyword.EnchantAbility; +import mage.abilities.keyword.TrampleAbility; +import mage.cards.CardImpl; +import mage.constants.AttachmentType; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Outcome; +import mage.constants.Rarity; +import mage.constants.Zone; +import mage.filter.common.FilterControlledPermanent; +import mage.filter.predicate.Predicates; +import mage.filter.predicate.mageobject.ColorPredicate; +import mage.target.TargetPermanent; +import mage.target.common.TargetCreaturePermanent; + +/** + * + * @author fireshoes + */ +public class TemurRunemark extends CardImpl { + + private static final FilterControlledPermanent filter = new FilterControlledPermanent("as long as you control a blue or red permanent"); + + static { + filter.add(Predicates.or(new ColorPredicate(ObjectColor.RED), new ColorPredicate(ObjectColor.BLUE))); + } + + public TemurRunemark(UUID ownerId) { + super(ownerId, 140, "Temur Runemark", Rarity.COMMON, new CardType[]{CardType.ENCHANTMENT}, "{2}{G}"); + this.expansionSetCode = "FRF"; + this.subtype.add("Aura"); + + // Enchant creature + TargetPermanent auraTarget = new TargetCreaturePermanent(); + this.getSpellAbility().addTarget(auraTarget); + this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature)); + Ability ability = new EnchantAbility(auraTarget.getTargetName()); + this.addAbility(ability); + // Enchanted creature gets +2/+2. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield))); + // Enchanted creature has trample as long as you control a blue or red permanent. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, + new ConditionalContinousEffect(new GainAbilityAttachedEffect(TrampleAbility.getInstance(), AttachmentType.AURA), + new PermanentsOnTheBattlefieldCondition(filter), "{this} has trample as long as you control a blue or red permanent"))); + } + + public TemurRunemark(final TemurRunemark card) { + super(card); + } + + @Override + public TemurRunemark copy() { + return new TemurRunemark(this); + } +} diff --git a/Mage.Sets/src/mage/sets/fatereforged/TyphoidRats.java b/Mage.Sets/src/mage/sets/fatereforged/TyphoidRats.java new file mode 100644 index 0000000000..ac25180cb9 --- /dev/null +++ b/Mage.Sets/src/mage/sets/fatereforged/TyphoidRats.java @@ -0,0 +1,52 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.fatereforged; + +import java.util.UUID; + +/** + * + * @author fireshoes + */ +public class TyphoidRats extends mage.sets.innistrad.TyphoidRats { + + public TyphoidRats(UUID ownerId) { + super(ownerId); + this.cardNumber = 89; + this.expansionSetCode = "FRF"; + } + + public TyphoidRats(final TyphoidRats card) { + super(card); + } + + @Override + public TyphoidRats copy() { + return new TyphoidRats(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/Acquire.java b/Mage.Sets/src/mage/sets/mediainserts/Acquire.java new file mode 100644 index 0000000000..4fea2bf06d --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/Acquire.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class Acquire extends mage.sets.fifthdawn.Acquire { + + public Acquire(UUID ownerId) { + super(ownerId); + this.cardNumber = 83; + this.expansionSetCode = "MBP"; + } + + public Acquire(final Acquire card) { + super(card); + } + + @Override + public Acquire copy() { + return new Acquire(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/AjaniCallerOfThePride.java b/Mage.Sets/src/mage/sets/mediainserts/AjaniCallerOfThePride.java new file mode 100644 index 0000000000..0c4bf76b4b --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/AjaniCallerOfThePride.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class AjaniCallerOfThePride extends mage.sets.magic2013.AjaniCallerOfThePride { + + public AjaniCallerOfThePride(UUID ownerId) { + super(ownerId); + this.cardNumber = 72; + this.expansionSetCode = "MBP"; + } + + public AjaniCallerOfThePride(final AjaniCallerOfThePride card) { + super(card); + } + + @Override + public AjaniCallerOfThePride copy() { + return new AjaniCallerOfThePride(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/AjaniSteadfast.java b/Mage.Sets/src/mage/sets/mediainserts/AjaniSteadfast.java new file mode 100644 index 0000000000..8cb3e56bb4 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/AjaniSteadfast.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class AjaniSteadfast extends mage.sets.magic2015.AjaniSteadfast { + + public AjaniSteadfast(UUID ownerId) { + super(ownerId); + this.cardNumber = 99; + this.expansionSetCode = "MBP"; + } + + public AjaniSteadfast(final AjaniSteadfast card) { + super(card); + } + + @Override + public AjaniSteadfast copy() { + return new AjaniSteadfast(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/AngelOfGlorysRise.java b/Mage.Sets/src/mage/sets/mediainserts/AngelOfGlorysRise.java new file mode 100644 index 0000000000..507475348e --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/AngelOfGlorysRise.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class AngelOfGlorysRise extends mage.sets.avacynrestored.AngelOfGlorysRise { + + public AngelOfGlorysRise(UUID ownerId) { + super(ownerId); + this.cardNumber = 59; + this.expansionSetCode = "MBP"; + } + + public AngelOfGlorysRise(final AngelOfGlorysRise card) { + super(card); + } + + @Override + public AngelOfGlorysRise copy() { + return new AngelOfGlorysRise(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/AngelicSkirmisher.java b/Mage.Sets/src/mage/sets/mediainserts/AngelicSkirmisher.java new file mode 100644 index 0000000000..3820b556aa --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/AngelicSkirmisher.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class AngelicSkirmisher extends mage.sets.gatecrash.AngelicSkirmisher { + + public AngelicSkirmisher(UUID ownerId) { + super(ownerId); + this.cardNumber = 90; + this.expansionSetCode = "MBP"; + } + + public AngelicSkirmisher(final AngelicSkirmisher card) { + super(card); + } + + @Override + public AngelicSkirmisher copy() { + return new AngelicSkirmisher(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/AnkleShanker.java b/Mage.Sets/src/mage/sets/mediainserts/AnkleShanker.java new file mode 100644 index 0000000000..1c9a81b80b --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/AnkleShanker.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class AnkleShanker extends mage.sets.khansoftarkir.AnkleShanker { + + public AnkleShanker(UUID ownerId) { + super(ownerId); + this.cardNumber = 93; + this.expansionSetCode = "MBP"; + } + + public AnkleShanker(final AnkleShanker card) { + super(card); + } + + @Override + public AnkleShanker copy() { + return new AnkleShanker(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/Arena.java b/Mage.Sets/src/mage/sets/mediainserts/Arena.java new file mode 100644 index 0000000000..54014ab110 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/Arena.java @@ -0,0 +1,48 @@ +/* +* Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. +* +* Redistribution and use in source and binary forms, with or without modification, are +* permitted provided that the following conditions are met: +* +* 1. Redistributions of source code must retain the above copyright notice, this list of +* conditions and the following disclaimer. +* +* 2. Redistributions in binary form must reproduce the above copyright notice, this list +* of conditions and the following disclaimer in the documentation and/or other materials +* provided with the distribution. +* +* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED +* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR +* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +* +* The views and conclusions contained in the software and documentation are those of the +* authors and should not be interpreted as representing official policies, either expressed +* or implied, of BetaSteward_at_googlemail.com. +*/ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class Arena extends mage.sets.timeshifted.Arena { + + public Arena(UUID ownerId) { + super(ownerId); + this.cardNumber = 1; + this.expansionSetCode = "MBP"; + } + + public Arena(final Arena card) { + super(card); + } + + @Override + public Arena copy() { + return new Arena(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/Arrest.java b/Mage.Sets/src/mage/sets/mediainserts/Arrest.java new file mode 100644 index 0000000000..d1fd640db7 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/Arrest.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class Arrest extends mage.sets.mirrodin.Arrest { + + public Arrest(UUID ownerId) { + super(ownerId); + this.cardNumber = 53; + this.expansionSetCode = "MBP"; + } + + public Arrest(final Arrest card) { + super(card); + } + + @Override + public Arrest copy() { + return new Arrest(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/AvalancheTusker.java b/Mage.Sets/src/mage/sets/mediainserts/AvalancheTusker.java new file mode 100644 index 0000000000..0a06a46a6a --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/AvalancheTusker.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class AvalancheTusker extends mage.sets.khansoftarkir.AvalancheTusker { + + public AvalancheTusker(UUID ownerId) { + super(ownerId); + this.cardNumber = 94; + this.expansionSetCode = "MBP"; + } + + public AvalancheTusker(final AvalancheTusker card) { + super(card); + } + + @Override + public AvalancheTusker copy() { + return new AvalancheTusker(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/BirdsOfParadise.java b/Mage.Sets/src/mage/sets/mediainserts/BirdsOfParadise.java new file mode 100644 index 0000000000..0ce9d9dc8c --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/BirdsOfParadise.java @@ -0,0 +1,66 @@ +/* +* Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. +* +* Redistribution and use in source and binary forms, with or without modification, are +* permitted provided that the following conditions are met: +* +* 1. Redistributions of source code must retain the above copyright notice, this list of +* conditions and the following disclaimer. +* +* 2. Redistributions in binary form must reproduce the above copyright notice, this list +* of conditions and the following disclaimer in the documentation and/or other materials +* provided with the distribution. +* +* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED +* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR +* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +* +* The views and conclusions contained in the software and documentation are those of the +* authors and should not be interpreted as representing official policies, either expressed +* or implied, of BetaSteward_at_googlemail.com. +*/ + +package mage.sets.mediainserts; + +import java.util.UUID; + +public class BirdsOfParadise extends mage.sets.ravnika.BirdsOfParadise { + + public BirdsOfParadise(UUID ownerId) { + super(ownerId); + this.cardNumber = 28; + this.expansionSetCode = "MBP"; + } + + public BirdsOfParadise(final BirdsOfParadise card) { + super(card); + } + + @Override + public BirdsOfParadise copy() { + return new BirdsOfParadise(this); + } +} + + + + + + + + + + + + + + + + + diff --git a/Mage.Sets/src/mage/sets/mediainserts/BloodthroneVampire.java b/Mage.Sets/src/mage/sets/mediainserts/BloodthroneVampire.java new file mode 100644 index 0000000000..6bfb7101f5 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/BloodthroneVampire.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class BloodthroneVampire extends mage.sets.riseoftheeldrazi.BloodthroneVampire { + + public BloodthroneVampire(UUID ownerId) { + super(ownerId); + this.cardNumber = 31; + this.expansionSetCode = "MBP"; + } + + public BloodthroneVampire(final BloodthroneVampire card) { + super(card); + } + + @Override + public BloodthroneVampire copy() { + return new BloodthroneVampire(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/BlueElementalBlast.java b/Mage.Sets/src/mage/sets/mediainserts/BlueElementalBlast.java new file mode 100644 index 0000000000..7e6d2a1054 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/BlueElementalBlast.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class BlueElementalBlast extends mage.sets.limitedalpha.BlueElementalBlast { + + public BlueElementalBlast(UUID ownerId) { + super(ownerId); + this.cardNumber = 5; + this.expansionSetCode = "MBP"; + } + + public BlueElementalBlast(final BlueElementalBlast card) { + super(card); + } + + @Override + public BlueElementalBlast copy() { + return new BlueElementalBlast(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/BonescytheSliver.java b/Mage.Sets/src/mage/sets/mediainserts/BonescytheSliver.java new file mode 100644 index 0000000000..aa9e844415 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/BonescytheSliver.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class BonescytheSliver extends mage.sets.magic2014.BonescytheSliver { + + public BonescytheSliver(UUID ownerId) { + super(ownerId); + this.cardNumber = 68; + this.expansionSetCode = "MBP"; + } + + public BonescytheSliver(final BonescytheSliver card) { + super(card); + } + + @Override + public BonescytheSliver copy() { + return new BonescytheSliver(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/BreathOfMalfegor.java b/Mage.Sets/src/mage/sets/mediainserts/BreathOfMalfegor.java new file mode 100644 index 0000000000..a1132e484e --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/BreathOfMalfegor.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class BreathOfMalfegor extends mage.sets.alarareborn.BreathOfMalfegor { + + public BreathOfMalfegor(UUID ownerId) { + super(ownerId); + this.cardNumber = 58; + this.expansionSetCode = "MBP"; + } + + public BreathOfMalfegor(final BreathOfMalfegor card) { + super(card); + } + + @Override + public BreathOfMalfegor copy() { + return new BreathOfMalfegor(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/BrionStoutarm.java b/Mage.Sets/src/mage/sets/mediainserts/BrionStoutarm.java new file mode 100644 index 0000000000..87ef0cb56d --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/BrionStoutarm.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class BrionStoutarm extends mage.sets.lorwyn.BrionStoutarm { + + public BrionStoutarm(UUID ownerId) { + super(ownerId); + this.cardNumber = 17; + this.expansionSetCode = "MBP"; + } + + public BrionStoutarm(final BrionStoutarm card) { + super(card); + } + + @Override + public BrionStoutarm copy() { + return new BrionStoutarm(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/BroodmateDragon.java b/Mage.Sets/src/mage/sets/mediainserts/BroodmateDragon.java new file mode 100644 index 0000000000..56b4156ea3 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/BroodmateDragon.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class BroodmateDragon extends mage.sets.shardsofalara.BroodmateDragon { + + public BroodmateDragon(UUID ownerId) { + super(ownerId); + this.cardNumber = 19; + this.expansionSetCode = "MBP"; + } + + public BroodmateDragon(final BroodmateDragon card) { + super(card); + } + + @Override + public BroodmateDragon copy() { + return new BroodmateDragon(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/CathedralOfWar.java b/Mage.Sets/src/mage/sets/mediainserts/CathedralOfWar.java new file mode 100644 index 0000000000..e9aa6fe101 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/CathedralOfWar.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class CathedralOfWar extends mage.sets.magic2013.CathedralOfWar { + + public CathedralOfWar(UUID ownerId) { + super(ownerId); + this.cardNumber = 51; + this.expansionSetCode = "MBP"; + } + + public CathedralOfWar(final CathedralOfWar card) { + super(card); + } + + @Override + public CathedralOfWar copy() { + return new CathedralOfWar(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/ChandraPyromaster.java b/Mage.Sets/src/mage/sets/mediainserts/ChandraPyromaster.java new file mode 100644 index 0000000000..fba682ed19 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/ChandraPyromaster.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class ChandraPyromaster extends mage.sets.magic2015.ChandraPyromaster { + + public ChandraPyromaster(UUID ownerId) { + super(ownerId); + this.cardNumber = 75; + this.expansionSetCode = "MBP"; + } + + public ChandraPyromaster(final ChandraPyromaster card) { + super(card); + } + + @Override + public ChandraPyromaster copy() { + return new ChandraPyromaster(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/ChandraPyromaster2.java b/Mage.Sets/src/mage/sets/mediainserts/ChandraPyromaster2.java new file mode 100644 index 0000000000..4cd6570dae --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/ChandraPyromaster2.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class ChandraPyromaster2 extends mage.sets.magic2015.ChandraPyromaster { + + public ChandraPyromaster2(UUID ownerId) { + super(ownerId); + this.cardNumber = 102; + this.expansionSetCode = "MBP"; + } + + public ChandraPyromaster2(final ChandraPyromaster2 card) { + super(card); + } + + @Override + public ChandraPyromaster2 copy() { + return new ChandraPyromaster2(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/ChandrasFury.java b/Mage.Sets/src/mage/sets/mediainserts/ChandrasFury.java new file mode 100644 index 0000000000..7b9e2c7c2b --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/ChandrasFury.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class ChandrasFury extends mage.sets.magic2013.ChandrasFury { + + public ChandrasFury(UUID ownerId) { + super(ownerId); + this.cardNumber = 65; + this.expansionSetCode = "MBP"; + } + + public ChandrasFury(final ChandrasFury card) { + super(card); + } + + @Override + public ChandrasFury copy() { + return new ChandrasFury(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/ChandrasPhoenix.java b/Mage.Sets/src/mage/sets/mediainserts/ChandrasPhoenix.java new file mode 100644 index 0000000000..4dff51b192 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/ChandrasPhoenix.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class ChandrasPhoenix extends mage.sets.magic2012.ChandrasPhoenix { + + public ChandrasPhoenix(UUID ownerId) { + super(ownerId); + this.cardNumber = 37; + this.expansionSetCode = "MBP"; + } + + public ChandrasPhoenix(final ChandrasPhoenix card) { + super(card); + } + + @Override + public ChandrasPhoenix copy() { + return new ChandrasPhoenix(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/ConsumeSpirit.java b/Mage.Sets/src/mage/sets/mediainserts/ConsumeSpirit.java new file mode 100644 index 0000000000..0fb14ed46b --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/ConsumeSpirit.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class ConsumeSpirit extends mage.sets.planechase.ConsumeSpirit { + + public ConsumeSpirit(UUID ownerId) { + super(ownerId); + this.cardNumber = 54; + this.expansionSetCode = "MBP"; + } + + public ConsumeSpirit(final ConsumeSpirit card) { + super(card); + } + + @Override + public ConsumeSpirit copy() { + return new ConsumeSpirit(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/Corrupt.java b/Mage.Sets/src/mage/sets/mediainserts/Corrupt.java new file mode 100644 index 0000000000..25ca9cfce5 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/Corrupt.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class Corrupt extends mage.sets.magic2014.Corrupt { + + public Corrupt(UUID ownerId) { + super(ownerId); + this.cardNumber = 64; + this.expansionSetCode = "MBP"; + } + + public Corrupt(final Corrupt card) { + super(card); + } + + @Override + public Corrupt copy() { + return new Corrupt(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/DayOfJudgment.java b/Mage.Sets/src/mage/sets/mediainserts/DayOfJudgment.java new file mode 100644 index 0000000000..afd0ca066f --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/DayOfJudgment.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class DayOfJudgment extends mage.sets.zendikar.DayOfJudgment { + + public DayOfJudgment(UUID ownerId) { + super(ownerId); + this.cardNumber = 22; + this.expansionSetCode = "MBP"; + } + + public DayOfJudgment(final DayOfJudgment card) { + super(card); + } + + @Override + public DayOfJudgment copy() { + return new DayOfJudgment(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/DevilsPlay.java b/Mage.Sets/src/mage/sets/mediainserts/DevilsPlay.java new file mode 100644 index 0000000000..3a213c8d5e --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/DevilsPlay.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class DevilsPlay extends mage.sets.innistrad.DevilsPlay { + + public DevilsPlay(UUID ownerId) { + super(ownerId); + this.cardNumber = 40; + this.expansionSetCode = "MBP"; + } + + public DevilsPlay(final DevilsPlay card) { + super(card); + } + + @Override + public DevilsPlay copy() { + return new DevilsPlay(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/DregMangler.java b/Mage.Sets/src/mage/sets/mediainserts/DregMangler.java new file mode 100644 index 0000000000..da9762eeb8 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/DregMangler.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class DregMangler extends mage.sets.returntoravnica.DregMangler { + + public DregMangler(UUID ownerId) { + super(ownerId); + this.cardNumber = 55; + this.expansionSetCode = "MBP"; + } + + public DregMangler(final DregMangler card) { + super(card); + } + + @Override + public DregMangler copy() { + return new DregMangler(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/EidolonOfBlossoms.java b/Mage.Sets/src/mage/sets/mediainserts/EidolonOfBlossoms.java new file mode 100644 index 0000000000..1b4a20eb8b --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/EidolonOfBlossoms.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class EidolonOfBlossoms extends mage.sets.journeyintonyx.EidolonOfBlossoms { + + public EidolonOfBlossoms(UUID ownerId) { + super(ownerId); + this.cardNumber = 85; + this.expansionSetCode = "MBP"; + } + + public EidolonOfBlossoms(final EidolonOfBlossoms card) { + super(card); + } + + @Override + public EidolonOfBlossoms copy() { + return new EidolonOfBlossoms(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/Electrolyze.java b/Mage.Sets/src/mage/sets/mediainserts/Electrolyze.java new file mode 100644 index 0000000000..3f442960c6 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/Electrolyze.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class Electrolyze extends mage.sets.guildpact.Electrolyze { + + public Electrolyze(UUID ownerId) { + super(ownerId); + this.cardNumber = 42; + this.expansionSetCode = "MBP"; + } + + public Electrolyze(final Electrolyze card) { + super(card); + } + + @Override + public Electrolyze copy() { + return new Electrolyze(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/FaithlessLooting.java b/Mage.Sets/src/mage/sets/mediainserts/FaithlessLooting.java new file mode 100644 index 0000000000..eaecce30ed --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/FaithlessLooting.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class FaithlessLooting extends mage.sets.darkascension.FaithlessLooting { + + public FaithlessLooting(UUID ownerId) { + super(ownerId); + this.cardNumber = 39; + this.expansionSetCode = "MBP"; + } + + public FaithlessLooting(final FaithlessLooting card) { + super(card); + } + + @Override + public FaithlessLooting copy() { + return new FaithlessLooting(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/FatedConflagration.java b/Mage.Sets/src/mage/sets/mediainserts/FatedConflagration.java new file mode 100644 index 0000000000..cc3d148c8a --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/FatedConflagration.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class FatedConflagration extends mage.sets.bornofthegods.FatedConflagration { + + public FatedConflagration(UUID ownerId) { + super(ownerId); + this.cardNumber = 79; + this.expansionSetCode = "MBP"; + } + + public FatedConflagration(final FatedConflagration card) { + super(card); + } + + @Override + public FatedConflagration copy() { + return new FatedConflagration(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/FeastOfBlood.java b/Mage.Sets/src/mage/sets/mediainserts/FeastOfBlood.java new file mode 100644 index 0000000000..4407c3bdeb --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/FeastOfBlood.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class FeastOfBlood extends mage.sets.zendikar.FeastOfBlood { + + public FeastOfBlood(UUID ownerId) { + super(ownerId); + this.cardNumber = 43; + this.expansionSetCode = "MBP"; + } + + public FeastOfBlood(final FeastOfBlood card) { + super(card); + } + + @Override + public FeastOfBlood copy() { + return new FeastOfBlood(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/Fireball.java b/Mage.Sets/src/mage/sets/mediainserts/Fireball.java new file mode 100644 index 0000000000..b7e325d5f1 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/Fireball.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class Fireball extends mage.sets.limitedalpha.Fireball { + + public Fireball(UUID ownerId) { + super(ownerId); + this.cardNumber = 4; + this.expansionSetCode = "MBP"; + } + + public Fireball(final Fireball card) { + super(card); + } + + @Override + public Fireball copy() { + return new Fireball(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/FrostTitan.java b/Mage.Sets/src/mage/sets/mediainserts/FrostTitan.java new file mode 100644 index 0000000000..3f7dc25239 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/FrostTitan.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class FrostTitan extends mage.sets.magic2011.FrostTitan { + + public FrostTitan(UUID ownerId) { + super(ownerId); + this.cardNumber = 34; + this.expansionSetCode = "MBP"; + } + + public FrostTitan(final FrostTitan card) { + super(card); + } + + @Override + public FrostTitan copy() { + return new FrostTitan(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/GarrukApexPredator.java b/Mage.Sets/src/mage/sets/mediainserts/GarrukApexPredator.java new file mode 100644 index 0000000000..2eb786b6af --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/GarrukApexPredator.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class GarrukApexPredator extends mage.sets.magic2015.GarrukApexPredator { + + public GarrukApexPredator(UUID ownerId) { + super(ownerId); + this.cardNumber = 104; + this.expansionSetCode = "MBP"; + } + + public GarrukApexPredator(final GarrukApexPredator card) { + super(card); + } + + @Override + public GarrukApexPredator copy() { + return new GarrukApexPredator(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/GarrukCallerOfBeasts.java b/Mage.Sets/src/mage/sets/mediainserts/GarrukCallerOfBeasts.java new file mode 100644 index 0000000000..a2ec39e87d --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/GarrukCallerOfBeasts.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class GarrukCallerOfBeasts extends mage.sets.magic2014.GarrukCallerOfBeasts { + + public GarrukCallerOfBeasts(UUID ownerId) { + super(ownerId); + this.cardNumber = 76; + this.expansionSetCode = "MBP"; + } + + public GarrukCallerOfBeasts(final GarrukCallerOfBeasts card) { + super(card); + } + + @Override + public GarrukCallerOfBeasts copy() { + return new GarrukCallerOfBeasts(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/GarrukWildspeaker.java b/Mage.Sets/src/mage/sets/mediainserts/GarrukWildspeaker.java new file mode 100644 index 0000000000..ddacf99e35 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/GarrukWildspeaker.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class GarrukWildspeaker extends mage.sets.lorwyn.GarrukWildspeaker { + + public GarrukWildspeaker(UUID ownerId) { + super(ownerId); + this.cardNumber = 16; + this.expansionSetCode = "MBP"; + } + + public GarrukWildspeaker(final GarrukWildspeaker card) { + super(card); + } + + @Override + public GarrukWildspeaker copy() { + return new GarrukWildspeaker(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/GazeOfGranite.java b/Mage.Sets/src/mage/sets/mediainserts/GazeOfGranite.java new file mode 100644 index 0000000000..a6026372b8 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/GazeOfGranite.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class GazeOfGranite extends mage.sets.dragonsmaze.GazeOfGranite { + + public GazeOfGranite(UUID ownerId) { + super(ownerId); + this.cardNumber = 81; + this.expansionSetCode = "MBP"; + } + + public GazeOfGranite(final GazeOfGranite card) { + super(card); + } + + @Override + public GazeOfGranite copy() { + return new GazeOfGranite(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/GoblinRabblemaster.java b/Mage.Sets/src/mage/sets/mediainserts/GoblinRabblemaster.java new file mode 100644 index 0000000000..7bcbf61532 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/GoblinRabblemaster.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class GoblinRabblemaster extends mage.sets.magic2015.GoblinRabblemaster { + + public GoblinRabblemaster(UUID ownerId) { + super(ownerId); + this.cardNumber = 98; + this.expansionSetCode = "MBP"; + } + + public GoblinRabblemaster(final GoblinRabblemaster card) { + super(card); + } + + @Override + public GoblinRabblemaster copy() { + return new GoblinRabblemaster(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/GraveTitan.java b/Mage.Sets/src/mage/sets/mediainserts/GraveTitan.java new file mode 100644 index 0000000000..e91d09ecf8 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/GraveTitan.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class GraveTitan extends mage.sets.magic2011.GraveTitan { + + public GraveTitan(UUID ownerId) { + super(ownerId); + this.cardNumber = 35; + this.expansionSetCode = "MBP"; + } + + public GraveTitan(final GraveTitan card) { + super(card); + } + + @Override + public GraveTitan copy() { + return new GraveTitan(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/Gravecrawler.java b/Mage.Sets/src/mage/sets/mediainserts/Gravecrawler.java new file mode 100644 index 0000000000..6537436120 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/Gravecrawler.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class Gravecrawler extends mage.sets.darkascension.Gravecrawler { + + public Gravecrawler(UUID ownerId) { + super(ownerId); + this.cardNumber = 41; + this.expansionSetCode = "MBP"; + } + + public Gravecrawler(final Gravecrawler card) { + super(card); + } + + @Override + public Gravecrawler copy() { + return new Gravecrawler(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/GuulDrazAssassin.java b/Mage.Sets/src/mage/sets/mediainserts/GuulDrazAssassin.java new file mode 100644 index 0000000000..8d99791d10 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/GuulDrazAssassin.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class GuulDrazAssassin extends mage.sets.riseoftheeldrazi.GuulDrazAssassin { + + public GuulDrazAssassin(UUID ownerId) { + super(ownerId); + this.cardNumber = 26; + this.expansionSetCode = "MBP"; + } + + public GuulDrazAssassin(final GuulDrazAssassin card) { + super(card); + } + + @Override + public GuulDrazAssassin copy() { + return new GuulDrazAssassin(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/HamletbackGoliath.java b/Mage.Sets/src/mage/sets/mediainserts/HamletbackGoliath.java new file mode 100644 index 0000000000..fda3218d51 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/HamletbackGoliath.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class HamletbackGoliath extends mage.sets.lorwyn.HamletbackGoliath { + + public HamletbackGoliath(UUID ownerId) { + super(ownerId); + this.cardNumber = 71; + this.expansionSetCode = "MBP"; + } + + public HamletbackGoliath(final HamletbackGoliath card) { + super(card); + } + + @Override + public HamletbackGoliath copy() { + return new HamletbackGoliath(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/HighTide.java b/Mage.Sets/src/mage/sets/mediainserts/HighTide.java new file mode 100644 index 0000000000..5fd142047d --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/HighTide.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class HighTide extends mage.sets.fallenempires.HighTide { + + public HighTide(UUID ownerId) { + super(ownerId); + this.cardNumber = 80; + this.expansionSetCode = "MBP"; + } + + public HighTide(final HighTide card) { + super(card); + } + + @Override + public HighTide copy() { + return new HighTide(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/HonorOfThePure.java b/Mage.Sets/src/mage/sets/mediainserts/HonorOfThePure.java new file mode 100644 index 0000000000..7f81d6cb60 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/HonorOfThePure.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class HonorOfThePure extends mage.sets.magic2010.HonorOfThePure { + + public HonorOfThePure(UUID ownerId) { + super(ownerId); + this.cardNumber = 20; + this.expansionSetCode = "MBP"; + } + + public HonorOfThePure(final HonorOfThePure card) { + super(card); + } + + @Override + public HonorOfThePure copy() { + return new HonorOfThePure(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/InfernoTitan.java b/Mage.Sets/src/mage/sets/mediainserts/InfernoTitan.java new file mode 100644 index 0000000000..49cf11221e --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/InfernoTitan.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class InfernoTitan extends mage.sets.magic2011.InfernoTitan { + + public InfernoTitan(UUID ownerId) { + super(ownerId); + this.cardNumber = 36; + this.expansionSetCode = "MBP"; + } + + public InfernoTitan(final InfernoTitan card) { + super(card); + } + + @Override + public InfernoTitan copy() { + return new InfernoTitan(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/IvorytuskFortress.java b/Mage.Sets/src/mage/sets/mediainserts/IvorytuskFortress.java new file mode 100644 index 0000000000..8a987cc5f7 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/IvorytuskFortress.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class IvorytuskFortress extends mage.sets.khansoftarkir.IvorytuskFortress { + + public IvorytuskFortress(UUID ownerId) { + super(ownerId); + this.cardNumber = 95; + this.expansionSetCode = "MBP"; + } + + public IvorytuskFortress(final IvorytuskFortress card) { + super(card); + } + + @Override + public IvorytuskFortress copy() { + return new IvorytuskFortress(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/JaceBeleren.java b/Mage.Sets/src/mage/sets/mediainserts/JaceBeleren.java new file mode 100644 index 0000000000..537ca09ffe --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/JaceBeleren.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class JaceBeleren extends mage.sets.lorwyn.JaceBeleren { + + public JaceBeleren(UUID ownerId) { + super(ownerId); + this.cardNumber = 15; + this.expansionSetCode = "MPB"; + } + + public JaceBeleren(final JaceBeleren card) { + super(card); + } + + @Override + public JaceBeleren copy() { + return new JaceBeleren(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/JaceMemoryAdept.java b/Mage.Sets/src/mage/sets/mediainserts/JaceMemoryAdept.java new file mode 100644 index 0000000000..c030b87daf --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/JaceMemoryAdept.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class JaceMemoryAdept extends mage.sets.magic2012.JaceMemoryAdept { + + public JaceMemoryAdept(UUID ownerId) { + super(ownerId); + this.cardNumber = 73; + this.expansionSetCode = "MBP"; + } + + public JaceMemoryAdept(final JaceMemoryAdept card) { + super(card); + } + + @Override + public JaceMemoryAdept copy() { + return new JaceMemoryAdept(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/JaceTheLivingGuildpact.java b/Mage.Sets/src/mage/sets/mediainserts/JaceTheLivingGuildpact.java new file mode 100644 index 0000000000..cce7bf3490 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/JaceTheLivingGuildpact.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class JaceTheLivingGuildpact extends mage.sets.magic2015.JaceTheLivingGuildpact { + + public JaceTheLivingGuildpact(UUID ownerId) { + super(ownerId); + this.cardNumber = 100; + this.expansionSetCode = "MBP"; + } + + public JaceTheLivingGuildpact(final JaceTheLivingGuildpact card) { + super(card); + } + + @Override + public JaceTheLivingGuildpact copy() { + return new JaceTheLivingGuildpact(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/JayaBallardTaskMage.java b/Mage.Sets/src/mage/sets/mediainserts/JayaBallardTaskMage.java new file mode 100644 index 0000000000..5fc2a2a94c --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/JayaBallardTaskMage.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class JayaBallardTaskMage extends mage.sets.timespiral.JayaBallardTaskMage { + + public JayaBallardTaskMage(UUID ownerId) { + super(ownerId); + this.cardNumber = 18; + this.expansionSetCode = "MBP"; + } + + public JayaBallardTaskMage(final JayaBallardTaskMage card) { + super(card); + } + + @Override + public JayaBallardTaskMage copy() { + return new JayaBallardTaskMage(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/KarametrasAcolyte.java b/Mage.Sets/src/mage/sets/mediainserts/KarametrasAcolyte.java new file mode 100644 index 0000000000..368b0380bf --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/KarametrasAcolyte.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class KarametrasAcolyte extends mage.sets.theros.KarametrasAcolyte { + + public KarametrasAcolyte(UUID ownerId) { + super(ownerId); + this.cardNumber = 78; + this.expansionSetCode = "MBP"; + } + + public KarametrasAcolyte(final KarametrasAcolyte card) { + super(card); + } + + @Override + public KarametrasAcolyte copy() { + return new KarametrasAcolyte(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/KnightExemplar.java b/Mage.Sets/src/mage/sets/mediainserts/KnightExemplar.java new file mode 100644 index 0000000000..52b0f472e1 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/KnightExemplar.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class KnightExemplar extends mage.sets.magic2011.KnightExemplar { + + public KnightExemplar(UUID ownerId) { + super(ownerId); + this.cardNumber = 46; + this.expansionSetCode = "MBP"; + } + + public KnightExemplar(final KnightExemplar card) { + super(card); + } + + @Override + public KnightExemplar copy() { + return new KnightExemplar(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/KorSkyfisher.java b/Mage.Sets/src/mage/sets/mediainserts/KorSkyfisher.java new file mode 100644 index 0000000000..e4a64b8114 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/KorSkyfisher.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class KorSkyfisher extends mage.sets.zendikar.KorSkyfisher { + + public KorSkyfisher(UUID ownerId) { + super(ownerId); + this.cardNumber = 25; + this.expansionSetCode = "MBP"; + } + + public KorSkyfisher(final KorSkyfisher card) { + super(card); + } + + @Override + public KorSkyfisher copy() { + return new KorSkyfisher(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/LilianaOfTheDarkRealms.java b/Mage.Sets/src/mage/sets/mediainserts/LilianaOfTheDarkRealms.java new file mode 100644 index 0000000000..55be632b47 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/LilianaOfTheDarkRealms.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class LilianaOfTheDarkRealms extends mage.sets.magic2014.LilianaOfTheDarkRealms { + + public LilianaOfTheDarkRealms(UUID ownerId) { + super(ownerId); + this.cardNumber = 74; + this.expansionSetCode = "MBP"; + } + + public LilianaOfTheDarkRealms(final LilianaOfTheDarkRealms card) { + super(card); + } + + @Override + public LilianaOfTheDarkRealms copy() { + return new LilianaOfTheDarkRealms(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/LilianaVess.java b/Mage.Sets/src/mage/sets/mediainserts/LilianaVess.java new file mode 100644 index 0000000000..46821a2886 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/LilianaVess.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class LilianaVess extends mage.sets.lorwyn.LilianaVess { + + public LilianaVess(UUID ownerId) { + super(ownerId); + this.cardNumber = 30; + this.expansionSetCode = "MBP"; + } + + public LilianaVess(final LilianaVess card) { + super(card); + } + + @Override + public LilianaVess copy() { + return new LilianaVess(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/LilianaVess2.java b/Mage.Sets/src/mage/sets/mediainserts/LilianaVess2.java new file mode 100644 index 0000000000..2b9b4e440c --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/LilianaVess2.java @@ -0,0 +1,22 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + + +public class LilianaVess2 extends mage.sets.magic2011.LilianaVess { + + public LilianaVess2(UUID ownerId) { + super(ownerId); + this.cardNumber = 101; + this.expansionSetCode = "MBP"; + } + + public LilianaVess2(final LilianaVess2 card) { + super(card); + } + + @Override + public LilianaVess2 copy() { + return new LilianaVess2(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/ManaCrypt.java b/Mage.Sets/src/mage/sets/mediainserts/ManaCrypt.java new file mode 100644 index 0000000000..99a5777a46 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/ManaCrypt.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class ManaCrypt extends mage.sets.judgepromo.ManaCrypt { + + public ManaCrypt(UUID ownerId) { + super(ownerId); + this.cardNumber = 6; + this.expansionSetCode = "MBP"; + } + + public ManaCrypt(final ManaCrypt card) { + super(card); + } + + @Override + public ManaCrypt copy() { + return new ManaCrypt(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/Memoricide.java b/Mage.Sets/src/mage/sets/mediainserts/Memoricide.java new file mode 100644 index 0000000000..d9dff6da07 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/Memoricide.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class Memoricide extends mage.sets.scarsofmirrodin.Memoricide { + + public Memoricide(UUID ownerId) { + super(ownerId); + this.cardNumber = 29; + this.expansionSetCode = "MBP"; + } + + public Memoricide(final Memoricide card) { + super(card); + } + + @Override + public Memoricide copy() { + return new Memoricide(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/MerfolkMesmerist.java b/Mage.Sets/src/mage/sets/mediainserts/MerfolkMesmerist.java new file mode 100644 index 0000000000..caa10da0d5 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/MerfolkMesmerist.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class MerfolkMesmerist extends mage.sets.magic2012.MerfolkMesmerist { + + public MerfolkMesmerist(UUID ownerId) { + super(ownerId); + this.cardNumber = 45; + this.expansionSetCode = "MBP"; + } + + public MerfolkMesmerist(final MerfolkMesmerist card) { + super(card); + } + + @Override + public MerfolkMesmerist copy() { + return new MerfolkMesmerist(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/MirranCrusader.java b/Mage.Sets/src/mage/sets/mediainserts/MirranCrusader.java new file mode 100644 index 0000000000..fefeba7de6 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/MirranCrusader.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class MirranCrusader extends mage.sets.mirrodinbesieged.MirranCrusader { + + public MirranCrusader(UUID ownerId) { + super(ownerId); + this.cardNumber = 32; + this.expansionSetCode = "MBP"; + } + + public MirranCrusader(final MirranCrusader card) { + super(card); + } + + @Override + public MirranCrusader copy() { + return new MirranCrusader(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/NightveilSpecter.java b/Mage.Sets/src/mage/sets/mediainserts/NightveilSpecter.java new file mode 100644 index 0000000000..78c96fd22b --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/NightveilSpecter.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class NightveilSpecter extends mage.sets.gatecrash.NightveilSpecter { + + public NightveilSpecter(UUID ownerId) { + super(ownerId); + this.cardNumber = 61; + this.expansionSetCode = "MBP"; + } + + public NightveilSpecter(final NightveilSpecter card) { + super(card); + } + + @Override + public NightveilSpecter copy() { + return new NightveilSpecter(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/NissaRevane.java b/Mage.Sets/src/mage/sets/mediainserts/NissaRevane.java new file mode 100644 index 0000000000..6d9bcfd5b5 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/NissaRevane.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class NissaRevane extends mage.sets.zendikar.NissaRevane { + + public NissaRevane(UUID ownerId) { + super(ownerId); + this.cardNumber = 27; + this.expansionSetCode = "MBP"; + } + + public NissaRevane(final NissaRevane card) { + super(card); + } + + @Override + public NissaRevane copy() { + return new NissaRevane(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/NissaWorldwaker.java b/Mage.Sets/src/mage/sets/mediainserts/NissaWorldwaker.java new file mode 100644 index 0000000000..4c7aaa18e2 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/NissaWorldwaker.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class NissaWorldwaker extends mage.sets.magic2015.NissaWorldwaker { + + public NissaWorldwaker(UUID ownerId) { + super(ownerId); + this.cardNumber = 103; + this.expansionSetCode = "MBP"; + } + + public NissaWorldwaker(final NissaWorldwaker card) { + super(card); + } + + @Override + public NissaWorldwaker copy() { + return new NissaWorldwaker(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/OgreBattledriver.java b/Mage.Sets/src/mage/sets/mediainserts/OgreBattledriver.java new file mode 100644 index 0000000000..ef4df4dba8 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/OgreBattledriver.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class OgreBattledriver extends mage.sets.magic2014.OgreBattledriver { + + public OgreBattledriver(UUID ownerId) { + super(ownerId); + this.cardNumber = 69; + this.expansionSetCode = "MBP"; + } + + public OgreBattledriver(final OgreBattledriver card) { + super(card); + } + + @Override + public OgreBattledriver copy() { + return new OgreBattledriver(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/PhyrexianRager.java b/Mage.Sets/src/mage/sets/mediainserts/PhyrexianRager.java new file mode 100644 index 0000000000..27e043f162 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/PhyrexianRager.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class PhyrexianRager extends mage.sets.mirrodinbesieged.PhyrexianRager { + + public PhyrexianRager(UUID ownerId) { + super(ownerId); + this.cardNumber = 14; + this.expansionSetCode = "MBP"; + } + + public PhyrexianRager(final PhyrexianRager card) { + super(card); + } + + @Override + public PhyrexianRager copy() { + return new PhyrexianRager(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/PrimordialHydra.java b/Mage.Sets/src/mage/sets/mediainserts/PrimordialHydra.java new file mode 100644 index 0000000000..3ee3b8f7eb --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/PrimordialHydra.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class PrimordialHydra extends mage.sets.magic2012.PrimordialHydra { + + public PrimordialHydra(UUID ownerId) { + super(ownerId); + this.cardNumber = 49; + this.expansionSetCode = "MBP"; + } + + public PrimordialHydra(final PrimordialHydra card) { + super(card); + } + + @Override + public PrimordialHydra copy() { + return new PrimordialHydra(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/RakshasaVizier.java b/Mage.Sets/src/mage/sets/mediainserts/RakshasaVizier.java new file mode 100644 index 0000000000..d98b17bcd2 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/RakshasaVizier.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class RakshasaVizier extends mage.sets.khansoftarkir.RakshasaVizier { + + public RakshasaVizier(UUID ownerId) { + super(ownerId); + this.cardNumber = 96; + this.expansionSetCode = "MBP"; + } + + public RakshasaVizier(final RakshasaVizier card) { + super(card); + } + + @Override + public RakshasaVizier copy() { + return new RakshasaVizier(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/RatchetBomb.java b/Mage.Sets/src/mage/sets/mediainserts/RatchetBomb.java new file mode 100644 index 0000000000..aa632fd718 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/RatchetBomb.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class RatchetBomb extends mage.sets.magic2014.RatchetBomb { + + public RatchetBomb(UUID ownerId) { + super(ownerId); + this.cardNumber = 67; + this.expansionSetCode = "MBP"; + } + + public RatchetBomb(final RatchetBomb card) { + super(card); + } + + @Override + public RatchetBomb copy() { + return new RatchetBomb(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/RattleclawMystic.java b/Mage.Sets/src/mage/sets/mediainserts/RattleclawMystic.java new file mode 100644 index 0000000000..a648974894 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/RattleclawMystic.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class RattleclawMystic extends mage.sets.khansoftarkir.RattleclawMystic { + + public RattleclawMystic(UUID ownerId) { + super(ownerId); + this.cardNumber = 92; + this.expansionSetCode = "MBP"; + } + + public RattleclawMystic(final RattleclawMystic card) { + super(card); + } + + @Override + public RattleclawMystic copy() { + return new RattleclawMystic(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/RenderSilent.java b/Mage.Sets/src/mage/sets/mediainserts/RenderSilent.java new file mode 100644 index 0000000000..d9dd78ecb0 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/RenderSilent.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class RenderSilent extends mage.sets.dragonsmaze.RenderSilent { + + public RenderSilent(UUID ownerId) { + super(ownerId); + this.cardNumber = 66; + this.expansionSetCode = "MBP"; + } + + public RenderSilent(final RenderSilent card) { + super(card); + } + + @Override + public RenderSilent copy() { + return new RenderSilent(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/RetaliatorGriffin.java b/Mage.Sets/src/mage/sets/mediainserts/RetaliatorGriffin.java new file mode 100644 index 0000000000..ec5b34e2b0 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/RetaliatorGriffin.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class RetaliatorGriffin extends mage.sets.alarareborn.RetaliatorGriffin { + + public RetaliatorGriffin(UUID ownerId) { + super(ownerId); + this.cardNumber = 24; + this.expansionSetCode = "MBP"; + } + + public RetaliatorGriffin(final RetaliatorGriffin card) { + super(card); + } + + @Override + public RetaliatorGriffin copy() { + return new RetaliatorGriffin(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/SageOfTheInwardEye.java b/Mage.Sets/src/mage/sets/mediainserts/SageOfTheInwardEye.java new file mode 100644 index 0000000000..ee71567944 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/SageOfTheInwardEye.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class SageOfTheInwardEye extends mage.sets.khansoftarkir.SageOfTheInwardEye { + + public SageOfTheInwardEye(UUID ownerId) { + super(ownerId); + this.cardNumber = 97; + this.expansionSetCode = "MBP"; + } + + public SageOfTheInwardEye(final SageOfTheInwardEye card) { + super(card); + } + + @Override + public SageOfTheInwardEye copy() { + return new SageOfTheInwardEye(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/ScavengingOoze.java b/Mage.Sets/src/mage/sets/mediainserts/ScavengingOoze.java new file mode 100644 index 0000000000..effe1e74b1 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/ScavengingOoze.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class ScavengingOoze extends mage.sets.commander.ScavengingOoze { + + public ScavengingOoze(UUID ownerId) { + super(ownerId); + this.cardNumber = 70; + this.expansionSetCode = "MBP"; + } + + public ScavengingOoze(final ScavengingOoze card) { + super(card); + } + + @Override + public ScavengingOoze copy() { + return new ScavengingOoze(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/SerraAvatar.java b/Mage.Sets/src/mage/sets/mediainserts/SerraAvatar.java new file mode 100644 index 0000000000..20a23af612 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/SerraAvatar.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class SerraAvatar extends mage.sets.magic2013.SerraAvatar { + + public SerraAvatar(UUID ownerId) { + super(ownerId); + this.cardNumber = 48; + this.expansionSetCode = "MBP"; + } + + public SerraAvatar(final SerraAvatar card) { + super(card); + } + + @Override + public SerraAvatar copy() { + return new SerraAvatar(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/SilverbladePaladin.java b/Mage.Sets/src/mage/sets/mediainserts/SilverbladePaladin.java new file mode 100644 index 0000000000..3c17d8e9a7 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/SilverbladePaladin.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class SilverbladePaladin extends mage.sets.commander2014.SilverbladePaladin { + + public SilverbladePaladin(UUID ownerId) { + super(ownerId); + this.cardNumber = 44; + this.expansionSetCode = "MBP"; + } + + public SilverbladePaladin(final SilverbladePaladin card) { + super(card); + } + + @Override + public SilverbladePaladin copy() { + return new SilverbladePaladin(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/SoulOfRavnica.java b/Mage.Sets/src/mage/sets/mediainserts/SoulOfRavnica.java new file mode 100644 index 0000000000..fc69ec8a44 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/SoulOfRavnica.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class SoulOfRavnica extends mage.sets.magic2015.SoulOfRavnica { + + public SoulOfRavnica(UUID ownerId) { + super(ownerId); + this.cardNumber = 87; + this.expansionSetCode = "MBP"; + } + + public SoulOfRavnica(final SoulOfRavnica card) { + super(card); + } + + @Override + public SoulOfRavnica copy() { + return new SoulOfRavnica(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/SoulOfZendikar.java b/Mage.Sets/src/mage/sets/mediainserts/SoulOfZendikar.java new file mode 100644 index 0000000000..4159ade553 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/SoulOfZendikar.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class SoulOfZendikar extends mage.sets.magic2015.SoulOfZendikar { + + public SoulOfZendikar(UUID ownerId) { + super(ownerId); + this.cardNumber = 88; + this.expansionSetCode = "MBP"; + } + + public SoulOfZendikar(final SoulOfZendikar card) { + super(card); + } + + @Override + public SoulOfZendikar copy() { + return new SoulOfZendikar(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/Standstill.java b/Mage.Sets/src/mage/sets/mediainserts/Standstill.java new file mode 100644 index 0000000000..ae3f994ce4 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/Standstill.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class Standstill extends mage.sets.odyssey.Standstill { + + public Standstill(UUID ownerId) { + super(ownerId); + this.cardNumber = 57; + this.expansionSetCode = "MBP"; + } + + public Standstill(final Standstill card) { + super(card); + } + + @Override + public Standstill copy() { + return new Standstill(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/StealerOfSecrets.java b/Mage.Sets/src/mage/sets/mediainserts/StealerOfSecrets.java new file mode 100644 index 0000000000..1fcea6cc33 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/StealerOfSecrets.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class StealerOfSecrets extends mage.sets.returntoravnica.StealerOfSecrets { + + public StealerOfSecrets(UUID ownerId) { + super(ownerId); + this.cardNumber = 89; + this.expansionSetCode = "MBP"; + } + + public StealerOfSecrets(final StealerOfSecrets card) { + super(card); + } + + @Override + public StealerOfSecrets copy() { + return new StealerOfSecrets(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/StewardOfValeron.java b/Mage.Sets/src/mage/sets/mediainserts/StewardOfValeron.java new file mode 100644 index 0000000000..ff7623551d --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/StewardOfValeron.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class StewardOfValeron extends mage.sets.shardsofalara.StewardOfValeron { + + public StewardOfValeron(UUID ownerId) { + super(ownerId); + this.cardNumber = 21; + this.expansionSetCode = "MBP"; + } + + public StewardOfValeron(final StewardOfValeron card) { + super(card); + } + + @Override + public StewardOfValeron copy() { + return new StewardOfValeron(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/SunblastAngel.java b/Mage.Sets/src/mage/sets/mediainserts/SunblastAngel.java new file mode 100644 index 0000000000..c60b71daf9 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/SunblastAngel.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class SunblastAngel extends mage.sets.scarsofmirrodin.SunblastAngel { + + public SunblastAngel(UUID ownerId) { + super(ownerId); + this.cardNumber = 47; + this.expansionSetCode = "MBP"; + } + + public SunblastAngel(final SunblastAngel card) { + super(card); + } + + @Override + public SunblastAngel copy() { + return new SunblastAngel(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/SupremeVerdict.java b/Mage.Sets/src/mage/sets/mediainserts/SupremeVerdict.java new file mode 100644 index 0000000000..38c9f86f78 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/SupremeVerdict.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class SupremeVerdict extends mage.sets.returntoravnica.SupremeVerdict { + + public SupremeVerdict(UUID ownerId) { + super(ownerId); + this.cardNumber = 56; + this.expansionSetCode = "MBP"; + } + + public SupremeVerdict(final SupremeVerdict card) { + super(card); + } + + @Override + public SupremeVerdict copy() { + return new SupremeVerdict(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/SurgicalExtraction.java b/Mage.Sets/src/mage/sets/mediainserts/SurgicalExtraction.java new file mode 100644 index 0000000000..bc9c3c2542 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/SurgicalExtraction.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class SurgicalExtraction extends mage.sets.newphyrexia.SurgicalExtraction { + + public SurgicalExtraction(UUID ownerId) { + super(ownerId); + this.cardNumber = 33; + this.expansionSetCode = "MBP"; + } + + public SurgicalExtraction(final SurgicalExtraction card) { + super(card); + } + + @Override + public SurgicalExtraction copy() { + return new SurgicalExtraction(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/SylvanCaryatid.java b/Mage.Sets/src/mage/sets/mediainserts/SylvanCaryatid.java new file mode 100644 index 0000000000..93bfafa419 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/SylvanCaryatid.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class SylvanCaryatid extends mage.sets.theros.SylvanCaryatid { + + public SylvanCaryatid(UUID ownerId) { + super(ownerId); + this.cardNumber = 77; + this.expansionSetCode = "MBP"; + } + + public SylvanCaryatid(final SylvanCaryatid card) { + super(card); + } + + @Override + public SylvanCaryatid copy() { + return new SylvanCaryatid(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/Terastodon.java b/Mage.Sets/src/mage/sets/mediainserts/Terastodon.java new file mode 100644 index 0000000000..91a94e036a --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/Terastodon.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class Terastodon extends mage.sets.worldwake.Terastodon { + + public Terastodon(UUID ownerId) { + super(ownerId); + this.cardNumber = 52; + this.expansionSetCode = "MBP"; + } + + public Terastodon(final Terastodon card) { + super(card); + } + + @Override + public Terastodon copy() { + return new Terastodon(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/TreasureHunt.java b/Mage.Sets/src/mage/sets/mediainserts/TreasureHunt.java new file mode 100644 index 0000000000..dd971280da --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/TreasureHunt.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class TreasureHunt extends mage.sets.worldwake.TreasureHunt { + + public TreasureHunt(UUID ownerId) { + super(ownerId); + this.cardNumber = 38; + this.expansionSetCode = "MBP"; + } + + public TreasureHunt(final TreasureHunt card) { + super(card); + } + + @Override + public TreasureHunt copy() { + return new TreasureHunt(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/Turnabout.java b/Mage.Sets/src/mage/sets/mediainserts/Turnabout.java new file mode 100644 index 0000000000..98a36c5e2f --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/Turnabout.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class Turnabout extends mage.sets.urzassaga.Turnabout { + + public Turnabout(UUID ownerId) { + super(ownerId); + this.cardNumber = 60; + this.expansionSetCode = "MBP"; + } + + public Turnabout(final Turnabout card) { + super(card); + } + + @Override + public Turnabout copy() { + return new Turnabout(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/VampireNocturnus.java b/Mage.Sets/src/mage/sets/mediainserts/VampireNocturnus.java new file mode 100644 index 0000000000..3366a3ea1c --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/VampireNocturnus.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class VampireNocturnus extends mage.sets.magic2010.VampireNocturnus { + + public VampireNocturnus(UUID ownerId) { + super(ownerId); + this.cardNumber = 50; + this.expansionSetCode = "MBP"; + } + + public VampireNocturnus(final VampireNocturnus card) { + super(card); + } + + @Override + public VampireNocturnus copy() { + return new VampireNocturnus(this); + } +} diff --git a/Mage.Sets/src/mage/sets/mediainserts/WashOut.java b/Mage.Sets/src/mage/sets/mediainserts/WashOut.java new file mode 100644 index 0000000000..876728f2c2 --- /dev/null +++ b/Mage.Sets/src/mage/sets/mediainserts/WashOut.java @@ -0,0 +1,21 @@ +package mage.sets.mediainserts; + +import java.util.UUID; + +public class WashOut extends mage.sets.invasion.WashOut { + + public WashOut(UUID ownerId) { + super(ownerId); + this.cardNumber = 82; + this.expansionSetCode = "MBP"; + } + + public WashOut(final WashOut card) { + super(card); + } + + @Override + public WashOut copy() { + return new WashOut(this); + } +} diff --git a/Mage.Sets/src/mage/sets/shadowmoor/AEthertow.java b/Mage.Sets/src/mage/sets/shadowmoor/AEthertow.java new file mode 100644 index 0000000000..2e384acbeb --- /dev/null +++ b/Mage.Sets/src/mage/sets/shadowmoor/AEthertow.java @@ -0,0 +1,99 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.shadowmoor; + +import java.util.UUID; +import mage.abilities.Ability; +import mage.abilities.effects.OneShotEffect; +import mage.abilities.keyword.ConspireAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Outcome; +import mage.constants.Rarity; +import mage.constants.Zone; +import mage.filter.common.FilterAttackingOrBlockingCreature; +import mage.game.Game; +import mage.game.permanent.Permanent; +import mage.target.common.TargetCreaturePermanent; + +/** + * + * @author jeffwadsworth + */ +public class AEthertow extends CardImpl { + + private static final FilterAttackingOrBlockingCreature filter = new FilterAttackingOrBlockingCreature(); + + public AEthertow(UUID ownerId) { + super(ownerId, 136, "AEthertow", Rarity.COMMON, new CardType[]{CardType.INSTANT}, "{3}{W/U}"); + this.expansionSetCode = "SHM"; + + // Put target attacking or blocking creature on top of its owner's library. + this.getSpellAbility().addEffect(new AEthertowEffect()); + this.getSpellAbility().addTarget(new TargetCreaturePermanent(filter)); + + // Conspire + this.addAbility(new ConspireAbility(this)); + } + + public AEthertow(final AEthertow card) { + super(card); + } + + @Override + public AEthertow copy() { + return new AEthertow(this); + } +} + +class AEthertowEffect extends OneShotEffect { + + AEthertowEffect() { + super(Outcome.Removal); + staticText = "Put target attacking or blocking creature on top of its owner's library"; + } + + AEthertowEffect(final AEthertowEffect effect) { + super(effect); + } + + @Override + public boolean apply(Game game, Ability source) { + Permanent targetCreature = game.getPermanent(targetPointer.getFirst(game, source)); + if (targetCreature != null) { + targetCreature.moveToZone(Zone.LIBRARY, source.getSourceId(), game, true); + return true; + } + return false; + } + + @Override + public AEthertowEffect copy() { + return new AEthertowEffect(this); + } +} diff --git a/Mage.Sets/src/mage/sets/shadowmoor/MemorySluice.java b/Mage.Sets/src/mage/sets/shadowmoor/MemorySluice.java new file mode 100644 index 0000000000..61329fd77a --- /dev/null +++ b/Mage.Sets/src/mage/sets/shadowmoor/MemorySluice.java @@ -0,0 +1,65 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.shadowmoor; + +import java.util.UUID; +import mage.abilities.effects.common.PutLibraryIntoGraveTargetEffect; +import mage.abilities.keyword.ConspireAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; +import mage.target.TargetPlayer; + +/** + * + * @author jeffwadsworth + */ +public class MemorySluice extends CardImpl { + + public MemorySluice(UUID ownerId) { + super(ownerId, 170, "Memory Sluice", Rarity.COMMON, new CardType[]{CardType.SORCERY}, "{U/B}"); + this.expansionSetCode = "SHM"; + + // Target player puts the top four cards of his or her library into his or her graveyard. + this.getSpellAbility().addEffect(new PutLibraryIntoGraveTargetEffect(4)); + this.getSpellAbility().addTarget(new TargetPlayer()); + + // Conspire + this.addAbility(new ConspireAbility(this)); + + } + + public MemorySluice(final MemorySluice card) { + super(card); + } + + @Override + public MemorySluice copy() { + return new MemorySluice(this); + } +} diff --git a/Mage.Sets/src/mage/sets/shadowmoor/MineExcavation.java b/Mage.Sets/src/mage/sets/shadowmoor/MineExcavation.java new file mode 100644 index 0000000000..b26e24c4b1 --- /dev/null +++ b/Mage.Sets/src/mage/sets/shadowmoor/MineExcavation.java @@ -0,0 +1,74 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.shadowmoor; + +import java.util.UUID; +import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect; +import mage.abilities.keyword.ConspireAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; +import mage.filter.FilterCard; +import mage.filter.predicate.Predicates; +import mage.filter.predicate.mageobject.CardTypePredicate; +import mage.target.common.TargetCardInGraveyard; + +/** + * + * @author jeffwadsworth + */ +public class MineExcavation extends CardImpl { + + private static final FilterCard filter = new FilterCard("artifact or enchantment card in a graveyard"); + + static { + filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), + new CardTypePredicate(CardType.ENCHANTMENT))); + } + + public MineExcavation(UUID ownerId) { + super(ownerId, 13, "Mine Excavation", Rarity.COMMON, new CardType[]{CardType.SORCERY}, "{1}{W}"); + this.expansionSetCode = "SHM"; + + // Return target artifact or enchantment card from a graveyard to its owner's hand. + this.getSpellAbility().addEffect(new ReturnFromGraveyardToHandTargetEffect()); + this.getSpellAbility().addTarget(new TargetCardInGraveyard(filter)); + + // Conspire + this.addAbility(new ConspireAbility(this)); + } + + public MineExcavation(final MineExcavation card) { + super(card); + } + + @Override + public MineExcavation copy() { + return new MineExcavation(this); + } +} diff --git a/Mage.Sets/src/mage/sets/shadowmoor/WanderbrineRootcutters.java b/Mage.Sets/src/mage/sets/shadowmoor/WanderbrineRootcutters.java new file mode 100644 index 0000000000..7752b60560 --- /dev/null +++ b/Mage.Sets/src/mage/sets/shadowmoor/WanderbrineRootcutters.java @@ -0,0 +1,76 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.shadowmoor; + +import java.util.UUID; +import mage.MageInt; +import mage.ObjectColor; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.effects.common.combat.CantBeBlockedByCreaturesSourceEffect; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Rarity; +import mage.constants.Zone; +import mage.filter.common.FilterCreaturePermanent; +import mage.filter.predicate.mageobject.ColorPredicate; + +/** + * + * @author jeffwadsworth + */ +public class WanderbrineRootcutters extends CardImpl { + + private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("green creatures"); + + static { + filter.add(new ColorPredicate(ObjectColor.GREEN)); + } + + public WanderbrineRootcutters(UUID ownerId) { + super(ownerId, 178, "Wanderbrine Rootcutters", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{2}{U/B}{U/B}"); + this.expansionSetCode = "SHM"; + this.subtype.add("Merfolk"); + this.subtype.add("Rogue"); + this.power = new MageInt(3); + this.toughness = new MageInt(3); + + // Wanderbrine Rootcutters can't be blocked by green creatures. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBeBlockedByCreaturesSourceEffect(filter, Duration.WhileOnBattlefield))); + + } + + public WanderbrineRootcutters(final WanderbrineRootcutters card) { + super(card); + } + + @Override + public WanderbrineRootcutters copy() { + return new WanderbrineRootcutters(this); + } +} diff --git a/Mage/src/mage/abilities/effects/common/PutLandFromHandOntoBattlefieldEffect.java b/Mage/src/mage/abilities/effects/common/PutLandFromHandOntoBattlefieldEffect.java index ee0cb60fa1..9e8feb09f1 100644 --- a/Mage/src/mage/abilities/effects/common/PutLandFromHandOntoBattlefieldEffect.java +++ b/Mage/src/mage/abilities/effects/common/PutLandFromHandOntoBattlefieldEffect.java @@ -65,8 +65,9 @@ public class PutLandFromHandOntoBattlefieldEffect extends OneShotEffect { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { Target target = new TargetCardInHand(new FilterLandCard("land card")); - if (target.canChoose(source.getSourceId(), source.getControllerId(), game) - && controller.choose(outcome, target, source.getSourceId(), game)) { + if (target.canChoose(source.getSourceId(), source.getControllerId(), game) && + controller.chooseUse(outcome, "Put land onto battlefield?", game) && + controller.choose(outcome, target, source.getSourceId(), game)) { Card card = game.getCard(target.getFirstTarget()); if (card != null) { controller.putOntoBattlefieldWithInfo(card, game, Zone.HAND, source.getSourceId(), tapped); diff --git a/Utils/mtg-cards-data.txt b/Utils/mtg-cards-data.txt index c819beba95..efb8a74f19 100644 --- a/Utils/mtg-cards-data.txt +++ b/Utils/mtg-cards-data.txt @@ -25219,76 +25219,152 @@ Plains|Duel Decks: Speed vs. Cunning|80|L||Basic Land - Plains|||W| Plains|Duel Decks: Speed vs. Cunning|81|L||Basic Land - Plains|||W| Goblin Warchief|Duel Decks: Speed vs. Cunning|9|U|{1}{R}{R}|Creature - Goblin Warrior|2|2|Goblin spells you cast cost {1} less to cast.$Goblin creatures you control have haste.| Ugin, the Spirit Dragon|Fate Reforged|1|M|{8}|Planeswalker - Ugin|7|+2: Ugin, the Spirit Dragon deals 3 damage to target creature or player.$-X: Exile each permanent with converted mana cost X or less that's one or more colors.$-10: You gain 7 life, draw 7 cards, then put up to seven permanent cards from your hand onto the battlefield.| +Abzan Advantage|Fate Reforged|2|C|{1}{W}|Instant|||Target player sacrifices an enchantment. Bolster 1| +Abzan Runemark|Fate Reforged|3|C|{2}{W}|Enchantment - Aura|||Enchant creature$Enchanted creature gets +2/+2.$Enchanted creature has vigilance as long as you control a black or green permanent.| +Abzan Skycaptain|Fate Reforged|4|C|{3}{W}|Creature - Bird Soldier|2|2|Flying$When Abzan Captain dies, bolster 2.| +Arashin Cleric|Fate Reforged|5|C|{1}{W}|Creature - Human Cleric|1|3|When Arashin Cleric enters the battlefield, gain 3 life.| +Aven Skirmisher|Fate Reforged|6|C|{W}|Creature - Bird Warrior|1|1|Flying| +Channel Harm|Fate Reforged|7|U|{5}{W}|Instant|||Prevent all damage that would be dealt to you and permanents you control this turn by sources you don't control. If damage is prevented this way, you may have Channel Harm deal that much damage to target creature.| Citadel Siege|Fate Reforged|8|R|{2}{W}{W}|Enchantment|||As Citadel Siege enters the battlefield, choose Khans or Dragons.$• Khans — At the beginning of combat on your turn, put two +1/+1 counters on target creature you control.$• Dragons — At the beginning of combat on each opponent's turn, tap target creature that player controls.| -Daghatar the Adamant|Fate Reforged|9|R|{3}{W}|Legendary Creature - Human Warrior|0|0|Vigilance$Daghatar the Adamant enters the battlefield with four +1/+1 counters on it.${1}{BG}{BG}: Move a +1/+1 counter from target creature onto a second target creature.| +Daghatar the Adamant|Fate Reforged|9|R|{3}{W}|Legendary Creature - Human Warrior|0|0|Vigilance$Daghatar the Adamant enters the battlefield with four +1/+1 counters on it.${1}{(B/G)}{(B/G)}: Move a +1/+1 counter from target creature onto a second target creature.| +Dragon Bell Monk|Fate Reforged|10|C|{2}{W}|Creature - Human Monk|2|2|Vigilance$Prowess| Dragonscale General|Fate Reforged|11|R|{3}{W}|Creature - Human Warrior|2|3|At the beginning of your end step, bolster X, where X is the number of tapped creatures you control. (Choose a creature with the least toughness among creatures you control and put X +1/+1 counters on it.)| +Elite Scaleguard|Fate Reforged|12|U|{4}{W}|Creature - Human Soldier|2|3|When Elite Scaleguard enters the battlefield, bolster 2.$Whenever a creature you control with a +1/+1 counter on it attacks, tap target creature defending player controls.| +Great-Horn Krushok|Fate Reforged|13|C|{4}{W}|Creature - Beast|3|5|| Honor's Reward|Fate Reforged|14|U|{2}{W}|Instant|||You gain 4 life. Bolster 2. (Choose a creature with the least toughness among creatures you control and put two +1/+1 counters on it.)| Jeskai Barricade|Fate Reforged|15|U|{1}{W}|Creature - Wall|0|4|Flash$Defender$When Jeskai Barricade enters the battlefield, you may return another creature you control to its owner's hand.| Lightform|Fate Reforged|16|U|{1}{W}{W}|Enchantment|||When Lightform enters the battlefield, it becomes an Aura with enchant creature. Manifest the top card of your library and attach Lightform to it. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. You may turn it face up at any time for its mana cost if it's a creature card.)$Enchanted creature has flying and lifelink.| +Lotus-Eye Mystics|Fate Reforged|17|U|{3}{W}|Creature - Human Monk|3|2|Prowess$When Lotus-Eye Mystics enters the battlefield, return target enchantment card from your graveyard to your hand.| +Mardu Woe-Reaper|Fate Reforged|18|U|{W}|Creature - Human Warrior|2|1|Whenever Mardu Woe-Reaper or another Warrior enters the battlefield under your control, you may exile target creature card from a graveyard. If you do, you gain 1 life.| Mastery of the Unseen|Fate Reforged|19|R|{1}{W}|Enchantment|||Whenever a permanent you control is turned face up, you gain 1 life for each creature you control.${3}{W}: Manifest the top card of your library. (Put it onto the battlefield face down as a 2/2 creature. Turn it face up at any time for its mana cost if it's a creature card.)| Monastery Mentor|Fate Reforged|20|M|{2}{W}|Creature - Human Monk|2|2|Prowess (Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.)$Whenever you cast a noncreature spell, put a 1/1 white Monk creature token with prowess onto the battlefield.| +Pressure Point|Fate Reforged|21|C|{1}{W}|Instant|||Tap target creature.$Draw a card.| +~Rally the Ancestors|Fate Reforged|22|R|{X}{W}{W}|Instant|||Return each creature card with converted mana cost X or less from your graveyard to the battlefield. Exile those creatures at the beginning of your next upkeep. Exile ~.| +Sage's Reverie|Fate Reforged|23|U|{3}{W}|Enchantment - Aura|||Enchant creature.$When Sage's Reverie enters the battlefield, draw a card for each aura you control that's attached to a creature.$Enchanted creature gets +1/+1 for each aura you control that's attached to a creature.| +Sandblast|Fate Reforged|24|C|{2}{W}|Instant|||Sandblast deals 5 damage to target attacking or blocking creature.| +Sandsteppe Outcast|Fate Reforged|25|C|{2}{W}|Creature - Human Warrior|2|12|1|When Sandsteppe Outcast enters the battlefield, choose one —$• Put a +1/+1 counter on Sandsteppe Outcast.$• Put a 1/1 white Spirit creature token with flying onto the battlefield.$When Sandsteppe Outcast enters the battlefield, choose one —$• Put a +1/+1 counter on Sandsteppe Outcast.$• Put a 1/1 white Spirit creature token with flying onto the battlefield.| Soul Summons|Fate Reforged|26|C|{1}{W}|Sorcery|||Manifest the top card of your library. (Put it onto the battlefield face down as a 2/2 creature. Turn it face up at any time for its mana cost if it's a creature card.)| -Soulfire Grand Master|Fate Reforged|27|M|{1}{W}|Creature - Human Monk|2|2|Lifelink$Instant and sorcery spells you control have lifelink.${2}{UR}{UR}: The next time you cast an instant or sorcery spell from your hand this turn, put that card into your hand instead of your graveyard as it resolves.| +Soulfire Grand Master|Fate Reforged|27|M|{1}{W}|Creature - Human Monk|2|2|Lifelink$Instant and sorcery spells you control have lifelink.${2}{(U/R)}{(U/R)}: The next time you cast an instant or sorcery spell from your hand this turn, put that card into your hand instead of your graveyard as it resolves.| Valorous Stance|Fate Reforged|28|U|{1}{W}|Instant|||Choose one —$• Target creature gains indestructible until end of turn.$• Destroy target creature with toughness 4 or greater.| Wandering Champion|Fate Reforged|29|U|{1}{W}|Creature - Human Monk|3|1|Whenever Wandering Champion deals combat damage to a player, if you control a blue or red permanent, you may discard a card. If you do, draw a card.| Wardscale Dragon|Fate Reforged|30|U|{4}{W}{W}|Creature - Dragon|4|4|Flying$As long as Wardscale Dragon is attacking, defending player can't cast spells.| -Reality Shift|Fate Reforged|46|U|{1}{U}|Instant|||Exile target creature. Its controller manifests the top card of his or her library. (That player puts it onto the battlefield face down as a 2/2 creature. If it's a creature card, it can be turned face up at any time for its mana cost.)$Exile target creature. Its controller manifests the top card of his or her library. (That player puts it onto the battlefield face down as a 2/2 creature. If it's a creature card, it can be turned face up at any time for its mana cost.)| +Aven Surveyor|Fate Reforged|31|C|{3}{U}{U}|Creature - Bird Scout|2|2|When Aven Surveyor enters the battlefield, choose one -$*Put a +1/+1 counter on Aven Surveyor$*Return target creature to its owner's hand| +Cloudform|Fate Reforged|32|U|{1}{U}{U}|Enchantment|||When Cloudform enters the battlefield, it becomes an aura with enchant creature. Manifest the top card of your library and attach Cloudform to it.$Enchanted creature has flying and hexproof.| +Enhanced Awareness|Fate Reforged|33|C|{4}{U}|Instant|||Draw three cards, then discard a card.| +Fascination|Fate Reforged|34|U|{X}{U}{U}|Sorcery|||Choose one —$• Each player draws X cards.$• Each player puts the top X cards of his or her library into his or her graveyard.$Choose one —$• Each player draws X cards.$• Each player puts the top X cards of his or her library into his or her graveyard.| +Frost Walker|Fate Reforged|35|U|{1}{U}|Creature - Elemental|4|14|1|When Frost Walker becomes the target of a spell or ability, sacrifice it.$When Frost Walker becomes the target of a spell or ability, sacrifice it.| Jeskai Infiltrator|Fate Reforged|36|R|{2}{U}|Creature - Human Monk|2|3|Jeskai Infiltrator is unblockable as long as you control no other creatures.$Whenever Jeskai Infiltrator deals combat damage to a player, exile it and the top card of your library in a face-down pile, shuffle that pile, then manifest those cards. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. You may turn it face up at any time for its mana cost if it is a creature card.)| +Jeskai Runemark|Fate Reforged|37|C|{2}{U}|Enchantment - Aura|||Enchant creature$Enchanted creature gets +2/+2.$Enchanted creature has flying as long as you control a red or white permanent.$Enchant creature| Jeskai Sage|Fate Reforged|38|C|{1}{U}|Creature - Human Monk|1|1|Prowess (Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn)$When Jeskai Sage dies, draw a card.| +Lotus Path Djinn|Fate Reforged|39|C|{3}{U}|Creature - Djinn Monk|2|3|Flying$Prowess| Marang River Prowler|Fate Reforged|40|U|{2}{U}|Creature - Human Rogue|2|1|Marang River Prowler can't block and can't be blocked.$You may cast Marang River Prowler from your graveyard as long as you control a black or green permanent.| Mindscour Dragon|Fate Reforged|41|U|{4}{U}{U}|Creature - Dragon|4|4|Whenever Mindscour Dragon deals combat damage to an opponent, target player puts the top four cards of his or her library into his or her graveyard.| +Mistfire Adept|Fate Reforged|42|U|{3}{U}{3}{U}|Creature - Human Monk|3|33|3|Prowess$Whenever you cast a noncreature spell, target creature gains flying until end of turn.$Prowess$Whenever you cast a noncreature spell, target creature gains flying until end of turn.| Monastery Siege|Fate Reforged|43|R|{2}{U}|Enchantment|||When Monastery Siege enters the battlefield, choose Khans or Dragons.$• Khans — At the beginning of your draw step, draw an additional card, then discard a card.$• Dragons — Spells your opponents cast that target you or a permanent you control cost {2} more to cast.| Neutralizing Blast|Fate Reforged|44|U|{1}{U}|Instant|||Counter target multicolored spell.| +Rakshasa's Disdain|Fate Reforged|45|C|{2}{U}{2}{U}|Instant|||Counter target spell unless its controller pays {1} for each card in your graveyard.$Counter target spell unless its controller pays {1} for each card in your graveyard.| +Reality Shift|Fate Reforged|46|U|{1}{U}|Instant|||Exile target creature. Its controller manifests the top card of his or her library. (That player puts it onto the battlefield face down as a 2/2 creature. If it's a creature card, it can be turned face up at any time for its mana cost.)| +Refocus|Fate Reforged|47|C|{1}{U}{1}{U}|Instant|||Untap target creature.$Draw a card.$Untap target creature.$Draw a card.| +Renowned Weaponsmith|Fate Reforged|48|U|{1}{U}|Creature - Human Artificer|1|3|{t}: Add {2} to your mana pool. Spend this mana only to cast artifact spells or activate abilities of artifacts.${U}, {t}: Search your library for a card named Heart-Piercer Bow or Vial of Dragonfire, reveal it, put it into your hand, then shuffle your library.| +Rite of Undoing|Fate Reforged|49|U|{4}{U}|Instant|||Delve$Return target nonland permanent you control and target nonland permanent you don't control to their owners' hands.| Sage-Eye Avengers|Fate Reforged|50|R|{4}{U}{U}|Creature - Djinn Monk|4|5|Prowess$Whenever Sage-Eye Avengers attacks, you may return target creature to its owner's hand if its power is less than Sage-Eye Avengers's power.| +Shifting Loyalties|Fate Reforged|51|U|{5}{U}|Sorcery|||Exchange control of two target permanents that share a type.| Shu Yun, the Silent Tempest|Fate Reforged|52|R|{2}{U}|Legendary Creature - Human Monk|3|2|Prowess (Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.)$Whenever you cast a noncreature spell, you may pay {RW}{RW}. If you do, target creature gains double strike until end of turn.| +Sultai Skulltapper|Fate Reforged|53|C|{1}{U}|Creature - Naga Shaman|2|1|When Sultai Skullkeeper enters the battlefield, put the top two cards of your library into your graveyard.| Supplant Form|Fate Reforged|54|R|{4}{U}{U}|Instant|||Return target creature to its owner's hand. You put a token onto the battlefield that's a copy of that creature.| Temporal Trespass|Fate Reforged|55|M|{8}{U}{U}{U}|Sorcery|||Delve$Take an extra turn after this one. Exile Temporal Trespass.| Torrent Elemental|Fate Reforged|56|M|{4}{U}|Creature - Elemental|3|5|Flying$Whenever Torrent Elemental attacks, tap all creatures defending player controls.${3}{BG}{BG}: Put Torrent Elemental from exile onto the battlefield tapped. Activate this ability only any time you could cast a sorcery.| -Write into Being|Fate Reforged|59|C|{2}{U}|Sorcery|||Look at the top two cards of your library. Manifest one of those cards, then put the other on top or bottom of your library. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. Turn it face up at any time for its mana cost if it's a creature card.)$Look at the top two cards of your library. Manifest one of those cards, then put the other on top or bottom of your library. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. Turn it face up at any time for its mana cost if it's a creature card.)| +Whisk Away|Fate Reforged|57|C|{2}{U}|Instant|||Put target attacking or blocking creature on top of its owner's library.| +Will of the Naga|Fate Reforged|58|C|{4}{U}{U}|Instant|||Delve$Tap up to two target creatures. Those creatures don't untap during their controller's next untap step.| +Write into Being|Fate Reforged|59|C|{2}{U}|Sorcery|||Look at the top two cards of your library. Manifest one of those cards, then put the other on top or bottom of your library. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. Turn it face up at any time for its mana cost if it's a creature card.)| +Alesha's Vanguard|Fate Reforged|60|C|{3}{B}|Creature - Orc Warrior|3|3|Dash {2}{B}| +Ancestral Vengeance|Fate Reforged|61|C|{B}{B}|Enchantment - Aura|||Enchant creature$When Ancestral Vengeance enters the battlefield, put a +1/+1 counter on target creature you control.$Enchanted creature gets -1/-1.| Archfiend of Depravity|Fate Reforged|62|R|{3}{B}{B}|Creature - Demon|5|4|At the beginning of each opponent's end step, that player chooses up to two creatures he or she controls, then sacrifices the rest.| Battle Brawler|Fate Reforged|63|U|{1}{B}|Creature - Orc Warrior|2|2|As long as you control a red or white permanent, Battle Brawler gets +1/+0 and has first strike.| -Renowned Weaponsmith|Fate Reforged|48|U|{1}{U}|Creature - Human Artificer|1|3|{t}: Add {2} to your mana pool. Spend this mana only to cast artifact spells or activate abilities of artifacts.${U}, {t}: Search your library for a card named Heart-Piercer Bow or Vial of Dragonfire, reveal it, put it into your hand, then shuffle your library.| Brutal Hordechief|Fate Reforged|64|M|{3}{B}|Creature - Orc Warrior|3|3|Whenever a creature you control attacks, defending player loses 1 life and you gain 1 life.${3}{RW}{RW}: Creatures your opponents control block this turn if able, and you choose how those creatures block.| Crux of Fate|Fate Reforged|65|R|{3}{B}{B}|Sorcery|||Choose one —$• Destroy all Dragon creatures.$• Destroy all non-Dragon creatures.| +Dark Deal|Fate Reforged|66|U|{2}{B}|Sorcery|||Each player discards all the cards in his or her hand, then draws that many cards minus one.| +Diplomacy of the Wastes|Fate Reforged|67|U|{2}{B}|Sorcery|||Target opponent reveals his or her hand. You choose a nonland card from it. That player discards that card. If you control a Warrior, that player loses 2 life.| +Douse in Gloom|Fate Reforged|68|C|{2}{B}|Instant|||Douse in Gloom deals 2 damage to target creature and you gain 2 life.| +Fearsome Awakening|Fate Reforged|69|U|{4}{B}|Sorcery|||Return target creature card from your graveyard to the battlefield. If it's a Dragon, put two +1/+1 counters on it.| +Ghastly Conscription|Fate Reforged|70|M|{5}{B}{B}|Sorcery|||Exile all creature cards from target player's graveyard in a face-down pile, shuffle that pile, then manifest those cards. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. Turn it face up at any time for its mana cost if it's a creature card.)| +Grave Strength|Fate Reforged|71|U|{1}{B}|Sorcery|||Choose target creature. Put the top three cards of your library into your graveyard, then put a +1/+1 counter on that creature for each creature card in your graveyard.| Gurmag Angler|Fate Reforged|72|C|{6}{B}|Creature - Zombie Fish|5|5|Delve| Hooded Assassin|Fate Reforged|73|C|{2}{B}|Creature - Human Assassin|1|2|When Hooded Assassin enters the battlefield, choose one —$• Put a +1/+1 counter on Hooded Assassin.$• Destroy target creature that was dealt damage this turn.| Mardu Shadowpsear|Fate Reforged|74|U|{B}|Creature - Human Warrior|1|1|Whenever Mardu Shadowspear attacks, each opponent loses 1 life.$Dash {1}{B} (You may cast this spell for its dash cost. If you do, it gains haste, and it's returned from the battlefield to its owner's hand at the beginning of the next end step.)| Mardu Strike Leader|Fate Reforged|75|R|{2}{B}|Creature - Human Warrior|3|2|Whenever Mardu Strike Leader attacks, put a 2/1 black Warrior creature token onto the battlefield.$Dash {3}{B} (You may cast this spell for its dash cost. If you do, it gains haste, and it is returned from the battlefield to your hand at the beginning of the next end step.)| +Merciless Executioner|Fate Reforged|76|U|{2}{B}|Creature - Orc Warrior|3|1|When Merciless Executioner enters the battlefield, each player sacrifices a creature.| Noxious Dragon|Fate Reforged|77|U|{4}{B}{B}|Creature - Dragon|4|4|Flying$When Noxious Dragon dies, you may destroy target creature with converted mana cost 3 or less.| +Orc Sureshot|Fate Reforged|78|U|{3}{B}|Creature - Orc Archer|4|2|Whenever another creature enters the battlefield under your control, target creature an opponent controls gets -1/-1 until end of turn.| Palace Siege|Fate Reforged|79|R|{3}{B}{B}|Enchantment|||As Palace Siege enters the battlefield, choose Khans or Dragons.$• Khans — At the beginning of your upkeep, return target creature card from your graveyard to your hand.$• Dragons — At the beginning of your upkeep, each opponent loses 2 life and you gain 2 life.| +Qarsi High Priest|Fate Reforged|80|U|{B}|Creature - Human Cleric|0|2|{1}{B}, {t}, Sacrifice another creature: Manifest the top card of your library.| +Reach of Shadows|Fate Reforged|81|C|{4}{B}|Instant|||Destroy target creature that's one or more colors.| +Sibsig Host|Fate Reforged|82|C|{4}{B}|Creature - Zombie|2|6|When Sibsig Host enters the battlefield, each player puts the top three cards of his or her library into his or her graveyard.| +Sibsig Muckdraggers|Fate Reforged|83|U|{8}{B}|Creature - Zombie|3|6|Delve$When Sibsig Muckdraggers enters the battlefield, return target creature card from your graveyard to your hand.| Soulflayer|Fate Reforged|84|R|{4}{B}{B}|Creature - Demon|4|4|Delve$If a creature card with flying was exiled with Soulflayer's delve ability, Soulflayer has flying. The same is true for first strike, double strike, deathtouch, haste, hexproof, indestructible, lifelink, reach, trample, and vigilance.| -Sultai Emissary|Fate Reforged|86|C|{1}{B}|Creature - Zombie Warrior|1|1|When Sultai Emissary dies, manifest the top card of your library. (Put that card onto the battlefield face down as a 2/2 creature. Turn it face up any time for its mana cost if it's a creature card.)$When Sultai Emissary dies, manifest the top card of your library. (Put that card onto the battlefield face down as a 2/2 creature. Turn it face up any time for its mana cost if it's a creature card.)| +Sultai Emissary|Fate Reforged|86|C|{1}{B}|Creature - Zombie Warrior|1|1|When Sultai Emissary dies, manifest the top card of your library. (Put that card onto the battlefield face down as a 2/2 creature. Turn it face up any time for its mana cost if it's a creature card.)| +Sultai Runemark|Fate Reforged|86|C|{2}{B}|Enchantment - Aura|||Enchant creature$Enchanted creature gets +2/+2.$Enchanted creature has deathtouch as long as you control a green or blue permanent.| Tasigur, the Golden Fang|Fate Reforged|87|R|{5}{B}|Legendary Creature - Human Shaman|4|5|Delve${2}{GU}{GU}: Put the top two cards of your library into your graveyard, then return a nonland card of an opponent's choice from your graveyard to your hand.| -Fierce Invocation|Fate Reforged|98|C|{4}{R}|Sorcery|||Manifest the top card of your library, then put two +1/+1 counters on it. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. Turn it face up any time for its mana cost if it's a creature card.)$Manifest the top card of your library, then put two +1/+1 counters on it. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. Turn it face up any time for its mana cost if it's a creature card.)| +Tasigur's Cruelty|Fate Reforged|88|C|{5}{B}|Sorcery|||Delve$Each opponent discards two cards.| +Typhoid Rats|Fate Reforged|89|C|{B}|Creature - Rat|1|1|Deathtouch| Alesha, Who Smiles at Death|Fate Reforged|90|R|{2}{R}|Legendary Creature - Human Warrior|3|2|First strike$Whenever Alesha, Who Smiles at Death attacks, you may pay {WB}{WB}. If you do, return target creature card with power 2 or less from your graveyard to the battlefield tapped and attacking.| Arcbond|Fate Reforged|91|R|{2}{R}|Instant|||Choose target creature. Whenever that creature is dealt damage this turn, it deals that much damage to each other creature and each player.| +Bathe in Dragonfire|Fate Reforged|92|C|{2}{R}|Sorcery|||Bathe in Dragonfire deals 4 damage to target creature.| +Bloodfire Enforcers|Fate Reforged|93|U|{3}{R}|Creature - Human Monk|5|2|Bloodfire Enforcers has first strike and trample as long as an instant card and a sorcery card are in your graveyard.| +Break Through the Line|Fate Reforged|94|U|{1}{R}|Enchantment|||{R}: Target creature with power 2 or less gains haste until end of turn and can't be blocked this turn.| +Collateral Damage|Fate Reforged|95|C|{R}|Instant|||As an additional cost to cast Collateral Damge, sacrifice a creature.$Collateral Damage deals 3 damage to target creature or player.| +Defiant Ogre|Fate Reforged|96|C|{5}{R}|Creature - Ogre Warrior|3|5|When Defiant Ogre enters the battlefield, choose one —$• Put a +1/+1 counter on Defiant Ogre.$• Destroy target artifact.| +Dragonrage|Fate Reforged|97|U|{2}{R}|Instant|||Add {R} to your mana pool for each attacking creature you control. Until end of turn, attacking creatures you control gain "{R}: This creature gets +1/+0 until end of turn."| +Fierce Invocation|Fate Reforged|98|C|{4}{R}|Sorcery|||Manifest the top card of your library, then put two +1/+1 counters on it. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. Turn it face up any time for its mana cost if it's a creature card.)| Flamerush Rider|Fate Reforged|99|R|{4}{R}|Creature - Human Warrior|3|3|Whenever Flamerush Rider attacks, put a token onto the battlefield tapped and attacking that's a copy of another target attacking creature. Exile the token at end of combat.$Dash {2}{R}{R} (You may cast this spell for its dash cost. If you do, it gains haste, and it's returned from the battlefield to its owner's hand at the beginning of the next end step.)| Flamewake Phoenix|Fate Reforged|100|R|{1}{R}{R}|Creature - Phoenix|2|2|Flying, haste$Flamewake Phoenix attacks each turn if able.$Ferocious — At the beginning of combat on your turn, if you control a creature with power 4 or greater, you may pay {R}. If you do, return Flamewake Phoenix from your graveyard to the battlefield.| +Friendly Fire|Fate Reforged|101|U|{3}{R}|Instant|||Target creature's controller reveals a card at random from his or her hand. Friendly fire deals damage to that creature and that player equal to the revealed card's converted mana cost.| Goblin Heelcutter|Fate Reforged|102|C|{3}{R}|Creature - Goblin Berserker|3|2|Whenever Goblin Heelcutter attacks, target creature can't block this turn.$Dash {2}{R} (You may cast this spell for its dash cost. If you do, it gains haste, and it's returned from the battlefield to its owner's hand at the beginning of the next end step.)| +Gore Swine|Fate Reforged|103|C|{2}{R}|Creature - Boar|4|1|| Humble Defector|Fate Reforged|104|U|{1}{R}|Creature - Human Rogue|2|1|{T}: Draw two cards. Target opponent gains control of Humble Defector. Activate this ability only during your turn.| Hungering Yeti|Fate Reforged|105|U|{4}{R}|Creature - Yeti|4|4|As long as you control a green or blue permanent, you may cast Hungering Yeti as though it had flash.| Lightning Shrieker|Fate Reforged|106|C|{4}{R}|Creature - Dragon|5|5|At the beginning of the end step, Lightning Shrieker's owner shuffles it into his or her library.| +Mardu Runemark|Fate Reforged|107|C|{2}{R}|Enchantment - Aura|||Enchant creature$Enchanted creature gets +2/+2.$Enchanted creature has first strike as long as you control a white or black permanent.| +Mardu Scout|Fate Reforged|108|C|{R}{R}|Creature - Goblin Scout|3|1|Dash {1}{R} (You may cast this spell for its dash cost. If you do, it gains haste, and it's returned from the battlefield to its owner's hand at the beginning of the next end step.)| +Mob Rule|Fate Reforged|109|R|{4}{R}{R}|Sorcery|||Choose one —$• Gain control of all creatures with power 4 or greater until end of turn. Untap those creatures. They gain haste until end of turn.$• Gain control of all creatures with power 3 or less until end of turn. Untap those creatures. They gain haste until end of turn.| Outpost Siege|Fate Reforged|110|R|{3}{R}|Enchantment|||As Outpost Siege enters the battlefield, choose Khans or Dragons. $• Khans — At the beginning of your upkeep, exile the top card of your library. Until end of turn, you may play that card. $• Dragons — Whenever a creature you control leaves the battlefield, Outpost Siege deals 1 damage to target creature or player.| +Pyrotechnics|Fate Reforged|111|U|{4}{R}|Sorcery|||Pyrotechnics deals 4 damage divided as you choose among any number of target creatures and/or players.| Rageform|Fate Reforged|112|U|{2}{R}{R}|Enchantment|||When Rageform enters the battlefield, it becomes an Aura with enchant creature. Manifest the top card of your library and attach Rageform to it. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. You may turn it face up at any time for its mana cost if it's a creature card.)$Enchanted creature has double strike. (It deals both first-strike and regular combat damage.)| Shaman of the Great Hunt|Fate Reforged|113|M|{3}{R}|Creature - Orc Shaman|4|2|Haste$Whenever a creature you control deals combat damage to a player, put a +1/+1 counter on it.$Ferocious — {2}{GU}{GU}: Draw a card for each creature you control with power 4 or greater.| Shockmaw Dragon|Fate Reforged|114|U|{4}{R}{R}|Creature - Dragon|4|4|Flying$Whenever Shockmaw Dragon deals combat damage to a player, it deals 1 damage to each creature that player controls.| -Wild Slash|Fate Reforged|118|U|{R}|Instant|||Ferocious - If you control a creature with power 4 or greater, damage can't be prevented this turn.$Wild Slash deals 2 damage to target creature or player.| +Smoldering Efreet|Fate Reforged|115|C|{1}{R}|Creature - Efreet Monk|2|2|When Smoldering Efreet dies, it deals 2 damage to you.| +Temur Battle Rage|Fate Reforged|116|C|{1}{R}|Instant|||Target creature gains double strike until end of turn.$Ferocious — That creature also gains trample until end of turn if you control a creature with power 4 or greater.| +Vaultbreaker|Fate Reforged|117|U|{3}{R}|Creature - Orc Rogue|4|2|Whenever Vaultbreaker attacks, you may discard a card. If you do, draw a card.$Dash {2}{R}| +Wild Slash|Fate Reforged|118|U|{R}|Instant|||Ferocious — If you control a creature with power 4 or greater, damage can't be prevented this turn.$Wild Slash deals 2 damage to target creature or player.| +Abzan Beastmaster|Fate Reforged|119|U|{2}{G}|Creature - Hound Shaman|2|1|At the beginning of your upkeep, draw a card if you control the creature with the greatest toughness or tied for the greatest toughness.| Abzan Kin-Guard|Fate Reforged|120|U|{3}{G}|Creature - Human Warrior|3|3|Abzan Kin-Guard has lifelink as long as you control a white or black permanent.| +Ainok Guide|Fate Reforged|121|C|{1}{G}|Creature - Hound Scout|1|1|When Ainok Guide enters the battlefield, choose one —$• Put a +1/+1 counter on Ainok Guide.$• Search your library for a basic land card, reveal it, then shuffle your library and put that card on top of it.| Ambush Krotiq|Fate Reforged|122|C|{5}{G}|Creature - Insect|5|5|Trample$When Ambush Krotiq enters the battlefield, return another creature you control to its owner's hand.| -Arashin War Beast|Fate Reforged|123|U|{5}{G}{G}|Creature - Beast|6|6|Whenever Arashin War Beast deals combat damage to one or more blocking creatures, manifest the top card of your library. (Put it onto the battlefield face down as a 2/2 creature. Turn it face up at any time for its mana cost if it's a creature card.)$Whenever Arashin War Beast deals combat damage to one or more blocking creatures, manifest the top card of your library. (Put it onto the battlefield face down as a 2/2 creature. Turn it face up at any time for its mana cost if it's a creature card.)| +Arashin War Beast|Fate Reforged|123|U|{5}{G}{G}|Creature - Beast|6|6|Whenever Arashin War Beast deals combat damage to one or more blocking creatures, manifest the top card of your library. (Put it onto the battlefield face down as a 2/2 creature. Turn it face up at any time for its mana cost if it's a creature card.)| +Archers of Qarsi|Fate Reforged|124|C|{3}{G}|Creature - Naga Archer|5|2|Defender$Reach| +Battlefront Krushok|Fate Reforged|125|U|{4}{G}|Creature - Beast|3|4|Battlefront Krushok can't be blocked by more than one creature.$Each creature you control with a +1/+1 counter on it can't be blocked by more than one creature.| +Cached Defenses|Fate Reforged|126|U|{2}{G}|Sorcery|||Bolster 3.| Destructor Dragon|Fate Reforged|127|U|{4}{G}{G}|Creature - Dragon|4|4|Flying$When Destructor Dragon dies, destroy target noncreature permanent.| -Formless Nurturing|Fate Reforged|128|C|{3}{G}|Sorcery|||Manifest the top card of your library, then put a +1/+1 counter on it. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. Turn it face up any time for its mana cost if it's a creature card.)$Manifest the top card of your library, then put a +1/+1 counter on it. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. Turn it face up any time for its mana cost if it's a creature card.)| +Feral Krushok|Fate Reforged|128|C|{4}{G}|Creature - Beast|5|4|| +Formless Nurturing|Fate Reforged|128|C|{3}{G}|Sorcery|||Manifest the top card of your library, then put a +1/+1 counter on it. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. Turn it face up any time for its mana cost if it's a creature card.)| Frontier Mastodon|Fate Reforged|130|C|{2}{G}|Creature - Elephant|3|2|Ferocious — Frontier Mastodon enters the battlefield with a +1/+1 counter on it if you control a creature with power 4 or greater.| Frontier Siege|Fate Reforged|131|R|{3}{G}|Enchantment|||As Frontier Siege enters the battlefield, choose Khans or Dragons.$• Khans — At the beginning of each of your main phases, add {G}{G} to your mana pool.$• Dragons — Whenever a creature with flying enters the battlefield under your control, you may have it fight target creature you don't control.| Fruit of the First Tree|Fate Reforged|132|U|{3}{G}|Enchantment - Aura|||Enchant Creature$When enchanted creature dies, you gain X life and draw X cards, where X is its toughness.| +Hunt the Weak|Fate Reforged|133|C|{3}{G}|Sorcery|||Put a +1/+1 counter on target creature you control. That creature fights target creature you don't control.| +Map the Wastes|Fate Reforged|134|C|{2}{G}|Sorcery|||Search your library for a basic land card, put it onto the battlefield tapped, then shuffle your library.$Bolster 1.| +Return to the Earth|Fate Reforged|135|C|{3}{G}|Instant|||Destroy target artifact, enchantment, or creature with flying.| +Ruthless Instincts|Fate Reforged|136|U|{2}{G}|Instant|||Choose one —$• Target nonattacking creature gains reach and deathtouch until end of turn. Untap it.$• Target attacking creature gets +2/+2 and gains trample until end of turn.| Sandsteppe Mastodon|Fate Reforged|137|R|{5}{G}{G}|Creature - Elephant|5|5|Reach$When Sandsteppe Mastodon enters the battlefield, bolster 5. (Choose a creature with the least toughness or tied with the least toughness among creatures you control and put 5 +1/+1 counters on it.)| Shamanic Revelation|Fate Reforged|138|R|{3}{G}{G}|Sorcery|||Draw a card for each creature you control.$Ferocious — You gain 4 life for each creature you control with power 4 or greater.| +Sudden Reclamation|Fate Reforged|139|U|{3}{G}|Instant|||Put the top four cards of your library into your graveyard, then return a creature card and a land card from your graveyard to your hand.| +Temur Runemark|Fate Reforged|140|C|{2}{G}|Enchantment - Aura|||Enchant creature$Enchanted creature gets +2/+2.$Enchanted creature has trample as long as you control a blue or red permanent.| Temur Sabertooth|Fate Reforged|141|U|{2}{G}{G}|Creature - Cat|4|3|{1}{G}: You may return another creature you control to its owner's hand. If you do, Temur Sabertooth gains indestructible until end of turn.| Temur War Shaman|Fate Reforged|142|R|{4}{G}{G}|Creature - Human Shaman|4|5|When Temur War Shaman enters the battlefield, manifest the top card of your library. (Put that card onto the battlefield face down as a 2/2 creature. You may turn it face up at any time for its mana cost if it is a creature card.)$Whenever a permanent you control is turned face up, if it is a creature, you may have it fight target creature you don't control.| -Warden of the First Tree|Fate Reforged|143|M|{G}|Creature - Human|1|1|{1}{WB}{WB}: Warden of the First Tree becomes a Human Warrior with base power and toughness 3/3.${2}{WB}{WB}: If Warden of the First Tree is a Warrior, it becomes a Human Spirit Warrior with trample and lifelink.${3}{WB}{WB}{WB}: If Warden of the First Tree is a Spirit, put five +1/+1 counters on it.| +Warden of the First Tree|Fate Reforged|143|M|{G}|Creature - Human|1|1|{1}{WB}{WB}: Warden of the First Tree becomes a Human Warrior with base power and toughness 3/3.${2}{WB}{WB}: If Warden of the First Tree is a Warrior, it becomes a Human Spirit Warrior with trample and lifelink.${3}{WB}{WB}: If Warden of the First Tree is a Spirit, put five +1/+1 counters on it.| Whisperer of the Wilds|Fate Reforged|144|C|{1}{G}|Creature - Human Shaman|0|2|{T}: Add {G} to your mana pool.$Ferocious — {T}: Add {G}{G} to your mana pool. Activate this ability only if you control a creature with power 4 or greater.| Whisperwood Elemental|Fate Reforged|145|M|{3}{G}{G}|Creature - Elemental|4|4|At the beginning of your end step, manifest the top card of your library. (Put it onto the battlefield face down as a 2/2 creature. Turn it face up any time for its mana cost if it's a creature card)$Sacrifice Whisperwood Elemental: Until end of turn, face-up, nontoken creatures you control gain "When this creature dies, manifest the top card of your library."| Wildcall|Fate Reforged|146|R|{X}{G}{G}|Sorcery|||Manifest the top card of your library, then put X +1/+1 counters on it. (To manifest a card, put it onto the battlefield face down as a 2/2 creature. Turn it face up at any time for its mana cost if it's a creature card.)| +Winds of Qal Sisma|Fate Reforged|147|U|{1}{G}|Instant|||Prevent all combat damage that would be dealt this turn.$Ferocious — If you control a creature with power 4 or greater, instead prevent all combat damage that would be dealt this turn by creatures your opponents control.| Yasova Dragonclaw|Fate Reforged|148|R|{2}{G}|Legendary Creature - Human Warrior|4|2|Trample$At the beginning of combat on your turn, you may pay {1}{UR}{UR}. If you do, gain control of target creature an opponent controls with power less than Yasova Dragonclaw's power until end of turn, untap that creature, and it gains haste until end of turn.| Atarka, World Render|Fate Reforged|149|R|{5}{R}{G}|Legendary Creature - Dragon|6|4|Flying, trample$Whenever a Dragon you control attacks, it gains double strike until end of turn.| Cunning Strike|Fate Reforged|150|C|{3}{U}{R}|Instant|||Cunning Strike deals 2 damage to target creature and 2 damage to target player.$Draw a card.| @@ -25297,36 +25373,10 @@ Ethereal Ambush|Fate Reforged|152|C|{3}{G}{U}|Instant|||Manifest the top two car Grim Contest|Fate Reforged|153|C|{1}{B}{G}|Instant|||Choose target creature you control and target creature an opponent controls. Each of those creatures deals damage equal to its toughness to the other.| Harsh Sustenance|Fate Reforged|154|C|{1}{W}{B}|Instant|||Harsh Sustenance deals X damage to target creature or player and you gain X life, where X is the number of creatures you control.| Kolaghan, the Storm's Fury|Fate Reforged|155|R|{3}{B}{R}|Legendary Creature - Dragon|4|5|Flying$Whenever a Dragon you control attacks, creatures you control get +1/+0 until end of turn. $Dash {3}{B}{R} (You may cast this spell for its dash cost. If you do, it gains haste, and it's returned from the battlefield to its owner's hand at the beginning of the next end step.)| -Ojutai, Soul of Winter|Fate Reforged|156|R|{5}{W}{U}|Legendary Creature - Dragon|5|6|Flying, vigilance$Whenever a Dragon you control attacks, tap target nonland permanent an opponent controls. It doesn't untap during its controller's next untap step.$Flying, vigilance$Whenever a Dragon you control attacks, tap target nonland permanent an opponent controls. It doesn't untap during its controller's next untap step.| +Ojutai, Soul of Winter|Fate Reforged|156|R|{5}{W}{U}|Legendary Creature - Dragon|5|6|Flying, vigilance$Whenever a Dragon you control attacks, tap target nonland permanent an opponent controls. It doesn't untap during its controller's next untap step.| Silumgar, the Drifting Death|Fate Reforged|157|R|{4}{U}{B}|Legendary Creature - Dragon|3|7|Flying, hexproof$Whenever a Dragon you control attacks, each creature defending player controls get -1/-1 until end of turn.| War Flare|Fate Reforged|158|C|{2}{R}{W}|Instant|||Creatures you control get +2/+1 until end of turn. Untap those creatures.| -Cut-Stone Retainers|Fate Reforged|161|U|{3}|Artifact Creature - Golem|4|4|Cast Cut-Stone Retainers only if you've cast another spell this turn.| -Scroll of the Masters|Fate Reforged|163|R|{2}|Artifact|||Whenever you cast a noncreature spell, put a lore counter on Scroll of the Masters. ${3},{T}: Target creature you control gets +1/+1 for each lore counter on Scroll of the Masters| -Mardu Scout|Fate Reforged|108|C|{R}{R}|Creature - Goblin Scout|3|1|Dash {1}{R}| -Ghastly Conscription|Fate Reforged|70|M|{5}{B}{B}|Sorcery|||Exile all creature cards from target player's graveyard in a face-down pile, shuffle that pile, then manifest those cards.| -Mardu Woe-Reaper|Fate Reforged|18|U|{W}|Creature - Human Warrior|2|1|Whenever Mardu Woe-Reaper or another Warrior enters the battlefield under your control, you may exile target creature card from a graveyard. If you do, you gain 1 life.| -Ugin's Construct|Fate Reforged|164|U|{4}|Artifact Creature - Construct|4|5|When Ugin's Construct enters the battlefield, sacrifice a permanent that's one or more colors.| -Rally the Ancestors|Fate Reforged|22|R|{X}{W}{W}|Instant|||Return each creature card with converted mana cost X or less from your graveyard to the battlefield. Exile those creatures at the beginning of your next upkeep. Exile Rally the Ancestors.| -Frost Walker|Fate Reforged|35|U|{1}{U}|Creature - Elemental|4|1|When Frost Walker becomes the target of a spell or ability, sacrifice it.| -Abzan Beastmaster|Fate Reforged|119|U|{2}{G}|Creature - Hound Shaman|2|1|At the beginning of your upkeep, draw a card if you control the creature with the greatest toughness or tied for the greatest toughness.$At the beginning of your upkeep, draw a card if you control the creature with the greatest toughness or tied for the greatest toughness.| -Bloodfell Caves|Fate Reforged|165|C||Land|||Bloodfell Caves enters the battlefield tapped.$When Bloodfell Caves enters the battlefield, you gain 1 life.${T}: Add {B} or {R} to your mana pool.| -Blossoming Sands|Fate Reforged|166|C||Land|||Blossoming Sands enters the battlefield tapped.$When Blossoming Sands enters the battlefield, you gain 1 life.${T}: Add {G} or {W} to your mana pool.| -Crucible of the Spirit Dragon|Fate Reforged|167|R||Land|||{T}: Add {1} to your mana pool.${1}, {T}: Put a storage counter on Crucible of the Spirit Dragon.${T}, Remove X storage counters from Crucible of the Spirit Dragon: Add X mana in any combination of colors to your mana pool. Spend this mana only to cast Dragon spells or activate abilities of Dragons.| -Dismal Backwater|Fate Reforged|168|C||Land|||Dismal Backwater enters the battlefield tapped.$When Dismal Backwater enters the battlefield, you gain 1 life.${T}: Add {U} or {B} to your mana pool.| -Jungle Hollow|Fate Reforged|169|C||Land|||Jungle Hollow enters the battlefield tapped.$When Jungle Hollow enters the battlefield, you gain 1 life.${T}: Add {B} or {G} to your mana pool.| -Rugged Highlands|Fate Reforged|170|C||Land|||Rugged Highlands enters the battlefield tapped.$When Rugged Highlands enters the battlefield, you gain 1 life.${T}: Add {R} or {G} to your mana pool.| -Scoured Barrens|Fate Reforged|171|C||Land|||Scoured Barrens enters the battlefield tapped.$When Scoured Barrens enters the battlefield, you gain 1 life.${T}: Add {B} or {W} to your mana pool.| -Swiftwater Cliffs|Fate Reforged|172|C||Land|||Swiftwater Cliffs enters the battlefield tapped.$When Swiftwater Cliffs enters the battlefield, you gain 1 life.${T}: Add {U} or {R} to your mana pool.| -Thornwood Falls|Fate Reforged|173|C||Land|||Thornwood Falls enters the battlefield tapped.$When Thornwood Falls enters the battlefield, you gain 1 life.${T}: Add {G} or {U} to your mana pool.| -Tranquil Cove|Fate Reforged|174|C||Land|||Tranquil Cove enters the battlefield tapped.$When Tranquil Cove enters the battlefield, you gain 1 life.${T}: Add {W} or {U} to your mana pool.| -Wind-Scarred Crag|Fate Reforged|175|C||Land|||Wind-Scarred Crag enters the battlefield tapped.$When Wind-Scarred Crag enters the battlefield, you gain 1 life.${T}: Add {R} or {W} to your mana pool.| -Plains|Fate Reforged|176|L||Basic Land - Plains|||| -Plains|Fate Reforged|177|L||Basic Land - Plains|||| -Island|Fate Reforged|178|L||Basic Land - Island|||| -Island|Fate Reforged|179|L||Basic Land - Island|||| -Swamp|Fate Reforged|180|L||Basic Land - Swamp|||| -Swamp|Fate Reforged|181|L||Basic Land - Swamp|||| -Mountain|Fate Reforged|182|L||Basic Land - Mountain|||| -Mountain|Fate Reforged|183|L||Basic Land - Mountain|||| -Forest|Fate Reforged|184|L||Basic Land - Forest|||| -Forest|Fate Reforged|185|L||Basic Land - Forest|||| \ No newline at end of file +Goblin Boom Keg|Fate Reforged|159|U|{4}|Artifact|||At the beginning of your upkeep, sacrifice Goblin Boom Keg.$When Goblin Boom Keg is put into a graveyard from the battlefield, it deals 3 damage to target creature or player.| +Hero's Blade|Fate Reforged|160|U|{2}|Artifact - Equipment|||Equipped creature gets +3/+2.$Whenever a legendary creature enters the battlefield under your control, you may attach Hero's Blade to it.$Equip {4}| +Hewed Stone Retainers|Fate Reforged|161|U|{3}|Artifact Creature - Golem|4|4|Cast Hewed-Stone Retainers only if you've cast another spell this turn.| +Pilgrim of the Fires|Fate Reforged|162|U|{7}|Artifact Creature - Golem|6|4|First strike, trample| \ No newline at end of file