diff --git a/.gitattributes b/.gitattributes index b20f06a4591..f015049affb 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1186,7 +1186,6 @@ forge-gui-mobile/src/forge/screens/constructed/ConstructedScreen.java -text forge-gui-mobile/src/forge/screens/draft/DraftScreen.java -text forge-gui-mobile/src/forge/screens/draft/DraftingProcessScreen.java -text forge-gui-mobile/src/forge/screens/gauntlet/GauntletScreen.java -text -forge-gui-mobile/src/forge/screens/gauntlet/NewGauntletScreen.java -text forge-gui-mobile/src/forge/screens/home/HomeScreen.java -text forge-gui-mobile/src/forge/screens/match/FControl.java -text forge-gui-mobile/src/forge/screens/match/MatchScreen.java -text diff --git a/forge-gui-desktop/src/main/java/forge/screens/home/gauntlet/CSubmenuGauntletContests.java b/forge-gui-desktop/src/main/java/forge/screens/home/gauntlet/CSubmenuGauntletContests.java index 53a3187bf75..931ce7384c7 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/home/gauntlet/CSubmenuGauntletContests.java +++ b/forge-gui-desktop/src/main/java/forge/screens/home/gauntlet/CSubmenuGauntletContests.java @@ -63,7 +63,6 @@ public enum CSubmenuGauntletContests implements ICDoc { view.getGauntletLister().setSelectedIndex(0); } - private void updateData() { final File[] files = GauntletIO.getGauntletFilesLocked(); final List data = new ArrayList(); @@ -108,7 +107,6 @@ public enum CSubmenuGauntletContests implements ICDoc { starter.add(new RegisteredPlayer(aiDeck).setPlayer(fc.createAiPlayer())); fc.startMatch(GameType.Gauntlet, starter); - } /* (non-Javadoc) diff --git a/forge-gui-mobile/src/forge/screens/gauntlet/GauntletScreen.java b/forge-gui-mobile/src/forge/screens/gauntlet/GauntletScreen.java index 8eeb4ec59cf..dffd30d6faa 100644 --- a/forge-gui-mobile/src/forge/screens/gauntlet/GauntletScreen.java +++ b/forge-gui-mobile/src/forge/screens/gauntlet/GauntletScreen.java @@ -210,7 +210,35 @@ public class GauntletScreen extends LaunchScreen { } private void createGauntletContest() { - + final File[] files = GauntletIO.getGauntletFilesLocked(); + final List contests = new ArrayList(); + for (final File f : files) { + contests.add(GauntletIO.loadGauntlet(f)); + } + + GuiChoose.oneOrNone("Select Gauntlet Contest", contests, new Callback() { + @Override + public void run(final GauntletData contest) { + if (contest == null) { return; } + + FDeckChooser.promptForDeck("Select Your Deck", GameType.Gauntlet, false, new Callback() { + @Override + public void run(final Deck userDeck) { + if (userDeck == null) { return; } + + //create copy of contest to use as gauntlet + GauntletData gauntlet = new GauntletData(); + gauntlet.setDecks(new ArrayList(contest.getDecks())); + gauntlet.setEventNames(new ArrayList(contest.getEventNames())); + gauntlet.setUserDeck(userDeck); + GauntletUtil.setDefaultGauntletName(gauntlet, contest.getDisplayName() + "_"); + FModel.setGauntletData(gauntlet); + gauntlet.reset(); + lstGauntlets.addGauntlet(gauntlet); + } + }); + } + }); } @Override diff --git a/forge-gui-mobile/src/forge/screens/gauntlet/NewGauntletScreen.java b/forge-gui-mobile/src/forge/screens/gauntlet/NewGauntletScreen.java deleted file mode 100644 index 844f93a6123..00000000000 --- a/forge-gui-mobile/src/forge/screens/gauntlet/NewGauntletScreen.java +++ /dev/null @@ -1,15 +0,0 @@ -package forge.screens.gauntlet; - -import forge.screens.FScreen; - -public class NewGauntletScreen extends FScreen { - - public NewGauntletScreen() { - super("New Gauntlet"); - } - - @Override - protected void doLayout(float startY, float width, float height) { - - } -} diff --git a/forge-gui/src/main/java/forge/gauntlet/GauntletData.java b/forge-gui/src/main/java/forge/gauntlet/GauntletData.java index d1b73d91eab..33637c43856 100644 --- a/forge-gui/src/main/java/forge/gauntlet/GauntletData.java +++ b/forge-gui/src/main/java/forge/gauntlet/GauntletData.java @@ -4,6 +4,7 @@ import com.thoughtworks.xstream.annotations.XStreamOmitField; import forge.deck.Deck; import forge.properties.ForgeConstants; + import java.io.File; import java.text.DateFormat; import java.text.SimpleDateFormat; @@ -47,10 +48,10 @@ public final class GauntletData { */ public void rename(final String newName) { File newpath = new File(ForgeConstants.GAUNTLET_DIR.userPrefLoc, newName + ".dat"); - File oldpath = new File(ForgeConstants.GAUNTLET_DIR.userPrefLoc, this.name + ".dat"); + File oldpath = new File(ForgeConstants.GAUNTLET_DIR.userPrefLoc, name + ".dat"); oldpath.renameTo(newpath); - this.name = newName; + name = newName; GauntletIO.saveGauntlet(this); } @@ -58,42 +59,49 @@ public final class GauntletData { return name; } + public String getDisplayName() { + if (name.startsWith(GauntletIO.PREFIX_LOCKED)) { //trim locked prefix if needed + return name.substring(GauntletIO.PREFIX_LOCKED.length()); + } + return name; + } + public void stamp() { final DateFormat dateFormat = new SimpleDateFormat("MM-dd-yy, H:m"); - this.timestamp = dateFormat.format(new Date()).toString(); + timestamp = dateFormat.format(new Date()).toString(); } /** Resets a gauntlet data to an unplayed state, then stamps and saves. */ public void reset() { - this.completed = 0; - this.stamp(); - this.eventRecords.clear(); + completed = 0; + stamp(); + eventRecords.clear(); for (int i = 0; i < decks.size(); i++) { - this.eventRecords.add(""); + eventRecords.add(""); } GauntletIO.saveGauntlet(this); } public String getTimestamp() { - return this.timestamp; + return timestamp; } public void setCompleted(final int i0) { - this.completed = i0; + completed = i0; } public int getCompleted() { - return this.completed; + return completed; } public void setUserDeck(final Deck d0) { - this.userDeck = d0; + userDeck = d0; } public Deck getUserDeck() { - return this.userDeck; + return userDeck; } public List getDeckNames() { @@ -103,26 +111,35 @@ public final class GauntletData { } public void setEventRecords(final List records0) { - this.eventRecords = records0; + eventRecords = records0; } public List getEventRecords() { - return this.eventRecords; + return eventRecords; } public void setEventNames(final List names0) { - this.eventNames = names0; + eventNames = names0; } public List getEventNames() { - return this.eventNames; + return eventNames; } public void setDecks(final List decks0) { - this.decks = decks0; + decks = decks0; } public List getDecks() { - return this.decks; + return decks; + } + + @Override + public String toString() { + String str = getDisplayName(); + if (decks != null) { + str += " (" + decks.size() + " opponents)"; + } + return str; } }