break out more reusable code to GameAction.promptForShuffle(Player);

updated Natural Selection to exercise this new function
This commit is contained in:
jendave
2011-08-06 04:14:44 +00:00
parent 7f4575589f
commit 1f41c4c6b8
2 changed files with 29 additions and 39 deletions

View File

@@ -287,15 +287,14 @@ public class AllZoneUtil {
//zone manipulation, maybe be better off in GameAction.java...
/**
* use this when you need to rearrange the top X cards in a player's library. You
* use this when Human needs to rearrange the top X cards in a player's library. You
* may also specify a shuffle when done
*
* @param player the player to target (currently *cannot* be Computer - no effect)
* @param player the player to target
* @param numCards the number of cards from the top to rearrange
* @param shuffle true if a shuffle is desired at the end, false otherwise
*/
public static void rearrangeTopOfLibrary(final String player, final int numCards, boolean shuffle) {
if(player.equals(Constant.Player.Human)) {
PlayerZone lib = AllZone.getZone(Constant.Zone.Library, player);
int maxCards = lib.size();
maxCards = Math.min(maxCards, numCards);
@@ -325,8 +324,4 @@ public class AllZoneUtil {
AllZone.GameAction.shuffle(player);
}
}
else {
//this does not and is not expected to work for the AI at this time
}
}
}

View File

@@ -17779,12 +17779,7 @@ public class CardFactory implements NewConstants {
public void resolve() {
String player = getTargetPlayer();
AllZoneUtil.rearrangeTopOfLibrary(player, 3, false);
String[] choices = new String[] {"Yes", "No"};
Object o = AllZone.Display.getChoice("Shuffle target player's library?", choices);
String myChoice = (String) o;
if(myChoice.equals("Yes")) {
AllZone.GameAction.shuffle(player);
}
AllZone.GameAction.promptForShuffle(player);
}
@Override
public boolean canPlayAI() {