diff --git a/res/cards.txt b/res/cards.txt index a48298158cd..ea64a7ab536 100644 --- a/res/cards.txt +++ b/res/cards.txt @@ -1,3 +1,13 @@ +Forbidden Orchard +no cost +Land +Whenever you tap Forbidden Orchard for mana, put a 1/1 colorless Spirit creature token onto the battlefield under target opponent's control. +tap: add W +tap: add B +tap: add U +tap: add R +tap: add G + Angelsong 1 W Instant diff --git a/src/forge/Ability_Mana.java b/src/forge/Ability_Mana.java index b6314a860cc..b1f0abc9d08 100644 --- a/src/forge/Ability_Mana.java +++ b/src/forge/Ability_Mana.java @@ -93,6 +93,20 @@ abstract public class Ability_Mana extends SpellAbility implements java.io.Seria setDescription(sb.toString()); */ + + if (sourceCard.getName().equals("Forbidden Orchard")) + { + final Card crd = sourceCard; + runcommands.add(new Command() { + private static final long serialVersionUID = 1365329719980281985L; + + public void execute() + { + //currently only human can use this card: + AllZone.Stack.add(CardFactoryUtil.getForbiddenOrchardAbility(crd, Constant.Player.Computer)); + } + }); + } if(isBasic())//lowers memory usage drastically { diff --git a/src/forge/CardFactoryUtil.java b/src/forge/CardFactoryUtil.java index e9fcf71a258..3c5b065c420 100644 --- a/src/forge/CardFactoryUtil.java +++ b/src/forge/CardFactoryUtil.java @@ -1397,6 +1397,7 @@ public class CardFactoryUtil { return cycle; }//ability_typecycle() + public static SpellAbility ability_transmute(final Card sourceCard, final String transmuteCost) { final SpellAbility transmute = new Ability_Hand(sourceCard, transmuteCost) { private static final long serialVersionUID = -4960704261761785512L; @@ -1785,6 +1786,22 @@ public class CardFactoryUtil { //((ReflectedManaInfo)theAbility.choices_made[0]).who = new String(who); } // End getReflectedManaAbility + public static Ability getForbiddenOrchardAbility(final Card card, String player) + { + final String opp = player; + final Ability ability = new Ability(card,"0") + { + public void resolve() + { + makeToken("Spirit", "C 1 1 Spirit", opp, "C", new String[] { + "Creature", "Spirit"}, 1, 1, new String[] {""}); + } + }; + ability.setStackDescription(card + " - put a 1/1 colorless Spirit creature token onto the battlefield under target opponent's control."); + + return ability; + } + public static SpellAbility enPumpCurse_Enchant(final Card sourceCard, final int Power, final int Tough, final String[] extrinsicKeywords, final String[] spellDescription, final String[] stackDescription) { diff --git a/src/forge/GenerateConstructedDeck.java b/src/forge/GenerateConstructedDeck.java index 63e68036e2b..9b8d7856a68 100644 --- a/src/forge/GenerateConstructedDeck.java +++ b/src/forge/GenerateConstructedDeck.java @@ -277,6 +277,12 @@ public class GenerateConstructedDeck remove.add("Viridian Acolyte"); remove.add("Worn Powerstone"); remove.add("Mana Vault"); + remove.add("Tooth of Ramos"); + remove.add("Skull of Ramos"); + remove.add("Horn of Ramos"); + remove.add("Heart of Ramos"); + remove.add("Eye of Ramos"); + remove.add("Forbidden Orchard"); final ArrayList goodLand = new ArrayList(); diff --git a/src/forge/GenerateConstructedMultiColorDeck.java b/src/forge/GenerateConstructedMultiColorDeck.java index fce40df123b..86e99254ac1 100644 --- a/src/forge/GenerateConstructedMultiColorDeck.java +++ b/src/forge/GenerateConstructedMultiColorDeck.java @@ -491,6 +491,12 @@ public class GenerateConstructedMultiColorDeck remove.add("Viridian Acolyte"); remove.add("Worn Powerstone"); remove.add("Mana Vault"); + remove.add("Tooth of Ramos"); + remove.add("Skull of Ramos"); + remove.add("Horn of Ramos"); + remove.add("Heart of Ramos"); + remove.add("Eye of Ramos"); + remove.add("Forbidden Orchard"); final ArrayList goodLand = new ArrayList();