mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-16 10:48:00 +00:00
Minor tweak in InputSelectTargets and some string refactoring
This commit is contained in:
@@ -50,6 +50,7 @@ import javax.swing.event.ChangeListener;
|
|||||||
import javax.swing.event.DocumentEvent;
|
import javax.swing.event.DocumentEvent;
|
||||||
import javax.swing.event.DocumentListener;
|
import javax.swing.event.DocumentListener;
|
||||||
|
|
||||||
|
import forge.util.TextUtil;
|
||||||
import net.miginfocom.swing.MigLayout;
|
import net.miginfocom.swing.MigLayout;
|
||||||
|
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
@@ -479,7 +480,7 @@ public class ImportDialog {
|
|||||||
selectedOptions.add(entry.getKey());
|
selectedOptions.add(entry.getKey());
|
||||||
}
|
}
|
||||||
|
|
||||||
cb.setText(String.format("%s (%d)", cb.getName(), selection.getRight().size()));
|
cb.setText(TextUtil.concatWithSpace(cb.getName(), TextUtil.enclosedParen(String.valueOf(selection.getRight().size()))));
|
||||||
}
|
}
|
||||||
|
|
||||||
// asynchronously update the text in the op log, which may be many tens of thousands of lines long
|
// asynchronously update the text in the op log, which may be many tens of thousands of lines long
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ package forge.itemmanager.views;
|
|||||||
|
|
||||||
import forge.card.CardEdition;
|
import forge.card.CardEdition;
|
||||||
import forge.model.FModel;
|
import forge.model.FModel;
|
||||||
|
import forge.util.TextUtil;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A wrapper to show explanatory tooltips for edition set abbreviations.
|
* A wrapper to show explanatory tooltips for edition set abbreviations.
|
||||||
@@ -41,6 +42,6 @@ public class SetCodeRenderer extends ItemCellRenderer {
|
|||||||
setFullName = editions.get(setAbbrev).getName();
|
setFullName = editions.get(setAbbrev).getName();
|
||||||
}
|
}
|
||||||
|
|
||||||
return String.format("%s (%s)", setFullName, setAbbrev);
|
return TextUtil.concatWithSpace(setFullName, TextUtil.enclosedParen(setAbbrev));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import forge.card.CardEdition;
|
|||||||
import forge.gui.SOverlayUtils;
|
import forge.gui.SOverlayUtils;
|
||||||
import forge.model.FModel;
|
import forge.model.FModel;
|
||||||
import forge.toolbox.*;
|
import forge.toolbox.*;
|
||||||
|
import forge.util.TextUtil;
|
||||||
import net.miginfocom.swing.MigLayout;
|
import net.miginfocom.swing.MigLayout;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
@@ -43,7 +44,7 @@ public class DialogChooseSets {
|
|||||||
for (CardEdition ce : editions) {
|
for (CardEdition ce : editions) {
|
||||||
|
|
||||||
String code = ce.getCode();
|
String code = ce.getCode();
|
||||||
FCheckBox box = new FCheckBox(String.format("%s (%s)", ce.getName(), code));
|
FCheckBox box = new FCheckBox(TextUtil.concatWithSpace(ce.getName(), TextUtil.enclosedParen(code)));
|
||||||
|
|
||||||
box.setName(code);
|
box.setName(code);
|
||||||
box.setSelected(null != preselectedSets && preselectedSets.contains(code));
|
box.setSelected(null != preselectedSets && preselectedSets.contains(code));
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ import javax.swing.SwingConstants;
|
|||||||
import javax.swing.SwingUtilities;
|
import javax.swing.SwingUtilities;
|
||||||
import javax.swing.border.Border;
|
import javax.swing.border.Border;
|
||||||
|
|
||||||
|
import forge.util.TextUtil;
|
||||||
import net.miginfocom.swing.MigLayout;
|
import net.miginfocom.swing.MigLayout;
|
||||||
|
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
@@ -409,7 +410,7 @@ public class VAssignDamage {
|
|||||||
dt.label.setText(sb.toString());
|
dt.label.setText(sb.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
lblTotalDamage.setText(String.format("Available damage points: %d (of %d)", damageLeft, totalDamageToAssign));
|
lblTotalDamage.setText(TextUtil.concatNoSpace("Available damage points: ", String.valueOf(damageLeft), " (of ", String.valueOf(totalDamageToAssign), ")"));
|
||||||
btnOK.setEnabled(damageLeft == 0);
|
btnOK.setEnabled(damageLeft == 0);
|
||||||
lblAssignRemaining.setVisible(allHaveLethal && damageLeft > 0);
|
lblAssignRemaining.setVisible(allHaveLethal && damageLeft > 0);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import javax.swing.JPanel;
|
|||||||
import javax.swing.SwingConstants;
|
import javax.swing.SwingConstants;
|
||||||
import javax.swing.SwingUtilities;
|
import javax.swing.SwingUtilities;
|
||||||
|
|
||||||
|
import forge.util.TextUtil;
|
||||||
import net.miginfocom.swing.MigLayout;
|
import net.miginfocom.swing.MigLayout;
|
||||||
|
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
@@ -216,9 +217,9 @@ public class ViewWinLose implements IWinLoseView<FButton> {
|
|||||||
if (winner == null || winner.isEmpty()) {
|
if (winner == null || winner.isEmpty()) {
|
||||||
return "It's a draw!";
|
return "It's a draw!";
|
||||||
} else if (winningTeam != -1) {
|
} else if (winningTeam != -1) {
|
||||||
return String.format("Team %d won!", Integer.valueOf(winningTeam));
|
return TextUtil.concatNoSpace("Team ", String.valueOf(winningTeam), " won!");
|
||||||
} else {
|
} else {
|
||||||
return String.format("%s won!", winner);
|
return TextUtil.concatNoSpace(winner, " won!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ import forge.screens.workshop.views.VCardDesigner;
|
|||||||
import forge.screens.workshop.views.VCardScript;
|
import forge.screens.workshop.views.VCardScript;
|
||||||
import forge.screens.workshop.views.VWorkshopCatalog;
|
import forge.screens.workshop.views.VWorkshopCatalog;
|
||||||
import forge.toolbox.FOptionPane;
|
import forge.toolbox.FOptionPane;
|
||||||
|
import forge.util.TextUtil;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Controls the "card script" panel in the workshop UI.
|
* Controls the "card script" panel in the workshop UI.
|
||||||
@@ -127,7 +128,7 @@ public enum CCardScript implements ICDoc {
|
|||||||
switchInProgress = true;
|
switchInProgress = true;
|
||||||
Singletons.getControl().ensureScreenActive(FScreen.WORKSHOP_SCREEN); //ensure Workshop is active before showing dialog
|
Singletons.getControl().ensureScreenActive(FScreen.WORKSHOP_SCREEN); //ensure Workshop is active before showing dialog
|
||||||
final int choice = FOptionPane.showOptionDialog(
|
final int choice = FOptionPane.showOptionDialog(
|
||||||
String.format("Save changes to %s?", currentCard),
|
TextUtil.concatNoSpace("Save changes to ", currentCard.toString(), "?"),
|
||||||
"Save Changes?",
|
"Save Changes?",
|
||||||
FOptionPane.QUESTION_ICON,
|
FOptionPane.QUESTION_ICON,
|
||||||
switchAwayOptions);
|
switchAwayOptions);
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import forge.LobbyPlayer;
|
|||||||
import forge.deck.DeckGroup;
|
import forge.deck.DeckGroup;
|
||||||
import forge.properties.ForgeConstants;
|
import forge.properties.ForgeConstants;
|
||||||
import forge.tournament.system.*;
|
import forge.tournament.system.*;
|
||||||
|
import forge.util.TextUtil;
|
||||||
import forge.util.storage.IStorage;
|
import forge.util.storage.IStorage;
|
||||||
import org.apache.commons.lang3.text.WordUtils;
|
import org.apache.commons.lang3.text.WordUtils;
|
||||||
import org.apache.commons.lang3.time.StopWatch;
|
import org.apache.commons.lang3.time.StopWatch;
|
||||||
@@ -102,13 +103,13 @@ public class SimulateMatch {
|
|||||||
for(String deck : params.get("d")) {
|
for(String deck : params.get("d")) {
|
||||||
Deck d = deckFromCommandLineParameter(deck, type);
|
Deck d = deckFromCommandLineParameter(deck, type);
|
||||||
if (d == null) {
|
if (d == null) {
|
||||||
System.out.println(String.format("Could not load deck - %s, match cannot start", deck));
|
System.out.println(TextUtil.concatNoSpace("Could not load deck - ", deck, ", match cannot start"));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (i > 1) {
|
if (i > 1) {
|
||||||
sb.append(" vs ");
|
sb.append(" vs ");
|
||||||
}
|
}
|
||||||
String name = String.format("Ai(%s)-%s", i, d.getName());
|
String name = TextUtil.concatNoSpace("Ai(", String.valueOf(i), ")-", d.getName());
|
||||||
sb.append(name);
|
sb.append(name);
|
||||||
|
|
||||||
RegisteredPlayer rp;
|
RegisteredPlayer rp;
|
||||||
@@ -195,7 +196,7 @@ public class SimulateMatch {
|
|||||||
for(String deck : params.get("d")) {
|
for(String deck : params.get("d")) {
|
||||||
Deck d = deckFromCommandLineParameter(deck, rules.getGameType());
|
Deck d = deckFromCommandLineParameter(deck, rules.getGameType());
|
||||||
if (d == null) {
|
if (d == null) {
|
||||||
System.out.println(String.format("Could not load deck - %s, match cannot start", deck));
|
System.out.println(TextUtil.concatNoSpace("Could not load deck - ", deck, ", match cannot start"));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -220,7 +221,7 @@ public class SimulateMatch {
|
|||||||
})) {
|
})) {
|
||||||
Deck d = DeckSerializer.fromFile(deck);
|
Deck d = DeckSerializer.fromFile(deck);
|
||||||
if (d == null) {
|
if (d == null) {
|
||||||
System.out.println(String.format("Could not load deck - %s, match cannot start", deck.getName()));
|
System.out.println(TextUtil.concatNoSpace("Could not load deck - ", deck.getName(), ", match cannot start"));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
deckGroup.addAiDeck(d);
|
deckGroup.addAiDeck(d);
|
||||||
@@ -251,16 +252,17 @@ public class SimulateMatch {
|
|||||||
|
|
||||||
String lastWinner = "";
|
String lastWinner = "";
|
||||||
int curRound = 0;
|
int curRound = 0;
|
||||||
System.out.println(String.format("Starting a %s tournament with %d players over %d rounds", tournament,
|
System.out.println(TextUtil.concatNoSpace("Starting a ", tournament, " tournament with ",
|
||||||
numPlayers, tourney.getTotalRounds()));
|
String.valueOf(numPlayers), " players over ",
|
||||||
|
String.valueOf(tourney.getTotalRounds()), " rounds"));
|
||||||
while(!tourney.isTournamentOver()) {
|
while(!tourney.isTournamentOver()) {
|
||||||
if (tourney.getActiveRound() != curRound) {
|
if (tourney.getActiveRound() != curRound) {
|
||||||
if (curRound != 0) {
|
if (curRound != 0) {
|
||||||
System.out.println(String.format("End Round - %d", curRound));
|
System.out.println(TextUtil.concatNoSpace("End Round - ", String.valueOf(curRound)));
|
||||||
}
|
}
|
||||||
curRound = tourney.getActiveRound();
|
curRound = tourney.getActiveRound();
|
||||||
System.out.println("");
|
System.out.println("");
|
||||||
System.out.println(String.format("Round %d Pairings:", curRound));
|
System.out.println(TextUtil.concatNoSpace("Round ", String.valueOf(curRound) ," Pairings:"));
|
||||||
|
|
||||||
for(TournamentPairing pairing : tourney.getActivePairings()) {
|
for(TournamentPairing pairing : tourney.getActivePairings()) {
|
||||||
System.out.println(pairing.outputHeader());
|
System.out.println(pairing.outputHeader());
|
||||||
@@ -303,7 +305,7 @@ public class SimulateMatch {
|
|||||||
if (winner.equals(tp.getPlayer())) {
|
if (winner.equals(tp.getPlayer())) {
|
||||||
pairing.setWinner(tp);
|
pairing.setWinner(tp);
|
||||||
lastWinner = winner.getName();
|
lastWinner = winner.getName();
|
||||||
System.out.println(String.format("Match Winner - %s!", lastWinner));
|
System.out.println(TextUtil.concatNoSpace("Match Winner - ", lastWinner, "!"));
|
||||||
System.out.println("");
|
System.out.println("");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ import forge.screens.match.CMatchUI;
|
|||||||
import forge.toolbox.CardFaceSymbols;
|
import forge.toolbox.CardFaceSymbols;
|
||||||
import forge.toolbox.FSkin.SkinnedPanel;
|
import forge.toolbox.FSkin.SkinnedPanel;
|
||||||
import forge.toolbox.IDisposable;
|
import forge.toolbox.IDisposable;
|
||||||
|
import forge.util.TextUtil;
|
||||||
import forge.view.arcane.util.OutlinedLabel;
|
import forge.view.arcane.util.OutlinedLabel;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
@@ -682,13 +683,14 @@ public class CardPanel extends SkinnedPanel implements CardContainer, IDisposabl
|
|||||||
final CardStateView state = card.getCurrentState();
|
final CardStateView state = card.getCurrentState();
|
||||||
String sPt = "";
|
String sPt = "";
|
||||||
if (state.isCreature() && state.isPlaneswalker()) {
|
if (state.isCreature() && state.isPlaneswalker()) {
|
||||||
sPt = String.format("%d/%d (%d)", state.getPower(), state.getToughness(), state.getLoyalty());
|
sPt = TextUtil.concatWithSpace(TextUtil.transformPT(state.getPower(), state.getToughness()),
|
||||||
|
TextUtil.enclosedParen( String.valueOf(state.getLoyalty())));
|
||||||
}
|
}
|
||||||
else if (state.isCreature()) {
|
else if (state.isCreature()) {
|
||||||
sPt = String.format("%d/%d", state.getPower(), state.getToughness());
|
sPt = TextUtil.transformPT(state.getPower(), state.getToughness());
|
||||||
}
|
}
|
||||||
else if (state.getType().hasSubtype("Vehicle")) {
|
else if (state.getType().hasSubtype("Vehicle")) {
|
||||||
sPt = String.format("[%d/%d]", state.getPower(), state.getToughness());
|
sPt = TextUtil.enclosedBracket(TextUtil.transformPT(state.getPower(), state.getToughness()));
|
||||||
}
|
}
|
||||||
else if (state.isPlaneswalker()) {
|
else if (state.isPlaneswalker()) {
|
||||||
sPt = String.valueOf(state.getLoyalty());
|
sPt = String.valueOf(state.getLoyalty());
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ import forge.toolbox.FLabel;
|
|||||||
import forge.toolbox.FOptionPane;
|
import forge.toolbox.FOptionPane;
|
||||||
import forge.toolbox.FScrollPane;
|
import forge.toolbox.FScrollPane;
|
||||||
import forge.util.Callback;
|
import forge.util.Callback;
|
||||||
|
import forge.util.TextUtil;
|
||||||
import forge.util.Utils;
|
import forge.util.Utils;
|
||||||
import forge.util.WaitCallback;
|
import forge.util.WaitCallback;
|
||||||
|
|
||||||
@@ -419,7 +420,8 @@ public class VAssignDamage extends FDialog {
|
|||||||
dt.label.setText(sb.toString());
|
dt.label.setText(sb.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
lblTotalDamage.setText(String.format("Available damage points: %d (of %d)", damageLeft, totalDamageToAssign));
|
lblTotalDamage.setText(TextUtil.concatNoSpace("Available damage points: ",
|
||||||
|
String.valueOf(damageLeft), " (of ", String.valueOf(totalDamageToAssign), ")"));
|
||||||
setButtonEnabled(1, damageLeft == 0);
|
setButtonEnabled(1, damageLeft == 0);
|
||||||
lblAssignRemaining.setVisible(allHaveLethal && damageLeft > 0);
|
lblAssignRemaining.setVisible(allHaveLethal && damageLeft > 0);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package forge.screens.match.winlose;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import forge.util.TextUtil;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
|
||||||
import com.badlogic.gdx.Input.Keys;
|
import com.badlogic.gdx.Input.Keys;
|
||||||
@@ -127,9 +128,9 @@ public class ViewWinLose extends FOverlay implements IWinLoseView<FButton> {
|
|||||||
if (winner == null) {
|
if (winner == null) {
|
||||||
return "It's a draw!";
|
return "It's a draw!";
|
||||||
} else if (winningTeam != -1) {
|
} else if (winningTeam != -1) {
|
||||||
return String.format("Team %d won!", Integer.valueOf(winningTeam));
|
return TextUtil.concatNoSpace("Team ", String.valueOf(winningTeam), " won!");
|
||||||
} else {
|
} else {
|
||||||
return String.format("%s won!", winner);
|
return TextUtil.concatNoSpace(winner, " won!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ import forge.properties.ForgeConstants;
|
|||||||
import forge.properties.ForgePreferences;
|
import forge.properties.ForgePreferences;
|
||||||
import forge.util.FileUtil;
|
import forge.util.FileUtil;
|
||||||
import forge.util.ItemPool;
|
import forge.util.ItemPool;
|
||||||
|
import forge.util.TextUtil;
|
||||||
import forge.util.gui.SGuiChoose;
|
import forge.util.gui.SGuiChoose;
|
||||||
import forge.util.gui.SOptionPane;
|
import forge.util.gui.SOptionPane;
|
||||||
import forge.util.storage.IStorage;
|
import forge.util.storage.IStorage;
|
||||||
@@ -375,7 +376,7 @@ public class BoosterDraft implements IBoosterDraft {
|
|||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
|
|
||||||
for (int i = 1; i <= packs; i++) {
|
for (int i = 1; i <= packs; i++) {
|
||||||
String choice = SGuiChoose.oneOrNone(String.format("Choose set for Pack %d of %d", i, packs), setz);
|
String choice = SGuiChoose.oneOrNone(TextUtil.concatNoSpace("Choose set for Pack ", String.valueOf(i), " of ", String.valueOf(packs)), setz);
|
||||||
if (choice == null) {
|
if (choice == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -392,61 +393,61 @@ public class BoosterDraft implements IBoosterDraft {
|
|||||||
final String[] sets = setz.toArray(ArrayUtils.EMPTY_STRING_ARRAY);
|
final String[] sets = setz.toArray(ArrayUtils.EMPTY_STRING_ARRAY);
|
||||||
final List<String> setCombos = new ArrayList<>();
|
final List<String> setCombos = new ArrayList<>();
|
||||||
if (sets.length >= 2) {
|
if (sets.length >= 2) {
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[0], "/", sets[0], "/", sets[0]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[0], sets[0], sets[1]));
|
setCombos.add(TextUtil.concatNoSpace(sets[0], "/", sets[0], "/", sets[1]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[0], sets[1], sets[1]));
|
setCombos.add(TextUtil.concatNoSpace(sets[0], "/", sets[1], "/", sets[1]));
|
||||||
if (sets.length >= 3) {
|
if (sets.length >= 3) {
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[0], sets[1], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace(sets[0], "/", sets[1], "/", sets[2]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[0], sets[2], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace(sets[0], "/", sets[2], "/", sets[2]));
|
||||||
}
|
}
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[1], "/", sets[0], "/", sets[0]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[1], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[1], "/", sets[1], "/", sets[0]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[1], sets[1], sets[1]));
|
setCombos.add(TextUtil.concatNoSpace(sets[1], "/", sets[1], "/", sets[1]));
|
||||||
if (sets.length >= 3) {
|
if (sets.length >= 3) {
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[1], sets[1], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace(sets[1], "/", sets[1], "/", sets[2]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[1], sets[2], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace(sets[1], "/", sets[2], "/", sets[2]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (sets.length >= 3) {
|
if (sets.length >= 3) {
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], "/", sets[1], "/", sets[0]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[2], sets[2], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], "/", sets[2], "/", sets[0]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[2], sets[2], sets[1]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], "/", sets[2], "/", sets[1]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[2], sets[2], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], "/", sets[2], "/", sets[2]));
|
||||||
} // Beyond 3, skimp on the choice configurations, or the list will be enormous!
|
} // Beyond 3, skimp on the choice configurations, or the list will be enormous!
|
||||||
if (sets.length >= 4) {
|
if (sets.length >= 4) {
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[3], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], "/", sets[1], "/", sets[0]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[3], sets[2], sets[1]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], "/", sets[2], "/", sets[1]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 5) {
|
if (sets.length >= 5) {
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[4], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], "/", sets[1], "/", sets[0]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[4], sets[3], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], "/", sets[3], "/", sets[2]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[4], sets[2], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], "/", sets[2], "/", sets[0]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 6) {
|
if (sets.length >= 6) {
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[5], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[5], "/", sets[1], "/", sets[0]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[5], sets[3], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace(sets[5], "/", sets[3], "/", sets[2]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[5], sets[4], sets[3]));
|
setCombos.add(TextUtil.concatNoSpace(sets[5], "/", sets[4], "/", sets[3]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[5], sets[2], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[5], "/", sets[2], "/", sets[0]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 7) {
|
if (sets.length >= 7) {
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[6], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[6], "/", sets[1], "/", sets[0]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[6], sets[3], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace(sets[6], "/", sets[3], "/", sets[2]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[6], sets[5], sets[4]));
|
setCombos.add(TextUtil.concatNoSpace(sets[6], "/", sets[5], "/", sets[4]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[6], sets[3], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[6], "/", sets[3], "/", sets[0]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 8) {
|
if (sets.length >= 8) {
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[7], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[7], "/", sets[1], "/", sets[0]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[7], sets[3], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace(sets[7], "/", sets[3], "/", sets[2]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[7], sets[5], sets[4]));
|
setCombos.add(TextUtil.concatNoSpace(sets[7], "/", sets[5], "/", sets[4]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[7], sets[6], sets[5]));
|
setCombos.add(TextUtil.concatNoSpace(sets[7], "/", sets[6], "/", sets[5]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[7], sets[3], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[7], "/", sets[3], "/", sets[0]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 9) {
|
if (sets.length >= 9) {
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[8], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[8], "/", sets[1], "/", sets[0]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[8], sets[3], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace(sets[8], "/", sets[3], "/", sets[2]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[8], sets[5], sets[4]));
|
setCombos.add(TextUtil.concatNoSpace(sets[8], "/", sets[5], "/", sets[4]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[8], sets[7], sets[6]));
|
setCombos.add(TextUtil.concatNoSpace(sets[8], "/", sets[7], "/", sets[6]));
|
||||||
setCombos.add(String.format("%s/%s/%s", sets[8], sets[4], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[8], "/", sets[4], "/", sets[0]));
|
||||||
}
|
}
|
||||||
return setCombos;
|
return setCombos;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -280,146 +280,146 @@ public class SealedCardPoolGenerator {
|
|||||||
|
|
||||||
if (nPacks == 3) {
|
if (nPacks == 3) {
|
||||||
if (sets.length >= 2) {
|
if (sets.length >= 2) {
|
||||||
setCombos.add(String.format("%s, %s, %s", sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s", sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s", sets[1], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[1], ", ", sets[1], ", ", sets[0]));
|
||||||
setCombos.add(String.format("3 %s", sets[1]));
|
setCombos.add(TextUtil.concatNoSpace("3 ", sets[1]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 3) {
|
if (sets.length >= 3) {
|
||||||
setCombos.add(String.format("%s, %s, %s", sets[2], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s", sets[0], sets[2], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[0], ", ", sets[2], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s", sets[2], sets[2], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], ", ", sets[2], ", ", sets[2]));
|
||||||
setCombos.add(String.format("%s, %s, %s", sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], ", ", sets[1], ", ", sets[0]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (nPacks == 4) {
|
else if (nPacks == 4) {
|
||||||
if (sets.length >= 2) {
|
if (sets.length >= 2) {
|
||||||
setCombos.add(String.format("%s, %s, %s, %s", sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s", sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s", sets[1], sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 3) {
|
if (sets.length >= 3) {
|
||||||
setCombos.add(String.format("%s, %s, %s, %s", sets[2], sets[2], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], ", ", sets[2], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s", sets[2], sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], ", ", sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 4) {
|
if (sets.length >= 4) {
|
||||||
setCombos.add(String.format("%s, %s, %s, %s", sets[3], sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (nPacks == 5) {
|
else if (nPacks == 5) {
|
||||||
if (sets.length == 1 || !sets[0].equals(sets[1]) ) {
|
if (sets.length == 1 || !sets[0].equals(sets[1]) ) {
|
||||||
setCombos.add(String.format("5 %s", sets[0]));
|
setCombos.add(TextUtil.concatNoSpace("5 ", sets[0]));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sets.length >= 2 && !sets[0].equals(sets[1])) {
|
if (sets.length >= 2 && !sets[0].equals(sets[1])) {
|
||||||
setCombos.add(String.format("3 %s, 2 %s", sets[0], sets[1]));
|
setCombos.add(TextUtil.concatNoSpace("3 ", sets[0], ", 2 ", sets[1]));
|
||||||
setCombos.add(String.format("2 %s, 3 %s", sets[0], sets[1]));
|
setCombos.add(TextUtil.concatNoSpace("2 ", sets[0], ", 3 ", sets[1]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 3 && !sets[0].equals(sets[2])) {
|
if (sets.length >= 3 && !sets[0].equals(sets[2])) {
|
||||||
setCombos.add(String.format("3 %s, 2 %s", sets[0], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace("3 ", sets[0], ", 2 ", sets[2]));
|
||||||
setCombos.add(String.format("3 %s, %s, %s", sets[0], sets[1], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace("3 ", sets[0], ", ", sets[1], ", ", sets[2]));
|
||||||
setCombos.add(String.format("2 %s, 2 %s, %s", sets[0], sets[1], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace("2 ", sets[0], ", 2 ", sets[1], ", ", sets[2]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 4) {
|
if (sets.length >= 4) {
|
||||||
if( sets[1].equals(sets[2]) && sets[1].equals(sets[0])) {
|
if( sets[1].equals(sets[2]) && sets[1].equals(sets[0])) {
|
||||||
setCombos.add(String.format("%s, 4 %s", sets[3], sets[0])); // for guild sealed
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", 4 ", sets[0])); // for guild sealed
|
||||||
} else {
|
} else {
|
||||||
setCombos.add(String.format("%s, %s, %s, 2 %s", sets[3], sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[2], ", ", sets[1], ", 2 ", sets[0]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (sets.length >= 5) {
|
if (sets.length >= 5) {
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s", sets[4], sets[3], sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (nPacks == 7 && (sets.length == 4 || sets.length >= 7)) {
|
else if (nPacks == 7 && (sets.length == 4 || sets.length >= 7)) {
|
||||||
// Sorry. This whole function is awful, it really needs to be rewritten to just generate permutations
|
// Sorry. This whole function is awful, it really needs to be rewritten to just generate permutations
|
||||||
if (sets.length >= 7) {
|
if (sets.length >= 7) {
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s", sets[6], sets[5], sets[4], sets[3], sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[6], ", ", sets[5], ", ", sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s", sets[5], sets[4], sets[3], sets[2], sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[5], ", ", sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s", sets[4], sets[3], sets[2], sets[1], sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s", sets[4], sets[3], sets[2], sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s", sets[3], sets[2], sets[2], sets[1], sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[2], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s", sets[3], sets[2], sets[1], sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s", sets[3], sets[2], sets[1], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s", sets[2], sets[2], sets[1], sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s", sets[2], sets[1], sets[1], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s", sets[2], sets[2], sets[2], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], ", ", sets[2], ", ", sets[2], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s", sets[1], sets[1], sets[1], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[1], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s", sets[0], sets[0], sets[0], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
} else if (sets.length == 4) {
|
} else if (sets.length == 4) {
|
||||||
if( sets[1].equals(sets[2]) && sets[1].equals(sets[0])) {
|
if( sets[1].equals(sets[2]) && sets[1].equals(sets[0])) {
|
||||||
setCombos.add(String.format("%s, 6 %s", sets[3], sets[0])); // for origins sealed
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", 6 ", sets[0])); // for origins sealed
|
||||||
} else {
|
} else {
|
||||||
setCombos.add(String.format("%s, 2 %s, 2 %s, 2 %s", sets[3], sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", 2 ", sets[2], ", 2 ", sets[1], ", 2 ", sets[0]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (nPacks == 8 && sets.length >= 8) {
|
else if (nPacks == 8 && sets.length >= 8) {
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[7], sets[6], sets[5], sets[4], sets[3], sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[7], ", ", sets[6], ", ", sets[5], ", ", sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[6], sets[5], sets[4], sets[3], sets[2], sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[6], ", ", sets[5], ", ", sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[5], sets[4], sets[3], sets[2], sets[1], sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[5], ", ", sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[5], sets[4], sets[3], sets[2], sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[5], ", ", sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[4], sets[3], sets[2], sets[2], sets[1], sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[4], sets[3], sets[2], sets[1], sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[4], sets[3], sets[2], sets[1], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[3], sets[3], sets[2], sets[2], sets[1], sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[3], ", ", sets[2], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[3], sets[2], sets[2], sets[1], sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[2], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[3], sets[2], sets[1], sets[1], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[3], sets[2], sets[1], sets[0], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[2], sets[2], sets[1], sets[1], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[2], sets[2], sets[2], sets[2], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], ", ", sets[2], ", ", sets[2], ", ", sets[2], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[1], sets[1], sets[1], sets[1], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[1], ", ", sets[1], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s", sets[0], sets[0], sets[0], sets[0], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
}
|
}
|
||||||
else if (nPacks == 9 && sets.length >= 9) {
|
else if (nPacks == 9 && sets.length >= 9) {
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s, %s", sets[8], sets[7], sets[6], sets[5], sets[4], sets[3], sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[8], ", ", sets[7], ", ", sets[6], ", ", sets[5], ", ", sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s, %s", sets[7], sets[6], sets[5], sets[4], sets[3], sets[2], sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[7], ", ", sets[6], ", ", sets[5], ", ", sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s, %s", sets[6], sets[5], sets[4], sets[3], sets[2], sets[1], sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[6], ", ", sets[5], ", ", sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s, %s", sets[6], sets[5], sets[4], sets[3], sets[2], sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[6], ", ", sets[5], ", ", sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s, %s", sets[4], sets[3], sets[3], sets[2], sets[2], sets[1], sets[1], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[3], ", ", sets[2], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s, %s", sets[4], sets[3], sets[2], sets[2], sets[1], sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s, %s", sets[4], sets[3], sets[2], sets[1], sets[1], sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s, %s", sets[4], sets[3], sets[2], sets[2], sets[1], sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s, %s", sets[4], sets[3], sets[2], sets[1], sets[1], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s, %s", sets[4], sets[3], sets[2], sets[1], sets[0], sets[0], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s, %s", sets[3], sets[3], sets[2], sets[2], sets[1], sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[3], ", ", sets[2], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s, %s, %s, %s", sets[3], sets[2], sets[2], sets[1], sets[1], sets[1], sets[0], sets[0], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[2], ", ", sets[2], ", ", sets[1], ", ", sets[1], ", ", sets[1], ", ", sets[0], ", ", sets[0], ", ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, 2 %s, 5 %s", sets[3], sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[2], ", 2 ", sets[1], ", 5 ", sets[0]));
|
||||||
setCombos.add(String.format("3 %s, 3 %s, 3 %s", sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace("3 ", sets[2], ", 3 ", sets[1], ", 3 ", sets[0]));
|
||||||
setCombos.add(String.format("2 %s, 2 %s, 5 %s", sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace("2 ", sets[2], ", 2 ", sets[1], ", 5 ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, 7 %s", sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[2], ", ", sets[1], ", 7 ", sets[0]));
|
||||||
setCombos.add(String.format("4 %s, 5 %s", sets[2], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace("4 ", sets[2], ", 5 ", sets[0]));
|
||||||
setCombos.add(String.format("4 %s, 5 %s", sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace("4 ", sets[1], ", 5 ", sets[0]));
|
||||||
setCombos.add(String.format("9 %s", sets[0]));
|
setCombos.add(TextUtil.concatNoSpace("9 ", sets[0]));
|
||||||
}
|
}
|
||||||
else { // Default to 6 packs
|
else { // Default to 6 packs
|
||||||
if (sets.length == 1 || !sets[0].equals(sets[1]) ) {
|
if (sets.length == 1 || !sets[0].equals(sets[1]) ) {
|
||||||
setCombos.add(String.format("6 %s", sets[0]));
|
setCombos.add(TextUtil.concatNoSpace("6 ", sets[0]));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sets.length >= 2 && !sets[0].equals(sets[1])) {
|
if (sets.length >= 2 && !sets[0].equals(sets[1])) {
|
||||||
setCombos.add(String.format("4 %s, 2 %s", sets[0], sets[1]));
|
setCombos.add(TextUtil.concatNoSpace("4 ", sets[0], ", 2 ", sets[1]));
|
||||||
setCombos.add(String.format("3 %s, 3 %s", sets[0], sets[1]));
|
setCombos.add(TextUtil.concatNoSpace("3 ", sets[0], ", 3 ", sets[1]));
|
||||||
setCombos.add(String.format("2 %s, 4 %s", sets[0], sets[1]));
|
setCombos.add(TextUtil.concatNoSpace("2 ", sets[0], ", 4 ", sets[1]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 3 && !sets[0].equals(sets[2])) {
|
if (sets.length >= 3 && !sets[0].equals(sets[2])) {
|
||||||
setCombos.add(String.format("3 %s, 3 %s", sets[0], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace("3 ", sets[0], ", 3 ", sets[2]));
|
||||||
setCombos.add(String.format("2 %s, 2 %s, 2 %s", sets[0], sets[1], sets[2]));
|
setCombos.add(TextUtil.concatNoSpace("2 ", sets[0], ", 2 ", sets[1], ", 2 ", sets[2]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 4) {
|
if (sets.length >= 4) {
|
||||||
if ( sets[1].equals(sets[2]) && sets[1].equals(sets[0])) {
|
if ( sets[1].equals(sets[2]) && sets[1].equals(sets[0])) {
|
||||||
setCombos.add(String.format("%s, 5 %s", sets[3], sets[0])); // for guild sealed
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", 5 ", sets[0])); // for guild sealed
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
setCombos.add(String.format("%s, %s, %s, 3 %s", sets[3], sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[2], ", ", sets[1], ", 3 ", sets[0]));
|
||||||
setCombos.add(String.format("%s, %s, 2 %s, 2 %s", sets[3], sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[3], ", ", sets[2], ", 2 ", sets[1], ", 2 ", sets[0]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (sets.length >= 5) {
|
if (sets.length >= 5) {
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, 2 %s", sets[4], sets[3], sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace(sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", 2 ", sets[0]));
|
||||||
}
|
}
|
||||||
if (sets.length >= 6) {
|
if (sets.length >= 6) {
|
||||||
setCombos.add(String.format("%s, %s, %s, %s, %s, %s", sets[5], sets[4], sets[3], sets[2], sets[1], sets[0]));
|
setCombos.add(TextUtil.concatNoSpace( sets[5], ", ", sets[4], ", ", sets[3], ", ", sets[2], ", ", sets[1], ", ", sets[0]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return setCombos;
|
return setCombos;
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import java.util.List;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
|
import forge.util.TextUtil;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
@@ -305,16 +306,16 @@ public abstract class GameLobby implements IHasGameType {
|
|||||||
|
|
||||||
for (final LobbySlot slot : activeSlots) {
|
for (final LobbySlot slot : activeSlots) {
|
||||||
if (!slot.isReady() && slot.getType() != LobbySlotType.OPEN) {
|
if (!slot.isReady() && slot.getType() != LobbySlotType.OPEN) {
|
||||||
SOptionPane.showMessageDialog(String.format("Player %s is not ready", slot.getName()));
|
SOptionPane.showMessageDialog(TextUtil.concatNoSpace("Player ", slot.getName(), " is not ready"));
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
if (slot.getDeck() == null) {
|
if (slot.getDeck() == null) {
|
||||||
SOptionPane.showMessageDialog(String.format("Please specify a deck for %s", slot.getName()));
|
SOptionPane.showMessageDialog(TextUtil.concatNoSpace("Please specify a deck for ", slot.getName()));
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
if (hasVariant(GameType.Commander) || hasVariant(GameType.TinyLeaders)) {
|
if (hasVariant(GameType.Commander) || hasVariant(GameType.TinyLeaders)) {
|
||||||
if (!slot.getDeck().has(DeckSection.Commander)) {
|
if (!slot.getDeck().has(DeckSection.Commander)) {
|
||||||
SOptionPane.showMessageDialog(String.format("%s doesn't have a commander", slot.getName()));
|
SOptionPane.showMessageDialog(TextUtil.concatNoSpace(slot.getName(), " doesn't have a commander"));
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import java.util.Map;
|
|||||||
import java.util.Map.Entry;
|
import java.util.Map.Entry;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
|
import forge.util.TextUtil;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableMap;
|
import com.google.common.collect.ImmutableMap;
|
||||||
@@ -112,9 +113,9 @@ public class HostedMatch {
|
|||||||
});
|
});
|
||||||
|
|
||||||
if (sortedPlayers.size() == 2) {
|
if (sortedPlayers.size() == 2) {
|
||||||
title = String.format("%s vs %s", sortedPlayers.get(0).getPlayer().getName(), sortedPlayers.get(1).getPlayer().getName());
|
title = TextUtil.concatNoSpace(sortedPlayers.get(0).getPlayer().getName(), " vs ", sortedPlayers.get(1).getPlayer().getName());
|
||||||
} else {
|
} else {
|
||||||
title = String.format("Multiplayer Game (%d players)", sortedPlayers.size());
|
title = TextUtil.concatNoSpace("Multiplayer Game (", String.valueOf(sortedPlayers.size()), " players)");
|
||||||
}
|
}
|
||||||
this.match = new Match(gameRules, sortedPlayers, title);
|
this.match = new Match(gameRules, sortedPlayers, title);
|
||||||
startGame();
|
startGame();
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import java.util.List;
|
|||||||
import java.util.Queue;
|
import java.util.Queue;
|
||||||
|
|
||||||
import forge.game.GameActionUtil;
|
import forge.game.GameActionUtil;
|
||||||
|
import forge.util.TextUtil;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
|
||||||
import forge.FThreads;
|
import forge.FThreads;
|
||||||
@@ -460,7 +461,7 @@ public abstract class InputPayMana extends InputSyncronizedBase {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return String.format("PayManaBase %s left", manaCost.toString());
|
return TextUtil.concatNoSpace("PayManaBase ", manaCost.toString(), " left");
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isPaid() { return bPaid; }
|
public boolean isPaid() { return bPaid; }
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import java.util.List;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Map.Entry;
|
import java.util.Map.Entry;
|
||||||
|
|
||||||
|
import forge.util.TextUtil;
|
||||||
import org.apache.commons.lang3.tuple.ImmutablePair;
|
import org.apache.commons.lang3.tuple.ImmutablePair;
|
||||||
|
|
||||||
import forge.model.FModel;
|
import forge.model.FModel;
|
||||||
@@ -51,7 +52,7 @@ public final class InputSelectCardsForConvokeOrImprovise extends InputSelectMany
|
|||||||
sa != null ) {
|
sa != null ) {
|
||||||
sb.append(sa.getStackDescription()).append("\n");
|
sb.append(sa.getStackDescription()).append("\n");
|
||||||
}
|
}
|
||||||
sb.append(String.format("Choose %s to tap for %s .\nRemaining mana cost is %s", cardType, description, remainingCost.toString()));
|
sb.append(TextUtil.concatNoSpace("Choose ", cardType, " to tap for ", description, " .\nRemaining mana cost is ", remainingCost.toString()));
|
||||||
return sb.toString();
|
return sb.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -104,7 +105,7 @@ public final class InputSelectCardsForConvokeOrImprovise extends InputSelectMany
|
|||||||
@Override
|
@Override
|
||||||
public String getActivateAction(final Card card) {
|
public String getActivateAction(final Card card) {
|
||||||
if (availableCards.contains(card)) {
|
if (availableCards.contains(card)) {
|
||||||
return String.format("tap %s for %s", cardType, description);
|
return TextUtil.concatNoSpace("tap ", cardType, " for ", description);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -55,16 +55,18 @@ public final class InputSelectTargets extends InputSyncronizedBase {
|
|||||||
// sb.append(sa.getStackDescription().replace("(Targeting ERROR)", "")).append("\n").append(tgt.getVTSelection());
|
// sb.append(sa.getStackDescription().replace("(Targeting ERROR)", "")).append("\n").append(tgt.getVTSelection());
|
||||||
// Apparently <b>...</b> tags do not work in mobile Forge, so don't include them (for now)
|
// Apparently <b>...</b> tags do not work in mobile Forge, so don't include them (for now)
|
||||||
sb.append(sa.getHostCard().toString()).append(" - ");
|
sb.append(sa.getHostCard().toString()).append(" - ");
|
||||||
sb.append(sa.toString()).append("\n\n").append(tgt.getVTSelection());
|
sb.append(sa.toString()).append("\n");
|
||||||
|
if(!ForgeConstants.isGdxPortLandscape)
|
||||||
|
sb.append("\n");
|
||||||
|
sb.append(tgt.getVTSelection());
|
||||||
} else {
|
} else {
|
||||||
sb.append(sa.getHostCard()).append(" - ").append(tgt.getVTSelection());
|
sb.append(sa.getHostCard()).append(" - ").append(tgt.getVTSelection());
|
||||||
}
|
}
|
||||||
if (!targetDepth.entrySet().isEmpty()) {
|
if (!targetDepth.entrySet().isEmpty()) {
|
||||||
sb.append("\nTargeted:");
|
sb.append("\nTargeted: ");
|
||||||
}
|
}
|
||||||
for (final Entry<GameEntity, Integer> o : targetDepth.entrySet()) {
|
for (final Entry<GameEntity, Integer> o : targetDepth.entrySet()) {
|
||||||
//if it's not in gdx port landscape mode, append the linebreak or it will make the android port
|
//if it's not in gdx port landscape mode, append the linebreak
|
||||||
// display smaller fonts consecutively when targeting with multiple targets
|
|
||||||
if(!ForgeConstants.isGdxPortLandscape)
|
if(!ForgeConstants.isGdxPortLandscape)
|
||||||
sb.append("\n");
|
sb.append("\n");
|
||||||
sb.append(o.getKey());
|
sb.append(o.getKey());
|
||||||
|
|||||||
Reference in New Issue
Block a user