diff --git a/src/forge/CardFactory.java b/src/forge/CardFactory.java index 9c40a982ac1..3f857a1af30 100644 --- a/src/forge/CardFactory.java +++ b/src/forge/CardFactory.java @@ -2482,7 +2482,7 @@ public class CardFactory implements NewConstants { if(card.getController().equals(Constant.Player.Human)) { if (creats.size() > 0) { - List selection = AllZone.Display.getChoices("Select creatures to sacrifice", creats.toArray()); + List selection = AllZone.Display.getChoicesOptional("Select creatures to sacrifice", creats.toArray()); numCreatures[0] = selection.size(); for(int m = 0; m < selection.size(); m++) { diff --git a/src/forge/CardFactory_Planeswalkers.java b/src/forge/CardFactory_Planeswalkers.java index 83a66d37425..bd529b3ed01 100644 --- a/src/forge/CardFactory_Planeswalkers.java +++ b/src/forge/CardFactory_Planeswalkers.java @@ -3,6 +3,7 @@ package forge; import java.util.HashMap; +import java.util.List; class CardFactory_Planeswalkers { @@ -329,14 +330,28 @@ class CardFactory_Planeswalkers { list.addAll(library.getCards()); list = list.getType("Elf"); - //currently, just adds all elves into play. - for(int i = 0; i < list.size(); i++) { - Card c = list.get(i); - if(c.isCreature()) { - library.remove(c); - play.add(c); - } + if (card.getController().equals(Constant.Player.Human)) + { + List selection = AllZone.Display.getChoicesOptional("Select Elves to put into play", list.toArray()); + + int numElves = selection.size(); + for(int m = 0; m < numElves; m++) { + Card c = selection.get(m); + library.remove(c); + play.add(c); + } } + else //computer + { + for(int i = 0; i < list.size(); i++) { + Card c = list.get(i); + if(c.isCreature()) { + library.remove(c); + play.add(c); + } + } + } + } @Override