mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 04:38:00 +00:00
- CheckStyle.
This commit is contained in:
@@ -33,8 +33,8 @@ public class OldDeckParser {
|
|||||||
public boolean accept(final File dir, final String name) {
|
public boolean accept(final File dir, final String name) {
|
||||||
return name.endsWith(".bdk");
|
return name.endsWith(".bdk");
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO: Write javadoc for Constructor.
|
* TODO: Write javadoc for Constructor.
|
||||||
* @param file
|
* @param file
|
||||||
@@ -51,7 +51,7 @@ public class OldDeckParser {
|
|||||||
cube = cube2;
|
cube = cube2;
|
||||||
draft = draft2;
|
draft = draft2;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected final IFolderMap<DeckSet> getSealed() {
|
protected final IFolderMap<DeckSet> getSealed() {
|
||||||
return sealed;
|
return sealed;
|
||||||
}
|
}
|
||||||
@@ -80,17 +80,15 @@ public class OldDeckParser {
|
|||||||
convertConstructedAndSealed();
|
convertConstructedAndSealed();
|
||||||
convertDrafts();
|
convertDrafts();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void convertDrafts()
|
private void convertDrafts() {
|
||||||
{
|
for (File f : deckDir.listFiles(bdkFileFilter)) {
|
||||||
for( File f : deckDir.listFiles(bdkFileFilter))
|
|
||||||
{
|
|
||||||
boolean gotError = false;
|
boolean gotError = false;
|
||||||
Deck human = Deck.fromFile(new File(f, "0.dck"));
|
Deck human = Deck.fromFile(new File(f, "0.dck"));
|
||||||
final DeckSet d = new DeckSet(human.getName());
|
final DeckSet d = new DeckSet(human.getName());
|
||||||
d.setHumanDeck(human);
|
d.setHumanDeck(human);
|
||||||
|
|
||||||
|
|
||||||
for (int i = 1; i < DeckSetSerializer.MAX_DRAFT_PLAYERS; i++) {
|
for (int i = 1; i < DeckSetSerializer.MAX_DRAFT_PLAYERS; i++) {
|
||||||
Deck nextAi = Deck.fromFile(new File(f, i + ".dck"));
|
Deck nextAi = Deck.fromFile(new File(f, i + ".dck"));
|
||||||
if (nextAi == null) {
|
if (nextAi == null) {
|
||||||
@@ -99,7 +97,7 @@ public class OldDeckParser {
|
|||||||
}
|
}
|
||||||
d.addAiDeck(nextAi);
|
d.addAiDeck(nextAi);
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean mayDelete = !gotError;
|
boolean mayDelete = !gotError;
|
||||||
if (!gotError) {
|
if (!gotError) {
|
||||||
draft.add(d);
|
draft.add(d);
|
||||||
@@ -107,93 +105,95 @@ public class OldDeckParser {
|
|||||||
String msg = String.format("Draft '%s' lacked some decks.%n%nShould it be deleted?");
|
String msg = String.format("Draft '%s' lacked some decks.%n%nShould it be deleted?");
|
||||||
mayDelete = JOptionPane.YES_OPTION == JOptionPane.showConfirmDialog(null, msg, "Draft loading error", JOptionPane.YES_NO_OPTION);
|
mayDelete = JOptionPane.YES_OPTION == JOptionPane.showConfirmDialog(null, msg, "Draft loading error", JOptionPane.YES_NO_OPTION);
|
||||||
}
|
}
|
||||||
|
|
||||||
if( mayDelete ) {
|
if (mayDelete) {
|
||||||
for( File f1 : f.listFiles() )
|
for (File f1 : f.listFiles()) {
|
||||||
f1.delete();
|
f1.delete();
|
||||||
|
}
|
||||||
f.delete();
|
f.delete();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void convertConstructedAndSealed()
|
private void convertConstructedAndSealed() {
|
||||||
{
|
|
||||||
boolean allowDeleteUnsupportedConstructed = false;
|
boolean allowDeleteUnsupportedConstructed = false;
|
||||||
Map<String, Pair<DeckSet, MutablePair<File,File>>> sealedDecks = new TreeMap<String, Pair<DeckSet, MutablePair<File,File>>>(String.CASE_INSENSITIVE_ORDER);
|
Map<String, Pair<DeckSet, MutablePair<File, File>>> sealedDecks = new TreeMap<String, Pair<DeckSet, MutablePair<File, File>>>(String.CASE_INSENSITIVE_ORDER);
|
||||||
|
|
||||||
for( File f : deckDir.listFiles(DeckSerializer.DCK_FILE_FILTER))
|
for (File f : deckDir.listFiles(DeckSerializer.DCK_FILE_FILTER)) {
|
||||||
{
|
|
||||||
boolean importedOk = false;
|
boolean importedOk = false;
|
||||||
|
|
||||||
List<String> fileLines = FileUtil.readFile(f);
|
List<String> fileLines = FileUtil.readFile(f);
|
||||||
Map<String, List<String>> sections = SectionUtil.parseSections(fileLines);
|
Map<String, List<String>> sections = SectionUtil.parseSections(fileLines);
|
||||||
DeckFileHeader dh = DeckSerializer.readDeckMetadata(sections);
|
DeckFileHeader dh = DeckSerializer.readDeckMetadata(sections);
|
||||||
String name = dh.getName();
|
String name = dh.getName();
|
||||||
if ( dh.isCustomPool() ) { continue; }
|
if (dh.isCustomPool()) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
switch(dh.getDeckType()) {
|
switch(dh.getDeckType()) {
|
||||||
case Constructed:
|
case Constructed:
|
||||||
try {
|
try {
|
||||||
constructed.add(Deck.fromLines(fileLines));
|
constructed.add(Deck.fromLines(fileLines));
|
||||||
importedOk = true;
|
importedOk = true;
|
||||||
} catch( NoSuchElementException ex) {
|
} catch (NoSuchElementException ex) {
|
||||||
if( !allowDeleteUnsupportedConstructed ) {
|
if (!allowDeleteUnsupportedConstructed) {
|
||||||
String msg = String.format("Can not convert deck '%s' for some unsupported cards it contains. %n%s%n%nMay Forge delete all such decks?", name, ex.getMessage());
|
String msg = String.format("Can not convert deck '%s' for some unsupported cards it contains. %n%s%n%nMay Forge delete all such decks?", name, ex.getMessage());
|
||||||
allowDeleteUnsupportedConstructed = JOptionPane.YES_OPTION == JOptionPane.showConfirmDialog(null, msg, "Problem converting decks", JOptionPane.YES_NO_OPTION);
|
allowDeleteUnsupportedConstructed = JOptionPane.YES_OPTION == JOptionPane.showConfirmDialog(null, msg, "Problem converting decks", JOptionPane.YES_NO_OPTION);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if( importedOk || allowDeleteUnsupportedConstructed )
|
if (importedOk || allowDeleteUnsupportedConstructed) {
|
||||||
f.delete();
|
f.delete();
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Sealed:
|
case Sealed:
|
||||||
boolean isAi = dh.getPlayerType() == PlayerType.COMPUTER;
|
boolean isAi = dh.getPlayerType() == PlayerType.COMPUTER;
|
||||||
name = name.startsWith("AI_") ? name.replace("AI_", "") : name;
|
name = name.startsWith("AI_") ? name.replace("AI_", "") : name;
|
||||||
|
|
||||||
Pair<DeckSet, MutablePair<File,File>> stored = sealedDecks.get(name);
|
Pair<DeckSet, MutablePair<File, File>> stored = sealedDecks.get(name);
|
||||||
if( null == stored )
|
if (null == stored) {
|
||||||
stored = ImmutablePair.of(new DeckSet(name), MutablePair.of((File)null, (File)null));
|
stored = ImmutablePair.of(new DeckSet(name), MutablePair.of((File) null, (File) null));
|
||||||
|
}
|
||||||
|
|
||||||
Deck deck = Deck.fromLines(fileLines);
|
Deck deck = Deck.fromLines(fileLines);
|
||||||
if( isAi ) {
|
if (isAi) {
|
||||||
stored.getLeft().addAiDeck(deck);
|
stored.getLeft().addAiDeck(deck);
|
||||||
stored.getRight().setRight(f);
|
stored.getRight().setRight(f);
|
||||||
} else {
|
} else {
|
||||||
stored.getLeft().setHumanDeck(deck);
|
stored.getLeft().setHumanDeck(deck);
|
||||||
stored.getRight().setLeft(f);
|
stored.getRight().setLeft(f);
|
||||||
}
|
}
|
||||||
|
|
||||||
if( stored.getLeft().getHumanDeck() != null && !stored.getLeft().getAiDecks().isEmpty() ) {
|
if (stored.getLeft().getHumanDeck() != null && !stored.getLeft().getAiDecks().isEmpty()) {
|
||||||
// have both parts of sealed deck, may convert
|
// have both parts of sealed deck, may convert
|
||||||
sealed.add(stored.getLeft());
|
sealed.add(stored.getLeft());
|
||||||
stored.getRight().getLeft().delete();
|
stored.getRight().getLeft().delete();
|
||||||
stored.getRight().getRight().delete();
|
stored.getRight().getRight().delete();
|
||||||
|
|
||||||
// there stay only orphans
|
// there stay only orphans
|
||||||
sealedDecks.remove(name);
|
sealedDecks.remove(name);
|
||||||
} else
|
} else {
|
||||||
sealedDecks.put(name, stored);
|
sealedDecks.put(name, stored);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// advise to kill orphaned decks
|
// advise to kill orphaned decks
|
||||||
if( !sealedDecks.isEmpty() )
|
if (!sealedDecks.isEmpty()) {
|
||||||
{
|
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
for(Pair<DeckSet, MutablePair<File, File>> s : sealedDecks.values()) {
|
for (Pair<DeckSet, MutablePair<File, File>> s : sealedDecks.values()) {
|
||||||
String missingPart = s.getRight().getLeft() == null ? "human" : "computer";
|
String missingPart = s.getRight().getLeft() == null ? "human" : "computer";
|
||||||
sb.append(String.format("Sealed deck '%s' has no matching '%s' deck.%n", s.getKey().getName(), missingPart));
|
sb.append(String.format("Sealed deck '%s' has no matching '%s' deck.%n", s.getKey().getName(), missingPart));
|
||||||
}
|
}
|
||||||
sb.append(System.getProperty("line.separator"));
|
sb.append(System.getProperty("line.separator"));
|
||||||
sb.append("May Forge delete these decks?");
|
sb.append("May Forge delete these decks?");
|
||||||
int response = JOptionPane.showConfirmDialog(null, sb.toString(), "Some of your sealed decks are orphaned", JOptionPane.YES_NO_OPTION);
|
int response = JOptionPane.showConfirmDialog(null, sb.toString(), "Some of your sealed decks are orphaned", JOptionPane.YES_NO_OPTION);
|
||||||
if( response == JOptionPane.YES_OPTION )
|
if (response == JOptionPane.YES_OPTION) {
|
||||||
{
|
for (Pair<DeckSet, MutablePair<File, File>> s : sealedDecks.values()) {
|
||||||
for(Pair<DeckSet, MutablePair<File, File>> s : sealedDecks.values()) {
|
if (s.getRight().getLeft() != null) { s.getRight().getLeft().delete(); }
|
||||||
if( s.getRight().getLeft() != null ) { s.getRight().getLeft().delete(); }
|
if (s.getRight().getRight() != null) { s.getRight().getRight().delete(); }
|
||||||
if( s.getRight().getRight() != null ) { s.getRight().getRight().delete(); }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user