From ca63225c8678f70954ae58400ed6cb4f13e7f8aa Mon Sep 17 00:00:00 2001 From: jendave Date: Sat, 6 Aug 2011 05:05:52 +0000 Subject: [PATCH] - Bug fix for Squee. Make sure Squee is still in your grave when ability resolves to return it to hand. --- src/forge/GameActionUtil.java | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/src/forge/GameActionUtil.java b/src/forge/GameActionUtil.java index bc9263536b3..50e624ab835 100644 --- a/src/forge/GameActionUtil.java +++ b/src/forge/GameActionUtil.java @@ -6096,23 +6096,23 @@ public class GameActionUtil { @Override public void resolve() { PlayerZone graveyard = AllZone.getZone(Constant.Zone.Graveyard, player); - PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, player); - if(player.equals("Human")) { - String[] choices = {"Yes", "No"}; - Object o = AllZone.Display.getChoiceOptional( - "Return Squee from your graveyard to your hand?", choices); - if(o.equals("Yes")) { - Card c = squees.get(index[0]); - graveyard.remove(c); - hand.add(c); + Card c = squees.get(index[0]); + if(AllZone.GameAction.isCardInZone(c, graveyard)) { + if(player.equals("Human")) { + String[] choices = {"Yes", "No"}; + Object o = AllZone.Display.getChoiceOptional( + "Return Squee from your graveyard to your hand?", choices); + if(!o.equals("Yes")) { + index[0] = index[0] + 1; + return; + } } - } else if(player.equals("Computer")) { - Card c = squees.get(index[0]); - graveyard.remove(c); - hand.add(c); - } - index[0] = index[0] + 1; + PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, c.getController()); + AllZone.GameAction.moveTo(hand, c); + + index[0] = index[0] + 1; + } } };// Ability