From 36f119c780d8f6b0b4f368e65b6634f7c44594c3 Mon Sep 17 00:00:00 2001 From: jendave Date: Sat, 6 Aug 2011 15:14:22 +0000 Subject: [PATCH] fix Temporal Aperture not removing card from library when it is played. --- src/forge/CardFactory.java | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/forge/CardFactory.java b/src/forge/CardFactory.java index 0d54293a418..b72a580ea55 100644 --- a/src/forge/CardFactory.java +++ b/src/forge/CardFactory.java @@ -794,6 +794,17 @@ public class CardFactory implements NewConstants { } } + if (hasKeyword(card, "Replicate") != -1) { + int n = hasKeyword(card, "Replicate"); + if (n!= -1) { + String parse = card.getKeyword().get(n).toString(); + String k[] = parse.split("cate "); + + SpellAbility sa = card.getSpellAbility()[0]; + sa.setIsReplicate(true); + sa.setReplicateManaCost(k[1]); + } + } /* //Creatures with self-regenerate abilities @@ -7943,6 +7954,8 @@ public class CardFactory implements NewConstants { if(freeCard.isLand() == true) { if(CardFactoryUtil.canHumanPlayLand()) { PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, player); + PlayerZone orig = AllZone.getZone(freeCard); + orig.remove(freeCard); play.add(freeCard); CardFactoryUtil.playLandEffects(freeCard); AllZone.GameInfo.incrementHumanPlayedLands(); @@ -7953,10 +7966,13 @@ public class CardFactory implements NewConstants { } else if(freeCard.isPermanent() == true) { PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, player); + PlayerZone orig = AllZone.getZone(freeCard); + orig.remove(freeCard); play.add(freeCard); - //AllZone.GameAction.playCardNoCost(freeCard); } else { //sorceries and instants + PlayerZone orig = AllZone.getZone(freeCard); + orig.remove(freeCard); AllZone.GameAction.playCardNoCost(freeCard); } }