mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-14 09:48:02 +00:00
Update language properties
This commit is contained in:
@@ -7,28 +7,30 @@ import forge.deck.Deck;
|
||||
import forge.deck.DeckFormat;
|
||||
import forge.deck.DeckSection;
|
||||
import forge.game.player.RegisteredPlayer;
|
||||
import forge.util.Localizer;
|
||||
|
||||
public enum GameType {
|
||||
Sealed (DeckFormat.Limited, true, true, true, "Sealed", ""),
|
||||
Draft (DeckFormat.Limited, true, true, true, "Draft", ""),
|
||||
Winston (DeckFormat.Limited, true, true, true, "Winston", ""),
|
||||
Gauntlet (DeckFormat.Constructed, false, true, true, "Gauntlet", ""),
|
||||
Tournament (DeckFormat.Constructed, false, true, true, "Tournament", ""),
|
||||
Quest (DeckFormat.QuestDeck, true, true, false, "Quest", ""),
|
||||
QuestDraft (DeckFormat.Limited, true, true, true, "Quest Draft", ""),
|
||||
PlanarConquest (DeckFormat.PlanarConquest, true, false, false, "Planar Conquest", ""),
|
||||
Puzzle (DeckFormat.Puzzle, false, false, false, "Puzzle", "Solve a puzzle from the given game state"),
|
||||
Constructed (DeckFormat.Constructed, false, true, true, "Constructed", ""),
|
||||
DeckManager (DeckFormat.Constructed, false, true, true, "Deck Manager", ""),
|
||||
Vanguard (DeckFormat.Vanguard, true, true, true, "Vanguard", "Each player has a special \"Avatar\" card that affects the game."),
|
||||
Commander (DeckFormat.Commander, false, false, false, "Commander", "Each player has a legendary \"General\" card which can be cast at any time and determines deck colors."),
|
||||
TinyLeaders (DeckFormat.TinyLeaders, false, false, false, "Tiny Leaders", "Each player has a legendary \"General\" card which can be cast at any time and determines deck colors. Each card must have CMC less than 4."),
|
||||
Brawl (DeckFormat.Brawl, false, false, false, "Brawl", "Each player has a legendary \"General\" card which can be cast at any time and determines deck colors. Only cards legal in Standard may be used."),
|
||||
Planeswalker (DeckFormat.PlanarConquest, false, false, true, "Planeswalker", "Each player has a Planeswalker card which can be cast at any time."),
|
||||
Planechase (DeckFormat.Planechase, false, false, true, "Planechase", "Plane cards apply global effects. The Plane card changes when a player rolls \"Planeswalk\" on the planar die."),
|
||||
Archenemy (DeckFormat.Archenemy, false, false, true, "Archenemy", "One player is the Archenemy and fights the other players by playing Scheme cards."),
|
||||
ArchenemyRumble (DeckFormat.Archenemy, false, false, true, "Archenemy Rumble", "All players are Archenemies and can play Scheme cards."),
|
||||
MomirBasic (DeckFormat.Constructed, false, false, false, "Momir Basic", "Each player has a deck containing 60 basic lands and the Momir Vig avatar.", new Function<RegisteredPlayer, Deck>() {
|
||||
|
||||
Sealed (DeckFormat.Limited, true, true, true, "lblSealed", ""),
|
||||
Draft (DeckFormat.Limited, true, true, true, "lblDraft", ""),
|
||||
Winston (DeckFormat.Limited, true, true, true, "lblWinston", ""),
|
||||
Gauntlet (DeckFormat.Constructed, false, true, true, "lblGauntlet", ""),
|
||||
Tournament (DeckFormat.Constructed, false, true, true, "lblTournament", ""),
|
||||
Quest (DeckFormat.QuestDeck, true, true, false, "lblQuest", ""),
|
||||
QuestDraft (DeckFormat.Limited, true, true, true, "lblQuestDraft", ""),
|
||||
PlanarConquest (DeckFormat.PlanarConquest, true, false, false, "lblPlanarConquest", ""),
|
||||
Puzzle (DeckFormat.Puzzle, false, false, false, "lblPuzzle", "lblPuzzleDesc"),
|
||||
Constructed (DeckFormat.Constructed, false, true, true, "lblConstructed", ""),
|
||||
DeckManager (DeckFormat.Constructed, false, true, true, "lblDeckManager", ""),
|
||||
Vanguard (DeckFormat.Vanguard, true, true, true, "lblVanguard", "lblVanguardDesc"),
|
||||
Commander (DeckFormat.Commander, false, false, false, "lblCommander", "lblCommanderDesc"),
|
||||
TinyLeaders (DeckFormat.TinyLeaders, false, false, false, "lblTinyLeaders", "lblTinyLeadersDesc"),
|
||||
Brawl (DeckFormat.Brawl, false, false, false, "lblBrawl", "lblBrawlDesc"),
|
||||
Planeswalker (DeckFormat.PlanarConquest, false, false, true, "lblPlaneswalker", "lblPlaneswalkerDesc"),
|
||||
Planechase (DeckFormat.Planechase, false, false, true, "lblPlanechase", "lblPlanechaseDesc"),
|
||||
Archenemy (DeckFormat.Archenemy, false, false, true, "lblArchenemy", "lblArchenemyDesc"),
|
||||
ArchenemyRumble (DeckFormat.Archenemy, false, false, true, "lblArchenemyRumble", "lblArchenemyRumbleDesc"),
|
||||
MomirBasic (DeckFormat.Constructed, false, false, false, "lblMomirBasic", "lblMomirBasicDesc", new Function<RegisteredPlayer, Deck>() {
|
||||
@Override
|
||||
public Deck apply(RegisteredPlayer player) {
|
||||
Deck deck = new Deck();
|
||||
@@ -43,7 +45,7 @@ public enum GameType {
|
||||
return deck;
|
||||
}
|
||||
}),
|
||||
MoJhoSto (DeckFormat.Constructed, false, false, false, "MoJhoSto", "Each player has a deck containing 60 basic lands and the Momir Vig, Jhoira of the Ghitu, and Stonehewer Giant avatars.", new Function<RegisteredPlayer, Deck>() {
|
||||
MoJhoSto (DeckFormat.Constructed, false, false, false, "lblMoJhoSto", "lblMoJhoStoDesc", new Function<RegisteredPlayer, Deck>() {
|
||||
@Override
|
||||
public Deck apply(RegisteredPlayer player) {
|
||||
Deck deck = new Deck();
|
||||
@@ -69,14 +71,19 @@ public enum GameType {
|
||||
private final Function<RegisteredPlayer, Deck> deckAutoGenerator;
|
||||
|
||||
private GameType(DeckFormat deckFormat0, boolean isCardPoolLimited0, boolean canSideboard0, boolean addWonCardsMidgame0, String name0, String description0) {
|
||||
|
||||
this(deckFormat0, isCardPoolLimited0, canSideboard0, addWonCardsMidgame0, name0, description0, null);
|
||||
}
|
||||
private GameType(DeckFormat deckFormat0, boolean isCardPoolLimited0, boolean canSideboard0, boolean addWonCardsMidgame0, String name0, String description0, Function<RegisteredPlayer, Deck> deckAutoGenerator0) {
|
||||
final Localizer localizer = forge.util.Localizer.getInstance();
|
||||
deckFormat = deckFormat0;
|
||||
isCardPoolLimited = isCardPoolLimited0;
|
||||
canSideboard = canSideboard0;
|
||||
addWonCardsMidGame = addWonCardsMidgame0;
|
||||
name = name0;
|
||||
name = localizer.getMessage(name0);
|
||||
if (description0.length()>0) {
|
||||
description0 = localizer.getMessage(description0);
|
||||
}
|
||||
description = description0;
|
||||
deckAutoGenerator = deckAutoGenerator0;
|
||||
}
|
||||
|
||||
@@ -85,10 +85,10 @@ public enum FControl implements KeyEventDispatcher {
|
||||
private CloseAction closeAction;
|
||||
private final List<HostedMatch> currentMatches = Lists.newArrayList();
|
||||
|
||||
public static enum CloseAction {
|
||||
public enum CloseAction {
|
||||
NONE,
|
||||
CLOSE_SCREEN,
|
||||
EXIT_FORGE;
|
||||
EXIT_FORGE
|
||||
}
|
||||
|
||||
private boolean hasCurrentMatches() {
|
||||
@@ -122,7 +122,7 @@ public enum FControl implements KeyEventDispatcher {
|
||||
* switches between various display screens in that JFrame. Controllers are
|
||||
* instantiated separately by each screen's top level view class.
|
||||
*/
|
||||
private FControl() {
|
||||
FControl() {
|
||||
Singletons.getView().getFrame().addWindowListener(new WindowAdapter() {
|
||||
@Override
|
||||
public void windowClosing(final WindowEvent e) {
|
||||
@@ -187,10 +187,7 @@ public enum FControl implements KeyEventDispatcher {
|
||||
if (!FOptionPane.showConfirmDialog(userPrompt, action + " Forge", action, "Cancel", !hasCurrentMatches)) { //default Yes if no game active
|
||||
return false;
|
||||
}
|
||||
if (!CDeckEditorUI.SINGLETON_INSTANCE.canSwitchAway(true)) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
return CDeckEditorUI.SINGLETON_INSTANCE.canSwitchAway(true);
|
||||
}
|
||||
|
||||
public boolean restartForge() {
|
||||
@@ -395,9 +392,8 @@ public enum FControl implements KeyEventDispatcher {
|
||||
else {
|
||||
altKeyLastDown = false;
|
||||
if (e.getID() == KeyEvent.KEY_PRESSED) {
|
||||
if (forgeMenu.handleKeyEvent(e)) { //give Forge menu the chance to handle the key event
|
||||
return true;
|
||||
}
|
||||
//give Forge menu the chance to handle the key event
|
||||
return forgeMenu.handleKeyEvent(e);
|
||||
}
|
||||
else if (e.getID() == KeyEvent.KEY_RELEASED) {
|
||||
if (e.getKeyCode() == KeyEvent.VK_CONTEXT_MENU) {
|
||||
|
||||
@@ -12,6 +12,7 @@ import com.google.common.base.Predicate;
|
||||
import forge.deck.*;
|
||||
import forge.game.GameFormat;
|
||||
import forge.item.PaperCard;
|
||||
import forge.util.Localizer;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@@ -46,7 +47,9 @@ public class FDeckChooser extends JPanel implements IDecksComboBoxListener {
|
||||
private boolean isForCommander;
|
||||
|
||||
private final DeckManager lstDecks;
|
||||
private final FLabel btnViewDeck = new FLabel.ButtonBuilder().text("View Deck").fontSize(14).build();
|
||||
final Localizer localizer = Localizer.getInstance();
|
||||
|
||||
private final FLabel btnViewDeck = new FLabel.ButtonBuilder().text(localizer.getMessage("lblViewDeck")).fontSize(14).build();
|
||||
private final FLabel btnRandom = new FLabel.ButtonBuilder().fontSize(14).build();
|
||||
|
||||
private boolean isAi;
|
||||
@@ -119,7 +122,7 @@ public class FDeckChooser extends JPanel implements IDecksComboBoxListener {
|
||||
lstDecks.setPool(decks);
|
||||
lstDecks.setup(config);
|
||||
|
||||
btnRandom.setText("Random Deck");
|
||||
btnRandom.setText(localizer.getMessage("lblRandomDeck"));
|
||||
btnRandom.setCommand(new UiCommand() {
|
||||
@Override
|
||||
public void run() {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
package forge.deckchooser;
|
||||
|
||||
public interface IDecksComboBoxListener {
|
||||
public void deckTypeSelected(DecksComboBoxEvent ev);
|
||||
void deckTypeSelected(DecksComboBoxEvent ev);
|
||||
}
|
||||
|
||||
@@ -105,7 +105,7 @@ public enum FNetOverlay implements IOnlineChatInterface {
|
||||
/**
|
||||
* Semi-transparent overlay panel. Should be used with layered panes.
|
||||
*/
|
||||
private FNetOverlay() {
|
||||
FNetOverlay() {
|
||||
window.setTitle("Chat");
|
||||
window.setVisible(false);
|
||||
window.setBackground(FSkin.getColor(FSkin.Colors.CLR_ZEBRA));
|
||||
|
||||
@@ -250,7 +250,7 @@ public class GuiChoose {
|
||||
|
||||
final Callable<List<T>> callable = new Callable<List<T>>() {
|
||||
@Override
|
||||
public List<T> call() throws Exception {
|
||||
public List<T> call() {
|
||||
final DualListBox<T> dual = new DualListBox<T>(remainingObjectsMin, remainingObjectsMax, sourceChoices, destChoices, matchUI);
|
||||
dual.setSecondColumnLabelText(top);
|
||||
|
||||
@@ -290,7 +290,7 @@ public class GuiChoose {
|
||||
gui.setSelectables(manipulable);
|
||||
final Callable<List<CardView>> callable = new Callable<List<CardView>>() {
|
||||
@Override
|
||||
public List<CardView> call() throws Exception {
|
||||
public List<CardView> call() {
|
||||
ListCardArea tempArea = ListCardArea.show(gui,title,cards,manipulable,toTop,toBottom,toAnywhere);
|
||||
// tempArea.pack();
|
||||
tempArea.show();
|
||||
|
||||
@@ -490,7 +490,7 @@ public class ImportDialog {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Void doInBackground() throws Exception {
|
||||
protected Void doInBackground() {
|
||||
Timer timer = null;
|
||||
|
||||
try {
|
||||
@@ -867,7 +867,7 @@ public class ImportDialog {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Void doInBackground() throws Exception {
|
||||
protected Void doInBackground() {
|
||||
try {
|
||||
// working with textbox text is thread safe
|
||||
_operationLog.setText("");
|
||||
|
||||
@@ -155,12 +155,12 @@ public enum EDocID {
|
||||
// End enum declarations, start enum methods.
|
||||
private IVDoc<? extends ICDoc> vDoc;
|
||||
|
||||
private EDocID() {
|
||||
EDocID() {
|
||||
this(null);
|
||||
}
|
||||
|
||||
/** @param doc0   {@link forge.gui.framework.IVDoc} */
|
||||
private EDocID(final IVDoc<? extends ICDoc> doc0) {
|
||||
EDocID(final IVDoc<? extends ICDoc> doc0) {
|
||||
this.vDoc = doc0;
|
||||
}
|
||||
|
||||
|
||||
@@ -53,9 +53,7 @@ public class RectangleOfDouble {
|
||||
return false;
|
||||
if (Double.doubleToLongBits(x) != Double.doubleToLongBits(other.x))
|
||||
return false;
|
||||
if (Double.doubleToLongBits(y) != Double.doubleToLongBits(other.y))
|
||||
return false;
|
||||
return true;
|
||||
return Double.doubleToLongBits(y) == Double.doubleToLongBits(other.y);
|
||||
}
|
||||
|
||||
public final double getX() {
|
||||
|
||||
@@ -242,7 +242,7 @@ public final class SLayoutIO {
|
||||
}
|
||||
catch (final Exception e) {
|
||||
try {
|
||||
if (reader != null) { reader.close(); };
|
||||
if (reader != null) { reader.close(); }
|
||||
}
|
||||
catch (final XMLStreamException x) {
|
||||
e.printStackTrace();
|
||||
@@ -556,7 +556,7 @@ public final class SLayoutIO {
|
||||
EDocID selectedId = null;
|
||||
double x0 = 0, y0 = 0, w0 = 0, h0 = 0;
|
||||
|
||||
MapOfLists<LayoutInfo, EDocID> model = new HashMapOfLists<LayoutInfo, EDocID>(CollectionSuppliers.<EDocID>arrayLists());
|
||||
MapOfLists<LayoutInfo, EDocID> model = new HashMapOfLists<LayoutInfo, EDocID>(CollectionSuppliers.arrayLists());
|
||||
|
||||
LayoutInfo currentKey = null;
|
||||
while (null != reader && reader.hasNext()) {
|
||||
|
||||
@@ -65,7 +65,7 @@ public final class SOverflowUtil {
|
||||
public void mouseClicked(final MouseEvent e) {
|
||||
final JPanel pnl = FView.SINGLETON_INSTANCE.getPnlTabOverflow();
|
||||
if (pnl != null) {
|
||||
pnl.setVisible(pnl.isVisible() ? false : true);
|
||||
pnl.setVisible(!pnl.isVisible());
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -90,7 +90,7 @@ public final class SRearrangingUtil {
|
||||
// If only a single tab, select it, and add it to docsToMove.
|
||||
if (e.getSource() instanceof DragTab) {
|
||||
for (final IVDoc<? extends ICDoc> vDoc : cellSrc.getDocs()) {
|
||||
if (vDoc.getTabLabel() == (DragTab) (e.getSource())) {
|
||||
if (vDoc.getTabLabel() == e.getSource()) {
|
||||
cellSrc.setSelected(vDoc);
|
||||
docsToMove.add(vDoc);
|
||||
}
|
||||
|
||||
@@ -1130,7 +1130,7 @@ public abstract class ItemManager<T extends InventoryItem> extends JPanel implem
|
||||
* @param unique - if true, the editor will be set to the "unique item names only" mode.
|
||||
*/
|
||||
public void setWantUnique(final boolean unique) {
|
||||
this.wantUnique = this.alwaysNonUnique ? false : unique;
|
||||
this.wantUnique = !this.alwaysNonUnique && unique;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -18,7 +18,7 @@ public enum CBazaarUI implements ICDoc {
|
||||
* @param v0   {@link forge.screens.bazaar.VBazaarUI}
|
||||
* @param bazaar
|
||||
*/
|
||||
private CBazaarUI() {
|
||||
CBazaarUI() {
|
||||
}
|
||||
|
||||
/** Populate all stalls, and select first one. */
|
||||
|
||||
@@ -33,7 +33,7 @@ public enum VBazaarUI implements IVTopLevelUI {
|
||||
/** Lays out containers and borders for resizeable layout and
|
||||
* instantiates top-level controller for bazaar UI.
|
||||
* @param bazaar0 */
|
||||
private VBazaarUI() {
|
||||
VBazaarUI() {
|
||||
}
|
||||
|
||||
/** */
|
||||
|
||||
@@ -66,7 +66,7 @@ public enum CDeckEditorUI implements ICDoc {
|
||||
private final VBrawlDecks vBrawlDecks;
|
||||
private final VTinyLeadersDecks vTinyLeadersDecks;
|
||||
|
||||
private CDeckEditorUI() {
|
||||
CDeckEditorUI() {
|
||||
screenChildControllers = new HashMap<FScreen, ACEditorBase<? extends InventoryItem, ? extends DeckBase>>();
|
||||
this.cDetailPicture = new CDetailPicture();
|
||||
this.vAllDecks = VAllDecks.SINGLETON_INSTANCE;
|
||||
@@ -153,7 +153,7 @@ public enum CDeckEditorUI implements ICDoc {
|
||||
}
|
||||
|
||||
private interface _MoveAction {
|
||||
public <T extends InventoryItem> void move(Iterable<Entry<T, Integer>> items);
|
||||
<T extends InventoryItem> void move(Iterable<Entry<T, Integer>> items);
|
||||
}
|
||||
|
||||
private <T extends InventoryItem> void moveSelectedItems(final ItemManager<T> itemManager, final _MoveAction moveAction, final int maxQty) {
|
||||
|
||||
@@ -12,7 +12,7 @@ public enum CCardCatalog implements ICDoc {
|
||||
/** */
|
||||
SINGLETON_INSTANCE;
|
||||
|
||||
private CCardCatalog() {
|
||||
CCardCatalog() {
|
||||
}
|
||||
|
||||
//========== Overridden methods
|
||||
|
||||
@@ -39,7 +39,7 @@ public enum CCurrentDeck implements ICDoc {
|
||||
|
||||
//========== Overridden methods
|
||||
|
||||
private CCurrentDeck() {
|
||||
CCurrentDeck() {
|
||||
final FileFilter[] defaultFilters = fileChooser.getChoosableFileFilters();
|
||||
for (final FileFilter defFilter : defaultFilters) {
|
||||
fileChooser.removeChoosableFileFilter(defFilter);
|
||||
|
||||
@@ -30,7 +30,7 @@ public enum VCardCatalog implements IVDoc<CCardCatalog> {
|
||||
|
||||
//========== Constructor
|
||||
/** */
|
||||
private VCardCatalog() {
|
||||
VCardCatalog() {
|
||||
}
|
||||
|
||||
//========== Overridden from IVDoc
|
||||
|
||||
@@ -88,7 +88,7 @@ public enum VCurrentDeck implements IVDoc<CCurrentDeck> {
|
||||
|
||||
//========== Constructor
|
||||
|
||||
private VCurrentDeck() {
|
||||
VCurrentDeck() {
|
||||
// Header area
|
||||
pnlHeader.setOpaque(false);
|
||||
pnlHeader.setLayout(new MigLayout("insets 3, gapx 3, hidemode 3"));
|
||||
|
||||
@@ -43,7 +43,7 @@ public enum VDeckgen implements IVDoc<CDeckgen> {
|
||||
.opaque(true).hoverable(true).build();
|
||||
|
||||
//========== Constructor
|
||||
private VDeckgen() {
|
||||
VDeckgen() {
|
||||
}
|
||||
|
||||
//========== Overridden methods
|
||||
|
||||
@@ -55,7 +55,7 @@ public enum VProbabilities implements IVDoc<CProbabilities> {
|
||||
private final JPanel pnlLibrary = new JPanel(new MigLayout("insets 0, gap 0, wrap"));
|
||||
|
||||
//========== Constructor
|
||||
private VProbabilities() {
|
||||
VProbabilities() {
|
||||
pnlContent.setOpaque(false);
|
||||
pnlHand.setOpaque(false);
|
||||
pnlLibrary.setOpaque(false);
|
||||
|
||||
@@ -86,7 +86,7 @@ public enum VStatistics implements IVDoc<CStatistics> {
|
||||
private final FScrollPane scroller = new FScrollPane(pnlStats, false);
|
||||
|
||||
//========== Constructor
|
||||
private VStatistics() {
|
||||
VStatistics() {
|
||||
scroller.getViewport().setBorder(null);
|
||||
|
||||
// Color stats
|
||||
|
||||
@@ -18,7 +18,7 @@ public enum EMenuGroup {
|
||||
private final String strTitle;
|
||||
|
||||
/** @param {@link java.lang.String} */
|
||||
private EMenuGroup(final String s0) { strTitle = s0; }
|
||||
EMenuGroup(final String s0) { strTitle = s0; }
|
||||
|
||||
/** @return {@link java.lang.String} */
|
||||
public String getTitle() {
|
||||
|
||||
@@ -248,7 +248,7 @@ public class PlayerPanel extends FPanel {
|
||||
lobby.updateVanguardList(index);
|
||||
}
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* Listens to name text fields and gives the appropriate player focus. Also
|
||||
@@ -388,7 +388,7 @@ public class PlayerPanel extends FPanel {
|
||||
public Set<AIOption> getAiOptions() {
|
||||
return isSimulatedAi()
|
||||
? ImmutableSet.of(AIOption.USE_SIMULATION)
|
||||
: Collections.<AIOption>emptySet();
|
||||
: Collections.emptySet();
|
||||
}
|
||||
private boolean isSimulatedAi() {
|
||||
return radioAi.isSelected() && radioAiUseSimulation.isSelected();
|
||||
|
||||
@@ -98,7 +98,7 @@ public enum VHomeUI implements IVTopLevelUI {
|
||||
.iconAlignX(SwingConstants.CENTER)
|
||||
.iconInBackground(true).iconScaleFactor(1.0).build();
|
||||
|
||||
private VHomeUI() {
|
||||
VHomeUI() {
|
||||
// Add main menu containing logo and menu buttons
|
||||
final JPanel pnlMainMenu = new JPanel(new MigLayout("w 200px!, ax center, insets 0, gap 0, wrap"));
|
||||
pnlMainMenu.setOpaque(false);
|
||||
|
||||
@@ -24,6 +24,7 @@ import forge.toolbox.*;
|
||||
import forge.toolbox.FSkin.SkinImage;
|
||||
import forge.util.Aggregates;
|
||||
import forge.util.Lang;
|
||||
import forge.util.Localizer;
|
||||
import forge.util.NameGenerator;
|
||||
import forge.util.gui.SOptionPane;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
@@ -47,12 +48,13 @@ import java.util.List;
|
||||
public class VLobby implements ILobbyView {
|
||||
|
||||
static final int MAX_PLAYERS = 8;
|
||||
final Localizer localizer = Localizer.getInstance();
|
||||
private static final ForgePreferences prefs = FModel.getPreferences();
|
||||
|
||||
// General variables
|
||||
private final GameLobby lobby;
|
||||
private IPlayerChangeListener playerChangeListener = null;
|
||||
private final LblHeader lblTitle = new LblHeader("Sanctioned Format: Constructed");
|
||||
private final LblHeader lblTitle = new LblHeader(localizer.getMessage("lblHeaderConstructedMode"));
|
||||
private int activePlayersNum = 0;
|
||||
private int playerWithFocus = 0; // index of the player that currently has focus
|
||||
|
||||
@@ -81,13 +83,13 @@ public class VLobby implements ILobbyView {
|
||||
private final FScrollPanel playersScroll = new FScrollPanel(new MigLayout("insets 0, gap 0, wrap, hidemode 3"), true);
|
||||
private final List<PlayerPanel> playerPanels = new ArrayList<PlayerPanel>(MAX_PLAYERS);
|
||||
|
||||
private final FLabel addPlayerBtn = new FLabel.ButtonBuilder().fontSize(14).text("Add a Player").build();
|
||||
private final FLabel addPlayerBtn = new FLabel.ButtonBuilder().fontSize(14).text(localizer.getMessage("lblAddAPlayer")).build();
|
||||
|
||||
// Deck frame elements
|
||||
private final JPanel decksFrame = new JPanel(new MigLayout("insets 0, gap 0, wrap, hidemode 3"));
|
||||
private final List<FDeckChooser> deckChoosers = Lists.newArrayListWithCapacity(MAX_PLAYERS);
|
||||
private final FCheckBox cbSingletons = new FCheckBox("Singleton Mode");
|
||||
private final FCheckBox cbArtifacts = new FCheckBox("Remove Artifacts");
|
||||
private final FCheckBox cbSingletons = new FCheckBox(localizer.getMessage("cbSingletons"));
|
||||
private final FCheckBox cbArtifacts = new FCheckBox(localizer.getMessage("cbRemoveArtifacts"));
|
||||
private final Deck[] decks = new Deck[MAX_PLAYERS];
|
||||
|
||||
// Variants
|
||||
@@ -146,7 +148,7 @@ public class VLobby implements ILobbyView {
|
||||
}
|
||||
|
||||
variantsPanel.setOpaque(false);
|
||||
variantsPanel.add(newLabel("Variants:"));
|
||||
variantsPanel.add(newLabel(localizer.getMessage("lblVariants")));
|
||||
for (final VariantCheckBox vcb : vntBoxes) {
|
||||
variantsPanel.add(vcb);
|
||||
}
|
||||
@@ -431,7 +433,7 @@ public class VLobby implements ILobbyView {
|
||||
deckChoosers.add(mainChooser);
|
||||
|
||||
// Scheme deck list
|
||||
buildDeckPanel("Scheme Deck", playerIndex, schemeDeckLists, schemeDeckPanels, new ListSelectionListener() {
|
||||
buildDeckPanel(localizer.getMessage("lblSchemeDeck"), playerIndex, schemeDeckLists, schemeDeckPanels, new ListSelectionListener() {
|
||||
@Override public final void valueChanged(final ListSelectionEvent e) {
|
||||
selectSchemeDeck(playerIndex);
|
||||
}
|
||||
@@ -479,14 +481,14 @@ public class VLobby implements ILobbyView {
|
||||
});*/
|
||||
|
||||
// Planar deck list
|
||||
buildDeckPanel("Planar Deck", playerIndex, planarDeckLists, planarDeckPanels, new ListSelectionListener() {
|
||||
buildDeckPanel(localizer.getMessage("lblPlanarDeck"), playerIndex, planarDeckLists, planarDeckPanels, new ListSelectionListener() {
|
||||
@Override public final void valueChanged(final ListSelectionEvent e) {
|
||||
selectPlanarDeck(playerIndex);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// Vanguard avatar list
|
||||
buildDeckPanel("Vanguard Avatar", playerIndex, vgdAvatarLists, vgdPanels, new ListSelectionListener() {
|
||||
buildDeckPanel(localizer.getMessage("lblVanguardAvatar"), playerIndex, vgdAvatarLists, vgdPanels, new ListSelectionListener() {
|
||||
@Override public final void valueChanged(final ListSelectionEvent e) {
|
||||
selectVanguardAvatar(playerIndex);
|
||||
}
|
||||
@@ -872,8 +874,8 @@ public class VLobby implements ILobbyView {
|
||||
private static final ImmutableList<String> genderOptions = ImmutableList.of("Male", "Female", "Any"),
|
||||
typeOptions = ImmutableList.of("Fantasy", "Generic", "Any");
|
||||
final String getNewName() {
|
||||
final String title = "Get new random name";
|
||||
final String message = "What type of name do you want to generate?";
|
||||
final String title = localizer.getMessage("lblGetNewRandomName");
|
||||
final String message = localizer.getMessage("lbltypeofName");
|
||||
final SkinImage icon = FOptionPane.QUESTION_ICON;
|
||||
|
||||
final int genderIndex = FOptionPane.showOptionDialog(message, title, icon, genderOptions, 2);
|
||||
@@ -892,8 +894,8 @@ public class VLobby implements ILobbyView {
|
||||
final List<String> usedNames = getPlayerNames();
|
||||
do {
|
||||
newName = NameGenerator.getRandomName(gender, type, usedNames);
|
||||
confirmMsg = "Would you like to use the name \"" + newName + "\", or try again?";
|
||||
} while (!FOptionPane.showConfirmDialog(confirmMsg, title, "Use this name", "Try again", true));
|
||||
confirmMsg = localizer.getMessage("lblconfirmName").replace("%n","\"" +newName + "\"");
|
||||
} while (!FOptionPane.showConfirmDialog(confirmMsg, title, localizer.getMessage("lblUseThisName"), localizer.getMessage("lblTryAgain"), true));
|
||||
|
||||
return newName;
|
||||
}
|
||||
|
||||
@@ -106,7 +106,7 @@ public enum VSubmenuGauntletBuild implements IVSubmenu<CSubmenuGauntletBuild> {
|
||||
.icon(FSkin.getIcon(FSkinProp.ICO_OPEN))
|
||||
.text(" ").hoverable(true).build();
|
||||
|
||||
private VSubmenuGauntletBuild() {
|
||||
VSubmenuGauntletBuild() {
|
||||
lblTitle.setBackground(FSkin.getColor(FSkin.Colors.CLR_THEME2));
|
||||
|
||||
// File handling panel
|
||||
|
||||
@@ -54,7 +54,7 @@ public enum VSubmenuGauntletContests implements IVSubmenu<CSubmenuGauntletContes
|
||||
private final FLabel lblDesc1 = new FLabel.Builder()
|
||||
.text("A gauntlet that has been started will keep the same deck until it is finished.").build();
|
||||
|
||||
private VSubmenuGauntletContests() {
|
||||
VSubmenuGauntletContests() {
|
||||
lblTitle.setBackground(FSkin.getColor(FSkin.Colors.CLR_THEME2));
|
||||
|
||||
pnlLoad.setLayout(new MigLayout("insets 0, gap 0, wrap"));
|
||||
|
||||
@@ -43,7 +43,7 @@ public enum VSubmenuGauntletLoad implements IVSubmenu<CSubmenuGauntletLoad> {
|
||||
|
||||
private final StartButton btnStart = new StartButton();
|
||||
|
||||
private VSubmenuGauntletLoad() {
|
||||
VSubmenuGauntletLoad() {
|
||||
lblTitle.setBackground(FSkin.getColor(FSkin.Colors.CLR_THEME2));
|
||||
}
|
||||
|
||||
|
||||
@@ -78,7 +78,7 @@ public enum VSubmenuGauntletQuick implements IVSubmenu<CSubmenuGauntletQuick> {
|
||||
|
||||
private final StartButton btnStart = new StartButton();
|
||||
|
||||
private VSubmenuGauntletQuick() {
|
||||
VSubmenuGauntletQuick() {
|
||||
lblTitle.setBackground(FSkin.getColor(FSkin.Colors.CLR_THEME2));
|
||||
|
||||
boxUserDecks.setSelected(true);
|
||||
|
||||
@@ -54,7 +54,6 @@ public enum CSubmenuOnlineLobby implements ICDoc, IMenuProvider {
|
||||
} else {
|
||||
BugReporter.reportException(ex);
|
||||
}
|
||||
;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@ public enum VSubmenuOnlineLobby implements IVSubmenu<CSubmenuOnlineLobby>, IOnli
|
||||
private final JPanel pnlTitle = new JPanel(new MigLayout());
|
||||
private final StopButton btnStop = new StopButton();
|
||||
|
||||
private VSubmenuOnlineLobby() {
|
||||
VSubmenuOnlineLobby() {
|
||||
}
|
||||
|
||||
public ILobbyView setLobby(final GameLobby lobby) {
|
||||
|
||||
@@ -81,7 +81,7 @@ public enum VSubmenuChallenges implements IVSubmenu<CSubmenuChallenges>, IVQuest
|
||||
/**
|
||||
* Constructor.
|
||||
*/
|
||||
private VSubmenuChallenges() {
|
||||
VSubmenuChallenges() {
|
||||
final String constraints = "h 30px!, gap 0 0 0 5px";
|
||||
pnlStats.setLayout(new MigLayout("insets 0, gap 0, wrap, hidemode 3"));
|
||||
pnlStats.add(btnUnlock, "w 150px!, h 30px!, gap 0 0 0 10px");
|
||||
|
||||
@@ -60,7 +60,7 @@ public enum VSubmenuQuestDecks implements IVSubmenu<CSubmenuQuestDecks> {
|
||||
/**
|
||||
* Constructor.
|
||||
*/
|
||||
private VSubmenuQuestDecks() {
|
||||
VSubmenuQuestDecks() {
|
||||
lblTitle.setBackground(FSkin.getColor(FSkin.Colors.CLR_THEME2));
|
||||
lstDecks.setCaption("Quest Decks");
|
||||
}
|
||||
|
||||
@@ -69,7 +69,7 @@ public enum VSubmenuQuestPrefs implements IVSubmenu<CSubmenuQuestPrefs> {
|
||||
DIFFICULTY, /** */
|
||||
BOOSTER, /** */
|
||||
SHOP, /***/
|
||||
DRAFT_TOURNAMENTS;
|
||||
DRAFT_TOURNAMENTS
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -29,6 +29,7 @@ import forge.properties.ForgePreferences.FPref;
|
||||
import forge.screens.deckeditor.CDeckEditorUI;
|
||||
import forge.screens.deckeditor.controllers.CEditorDraftingProcess;
|
||||
import forge.toolbox.FOptionPane;
|
||||
import forge.util.Localizer;
|
||||
|
||||
/**
|
||||
* Controls the draft submenu in the home UI.
|
||||
@@ -114,11 +115,12 @@ public enum CSubmenuDraft implements ICDoc {
|
||||
}
|
||||
|
||||
private void startGame(final GameType gameType) {
|
||||
final Localizer localizer = Localizer.getInstance();
|
||||
final boolean gauntlet = !VSubmenuDraft.SINGLETON_INSTANCE.isSingleSelected();
|
||||
final DeckProxy humanDeck = VSubmenuDraft.SINGLETON_INSTANCE.getLstDecks().getSelectedItem();
|
||||
|
||||
if (humanDeck == null) {
|
||||
FOptionPane.showErrorDialog("No deck selected for human.\n(You may need to build a new deck)", "No Deck");
|
||||
FOptionPane.showErrorDialog(localizer.getMessage("lblNoDeckSelected"), localizer.getMessage("lblNoDeck"));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -179,8 +181,9 @@ public enum CSubmenuDraft implements ICDoc {
|
||||
|
||||
/** */
|
||||
private void setupDraft() {
|
||||
final Localizer localizer = Localizer.getInstance();
|
||||
// Determine what kind of booster draft to run
|
||||
final LimitedPoolType poolType = GuiChoose.oneOrNone("Choose Draft Format", LimitedPoolType.values());
|
||||
final LimitedPoolType poolType = GuiChoose.oneOrNone(localizer.getMessage("lblChooseDraftFormat"), LimitedPoolType.values());
|
||||
if (poolType == null) { return; }
|
||||
|
||||
final BoosterDraft draft = BoosterDraft.createDraft(poolType);
|
||||
|
||||
@@ -34,7 +34,7 @@ public enum VSubmenuConstructed implements IVSubmenu<CSubmenuConstructed> {
|
||||
private final DragTab tab = new DragTab(localizer.getMessage("lblConstructedMode"));
|
||||
private final GameLobby lobby = new LocalLobby();
|
||||
private final VLobby vLobby = new VLobby(lobby);
|
||||
private VSubmenuConstructed() {
|
||||
VSubmenuConstructed() {
|
||||
lobby.setListener(vLobby);
|
||||
|
||||
vLobby.setPlayerChangeListener(new IPlayerChangeListener() {
|
||||
|
||||
@@ -5,6 +5,7 @@ import java.awt.Font;
|
||||
import javax.swing.*;
|
||||
|
||||
import forge.toolbox.*;
|
||||
import forge.util.Localizer;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
import forge.game.GameType;
|
||||
import forge.gui.framework.DragCell;
|
||||
@@ -28,50 +29,51 @@ import forge.screens.home.VHomeUI.PnlDisplay;
|
||||
public enum VSubmenuDraft implements IVSubmenu<CSubmenuDraft> {
|
||||
/** */
|
||||
SINGLETON_INSTANCE;
|
||||
|
||||
final Localizer localizer = Localizer.getInstance();
|
||||
// Fields used with interface IVDoc
|
||||
private DragCell parentCell;
|
||||
private final DragTab tab = new DragTab("Booster Draft");
|
||||
|
||||
private final DragTab tab = new DragTab(localizer.getMessage("lblBoosterDraft"));
|
||||
|
||||
/** */
|
||||
private final LblHeader lblTitle = new LblHeader("Sanctioned Format: Booster Draft");
|
||||
private final LblHeader lblTitle = new LblHeader(localizer.getMessage("lblHeaderBoosterDraft"));
|
||||
|
||||
private final JPanel pnlStart = new JPanel();
|
||||
private final StartButton btnStart = new StartButton();
|
||||
|
||||
private final DeckManager lstDecks = new DeckManager(GameType.Draft, CDeckEditorUI.SINGLETON_INSTANCE.getCDetailPicture());
|
||||
|
||||
private final JRadioButton radSingle = new FRadioButton("Play an opponent");
|
||||
private final JRadioButton radAll = new FRadioButton("Play all 7 opponents");
|
||||
private final JRadioButton radSingle = new FRadioButton(localizer.getMessage("lblPlayAnOpponent"));
|
||||
private final JRadioButton radAll = new FRadioButton(localizer.getMessage("lblPlayAll7opponents"));
|
||||
|
||||
private final JComboBox<String> cbOpponent = new JComboBox<String>();
|
||||
|
||||
private final JLabel lblInfo = new FLabel.Builder()
|
||||
.fontAlign(SwingConstants.LEFT).fontSize(16).fontStyle(Font.BOLD)
|
||||
.text("Build or select a deck").build();
|
||||
.text(localizer.getMessage("lblBuildorselectadeck")).build();
|
||||
|
||||
private final FLabel lblDir1 = new FLabel.Builder()
|
||||
.text("In Draft mode, three booster packs are rotated around eight players.")
|
||||
.text(localizer.getMessage("lblDraftText1"))
|
||||
.fontSize(12).build();
|
||||
|
||||
private final FLabel lblDir2 = new FLabel.Builder()
|
||||
.text("Build a deck from the cards you choose. The AI will do the same.")
|
||||
.text(localizer.getMessage("lblDraftText2"))
|
||||
.fontSize(12).build();
|
||||
|
||||
private final FLabel lblDir3 = new FLabel.Builder()
|
||||
.text("Then, play against one or all of the AI opponents.")
|
||||
.text(localizer.getMessage("lblDraftText3"))
|
||||
.fontSize(12).build();
|
||||
|
||||
private final FLabel btnBuildDeck = new FLabel.ButtonBuilder().text("New Booster Draft Game").fontSize(16).build();
|
||||
private final FLabel btnBuildDeck = new FLabel.ButtonBuilder().text(localizer.getMessage("lblNewBoosterDraftGame")).fontSize(16).build();
|
||||
|
||||
/**
|
||||
* Constructor.
|
||||
*/
|
||||
private VSubmenuDraft() {
|
||||
VSubmenuDraft() {
|
||||
btnStart.setEnabled(false);
|
||||
|
||||
lblTitle.setBackground(FSkin.getColor(FSkin.Colors.CLR_THEME2));
|
||||
lstDecks.setCaption("Draft Decks");
|
||||
lstDecks.setCaption(localizer.getMessage("lblDraftDecks"));
|
||||
|
||||
final JXButtonPanel grpPanel = new JXButtonPanel();
|
||||
grpPanel.add(radSingle, "w 200px!, h 30px!");
|
||||
@@ -98,7 +100,7 @@ public enum VSubmenuDraft implements IVSubmenu<CSubmenuDraft> {
|
||||
*/
|
||||
@Override
|
||||
public String getMenuTitle() {
|
||||
return "Booster Draft";
|
||||
return localizer.getMessage("lblBoosterDraft");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
|
||||
@@ -12,6 +12,7 @@ import javax.swing.text.StyleConstants;
|
||||
import javax.swing.text.StyledDocument;
|
||||
|
||||
import forge.toolbox.*;
|
||||
import forge.util.Localizer;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
import forge.assets.FSkinProp;
|
||||
import forge.game.GameType;
|
||||
@@ -38,40 +39,41 @@ import forge.toolbox.FSkin.SkinnedTextPane;
|
||||
public enum VSubmenuSealed implements IVSubmenu<CSubmenuSealed> {
|
||||
/** */
|
||||
SINGLETON_INSTANCE;
|
||||
final Localizer localizer = Localizer.getInstance();
|
||||
|
||||
// Fields used with interface IVDoc
|
||||
private DragCell parentCell;
|
||||
private final DragTab tab = new DragTab("Sealed Deck");
|
||||
private final DragTab tab = new DragTab(localizer.getMessage("lblSealedDeck"));
|
||||
|
||||
/** */
|
||||
private final LblHeader lblTitle = new LblHeader("Sanctioned Format: Sealed Deck");
|
||||
private final LblHeader lblTitle = new LblHeader(localizer.getMessage("lblHeaderSealed"));
|
||||
|
||||
private final JPanel pnlStart = new JPanel();
|
||||
private final StartButton btnStart = new StartButton();
|
||||
private final DeckManager lstDecks = new DeckManager(GameType.Sealed, CDeckEditorUI.SINGLETON_INSTANCE.getCDetailPicture());
|
||||
|
||||
private final JRadioButton radSingle = new FRadioButton("Play an opponent");
|
||||
private final JRadioButton radAll = new FRadioButton("Play all 7 opponents");
|
||||
private final JRadioButton radSingle = new FRadioButton(localizer.getMessage("lblPlayAnOpponent"));
|
||||
private final JRadioButton radAll = new FRadioButton(localizer.getMessage("lblPlayAll7opponents"));
|
||||
|
||||
private final JComboBox<String> cbOpponent = new JComboBox<String>();
|
||||
|
||||
private final FLabel lblInfo = new FLabel.Builder()
|
||||
.fontAlign(SwingConstants.LEFT).fontSize(16).fontStyle(Font.BOLD)
|
||||
.text("Select a game, or build a new one").build();
|
||||
.text(localizer.getMessage("lblSealedText1")).build();
|
||||
|
||||
private final FLabel lblDir1 = new FLabel.Builder()
|
||||
.text("In Sealed mode, you build a deck from booster packs (maximum 10).")
|
||||
.text(localizer.getMessage("lblSealedText2"))
|
||||
.fontSize(12).build();
|
||||
|
||||
private final FLabel lblDir2 = new FLabel.Builder()
|
||||
.text("Build a deck from the cards you receive. A number of AI opponents will do the same.")
|
||||
.text(localizer.getMessage("lblSealedText3"))
|
||||
.fontSize(12).build();
|
||||
|
||||
private final FLabel lblDir3 = new FLabel.Builder()
|
||||
.text("Then, you may play against each of the AI opponents, or one of the opponents.")
|
||||
.text(localizer.getMessage("lblSealedText4"))
|
||||
.fontSize(12).build();
|
||||
|
||||
private final FLabel btnBuildDeck = new FLabel.ButtonBuilder().text("Build New Sealed Deck").fontSize(16).build();
|
||||
private final FLabel btnBuildDeck = new FLabel.ButtonBuilder().text(localizer.getMessage("btnBuildNewSealedDeck")).fontSize(16).build();
|
||||
|
||||
private final FLabel btnDirections = new FLabel.Builder()
|
||||
.fontSize(16).opaque(true).hoverable(true)
|
||||
@@ -80,11 +82,11 @@ public enum VSubmenuSealed implements IVSubmenu<CSubmenuSealed> {
|
||||
/**
|
||||
* Constructor.
|
||||
*/
|
||||
private VSubmenuSealed() {
|
||||
VSubmenuSealed() {
|
||||
btnStart.setEnabled(false);
|
||||
|
||||
lblTitle.setBackground(FSkin.getColor(FSkin.Colors.CLR_THEME2));
|
||||
lstDecks.setCaption("Sealed Decks");
|
||||
lstDecks.setCaption(localizer.getMessage("lblSealedDecks"));
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
@@ -135,7 +137,7 @@ public enum VSubmenuSealed implements IVSubmenu<CSubmenuSealed> {
|
||||
*/
|
||||
@Override
|
||||
public String getMenuTitle() {
|
||||
return "Sealed Deck";
|
||||
return localizer.getMessage("lblSealedDeck");
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
|
||||
@@ -70,7 +70,7 @@ public enum VSubmenuWinston implements IVSubmenu<CSubmenuWinston> {
|
||||
/**
|
||||
* Constructor.
|
||||
*/
|
||||
private VSubmenuWinston() {
|
||||
VSubmenuWinston() {
|
||||
lstAI.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
|
||||
btnStart.setEnabled(false);
|
||||
|
||||
|
||||
@@ -233,6 +233,8 @@ public enum CSubmenuPreferences implements ICDoc {
|
||||
initializeCounterDisplayLocationComboBox();
|
||||
initializeGraveyardOrderingComboBox();
|
||||
initializePlayerNameButton();
|
||||
initializeDefaultLanguageComboBox();
|
||||
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
@@ -352,6 +354,15 @@ public enum CSubmenuPreferences implements ICDoc {
|
||||
panel.setComboBox(comboBox, Singletons.getControl().getCloseAction());
|
||||
}
|
||||
|
||||
private void initializeDefaultLanguageComboBox() {
|
||||
|
||||
final String [] choices = {"en-US", "es-ES", "de-DE"};
|
||||
final FPref userSetting = FPref.UI_LANGUAGE;
|
||||
final FComboBoxPanel<String> panel = this.view.getCbpDefaultLanguageComboBoxPanel();
|
||||
final FComboBox<String> comboBox = createComboBox(choices, userSetting);
|
||||
final String selectedItem = this.prefs.getPref(userSetting);
|
||||
panel.setComboBox(comboBox, selectedItem);
|
||||
}
|
||||
private void initializeDefaultFontSizeComboBox() {
|
||||
final String [] choices = {"10", "11", "12", "13", "14", "15", "16", "17", "18"};
|
||||
final FPref userSetting = FPref.UI_DEFAULT_FONT_SIZE;
|
||||
|
||||
@@ -68,7 +68,7 @@ public enum VSubmenuAchievements implements IVSubmenu<CSubmenuAchievements> {
|
||||
private final FScrollPane scroller = new FScrollPane(trophyCase, false,
|
||||
ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
|
||||
|
||||
private VSubmenuAchievements() {
|
||||
VSubmenuAchievements() {
|
||||
lblTitle.setBackground(FSkin.getColor(FSkin.Colors.CLR_THEME2));
|
||||
|
||||
trophyCase.setMinimumSize(new Dimension(FSkinProp.IMG_TROPHY_SHELF.getWidth(), 0));
|
||||
|
||||
@@ -38,7 +38,7 @@ public enum VSubmenuAvatars implements IVSubmenu<CSubmenuAvatars> {
|
||||
private final FLabel lblAvatarAI = new FLabel.Builder().hoverable(true).selectable(true)
|
||||
.iconScaleFactor(0.99f).iconInBackground(true).build();
|
||||
|
||||
private VSubmenuAvatars() {
|
||||
VSubmenuAvatars() {
|
||||
populateAvatars();
|
||||
}
|
||||
|
||||
|
||||
@@ -67,6 +67,7 @@ public enum VSubmenuDownloaders implements IVSubmenu<CSubmenuDownloaders> {
|
||||
* Constructor.
|
||||
*/
|
||||
VSubmenuDownloaders() {
|
||||
final Localizer localizer = Localizer.getInstance();
|
||||
|
||||
final String constraintsLBL = "w 90%!, h 20px!, center, gap 0 0 3px 8px";
|
||||
final String constraintsBTN = "h 30px!, w 50%!, center";
|
||||
@@ -106,7 +107,7 @@ public enum VSubmenuDownloaders implements IVSubmenu<CSubmenuDownloaders> {
|
||||
pnlContent.add(label, "w 90%!, h 25px!, center, gap 0 0 0 36px");
|
||||
|
||||
}
|
||||
|
||||
|
||||
pnlContent.add(btnListImageData, constraintsBTN);
|
||||
pnlContent.add(_makeLabel(localizer.getMessage("lblListImageData")), constraintsLBL);
|
||||
|
||||
|
||||
@@ -119,6 +119,7 @@ public enum VSubmenuPreferences implements IVSubmenu<CSubmenuPreferences> {
|
||||
private final FComboBoxPanel<String> cbpCounterDisplayType = new FComboBoxPanel<>(localizer.getMessage("cbpCounterDisplayType")+":");
|
||||
private final FComboBoxPanel<String> cbpCounterDisplayLocation =new FComboBoxPanel<>(localizer.getMessage("cbpCounterDisplayLocation")+":");
|
||||
private final FComboBoxPanel<String> cbpGraveyardOrdering = new FComboBoxPanel<>(localizer.getMessage("cbpGraveyardOrdering")+":");
|
||||
private final FComboBoxPanel<String> cbpDefaultLanguage = new FComboBoxPanel<>(localizer.getMessage("cbpSelectLanguage")+":");
|
||||
|
||||
/**
|
||||
* Constructor.
|
||||
@@ -152,6 +153,10 @@ public enum VSubmenuPreferences implements IVSubmenu<CSubmenuPreferences> {
|
||||
// General Configuration
|
||||
pnlPrefs.add(new SectionLabel(localizer.getMessage("GeneralConfiguration")), sectionConstraints);
|
||||
|
||||
// language
|
||||
pnlPrefs.add(cbpDefaultLanguage, comboBoxConstraints);
|
||||
pnlPrefs.add(new NoteLabel(localizer.getMessage("nlSelectLanguage")), descriptionConstraints);
|
||||
|
||||
pnlPrefs.add(getPlayerNamePanel(), titleConstraints + ", h 26px!");
|
||||
pnlPrefs.add(new NoteLabel(localizer.getMessage("nlPlayerName")), descriptionConstraints);
|
||||
|
||||
@@ -648,6 +653,11 @@ public enum VSubmenuPreferences implements IVSubmenu<CSubmenuPreferences> {
|
||||
return cbpDefaultFontSize;
|
||||
}
|
||||
|
||||
public FComboBoxPanel<String> getCbpDefaultLanguageComboBoxPanel() {
|
||||
return cbpDefaultLanguage;
|
||||
}
|
||||
|
||||
|
||||
public FComboBoxPanel<String> getAutoYieldModeComboBoxPanel() {
|
||||
return cbpAutoYieldMode;
|
||||
}
|
||||
|
||||
@@ -155,7 +155,7 @@ public final class CMatchUI
|
||||
this.myDocs.put(EDocID.REPORT_COMBAT, cCombat.getView());
|
||||
this.myDocs.put(EDocID.REPORT_LOG, cLog.getView());
|
||||
this.myDocs.put(EDocID.DEV_MODE, getCDev().getView());
|
||||
this.myDocs.put(EDocID.BUTTON_DOCK, getCDock().getView());;
|
||||
this.myDocs.put(EDocID.BUTTON_DOCK, getCDock().getView());
|
||||
}
|
||||
|
||||
private void registerDocs() {
|
||||
@@ -703,7 +703,7 @@ public final class CMatchUI
|
||||
FThreads.invokeInEdtNowOrLater(focusRoutine);
|
||||
} else {
|
||||
FThreads.invokeInEdtAndWait(focusRoutine);
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -196,7 +196,7 @@ public final class CDev implements ICDoc {
|
||||
}
|
||||
};
|
||||
public void exileCardsFromHand() {
|
||||
getController().cheat().exileCardsFromHand();;
|
||||
getController().cheat().exileCardsFromHand();
|
||||
}
|
||||
|
||||
private final MouseListener madAddCounter = new MouseAdapter() {
|
||||
|
||||
@@ -51,7 +51,7 @@ public class CDock implements ICDoc {
|
||||
this.view = new VDock(this);
|
||||
}
|
||||
|
||||
public enum ArcState { OFF, MOUSEOVER, ON; }
|
||||
public enum ArcState { OFF, MOUSEOVER, ON}
|
||||
|
||||
public VDock getView() {
|
||||
return view;
|
||||
@@ -108,7 +108,7 @@ public class CDock implements ICDoc {
|
||||
|
||||
public void setArcState(final ArcState state) {
|
||||
arcState = state;
|
||||
while (arcStateIterator.next() != arcState) { /* Put the iterator to the correct value */ };
|
||||
while (arcStateIterator.next() != arcState) { /* Put the iterator to the correct value */ }
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -62,7 +62,7 @@ public final class CardOverlaysMenu {
|
||||
toggleShowOverlaySetting();
|
||||
repaintCardOverlays();
|
||||
// Enable/disable overlay menu items based on state of "Show" menu.
|
||||
for (Component c : ((JPopupMenu)showMenu.getParent()).getComponents()) {
|
||||
for (Component c : showMenu.getParent().getComponents()) {
|
||||
if (c instanceof JMenuItem) {
|
||||
JMenuItem m = (JMenuItem)c;
|
||||
if (m != showMenu) {
|
||||
|
||||
@@ -24,7 +24,7 @@ public class DevModeMenu implements ActionListener, IDevListener {
|
||||
public DevModeMenu(final CDev controller) {
|
||||
this.controller = controller;
|
||||
controller.addListener(this);
|
||||
};
|
||||
}
|
||||
|
||||
// Using an enum to avoid having to create multiple
|
||||
// ActionListeners each calling a single method.
|
||||
@@ -49,7 +49,7 @@ public class DevModeMenu implements ActionListener, IDevListener {
|
||||
DEV_CORNER("Developer's Corner");
|
||||
|
||||
protected String caption;
|
||||
private DevMenuItem(final String value) {
|
||||
DevMenuItem(final String value) {
|
||||
this.caption = value;
|
||||
}
|
||||
protected static DevMenuItem getValue(final String s) {
|
||||
@@ -60,7 +60,7 @@ public class DevModeMenu implements ActionListener, IDevListener {
|
||||
}
|
||||
return null;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(final boolean playUnlimitedLands, final boolean mayViewAllCards) {
|
||||
|
||||
@@ -41,7 +41,7 @@ public enum CWorkshopUI implements ICDoc, IMenuProvider {
|
||||
/** */
|
||||
SINGLETON_INSTANCE;
|
||||
|
||||
private CWorkshopUI() {
|
||||
CWorkshopUI() {
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
|
||||
@@ -13,7 +13,7 @@ public enum CCardDesigner implements ICDoc {
|
||||
/** */
|
||||
SINGLETON_INSTANCE;
|
||||
|
||||
private CCardDesigner() {
|
||||
CCardDesigner() {
|
||||
VCardDesigner.SINGLETON_INSTANCE.getBtnSaveCard().setCommand(new Runnable() {
|
||||
@Override public final void run() {
|
||||
CCardScript.SINGLETON_INSTANCE.saveChanges();
|
||||
|
||||
@@ -46,7 +46,7 @@ public enum CCardScript implements ICDoc {
|
||||
private boolean switchInProgress;
|
||||
private boolean refreshing;
|
||||
|
||||
private CCardScript() {
|
||||
CCardScript() {
|
||||
VCardScript.SINGLETON_INSTANCE.getTxtScript().getDocument().addDocumentListener(new DocumentListener() {
|
||||
@Override
|
||||
public void removeUpdate(final DocumentEvent arg0) {
|
||||
@@ -103,7 +103,7 @@ public enum CCardScript implements ICDoc {
|
||||
refreshing = true;
|
||||
final JTextPane txtScript = VCardScript.SINGLETON_INSTANCE.getTxtScript();
|
||||
txtScript.setText(currentScriptInfo != null ? currentScriptInfo.getText() : "");
|
||||
txtScript.setEditable(currentScriptInfo != null ? currentScriptInfo.canEdit() : false);
|
||||
txtScript.setEditable(currentScriptInfo != null && currentScriptInfo.canEdit());
|
||||
txtScript.setCaretPosition(0); //keep scrolled to top
|
||||
|
||||
final StyledDocument doc = VCardScript.SINGLETON_INSTANCE.getDoc();
|
||||
|
||||
@@ -14,7 +14,7 @@ public enum CWorkshopCatalog implements ICDoc {
|
||||
/** */
|
||||
SINGLETON_INSTANCE;
|
||||
|
||||
private CWorkshopCatalog() {
|
||||
CWorkshopCatalog() {
|
||||
}
|
||||
|
||||
//========== Overridden methods
|
||||
|
||||
@@ -34,7 +34,7 @@ public enum VCardDesigner implements IVDoc<CCardDesigner> {
|
||||
.build();
|
||||
|
||||
//========== Constructor
|
||||
private VCardDesigner() {
|
||||
VCardDesigner() {
|
||||
}
|
||||
|
||||
public FLabel getBtnSaveCard() {
|
||||
|
||||
@@ -35,7 +35,7 @@ public enum VCardScript implements IVDoc<CCardScript> {
|
||||
private final Style error;
|
||||
|
||||
//========== Constructor
|
||||
private VCardScript() {
|
||||
VCardScript() {
|
||||
txtScript.setEditable(true);
|
||||
txtScript.setFocusable(true);
|
||||
doc = new DefaultStyledDocument();
|
||||
|
||||
@@ -36,7 +36,7 @@ public enum VWorkshopCatalog implements IVDoc<CWorkshopCatalog> {
|
||||
private final CDetailPicture cDetailPicture = new CDetailPicture();
|
||||
|
||||
//========== Constructor
|
||||
private VWorkshopCatalog() {
|
||||
VWorkshopCatalog() {
|
||||
this.cardManager = new CardManager(cDetailPicture, true, false);
|
||||
this.cardManager.setCaption("Catalog");
|
||||
final Iterable<PaperCard> allCards = Iterables.concat(FModel.getMagicDb().getCommonCards(), FModel.getMagicDb().getVariantCards());
|
||||
|
||||
@@ -36,7 +36,7 @@ public enum FAbsolutePositioner {
|
||||
|
||||
private final JPanel panel = new JPanel();
|
||||
|
||||
private FAbsolutePositioner() {
|
||||
FAbsolutePositioner() {
|
||||
panel.setOpaque(false);
|
||||
panel.setLayout(null);
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ public class FComboBox<E> extends SkinnedComboBox<E> implements IComboBox<E> {
|
||||
RIGHT (SwingConstants.RIGHT),
|
||||
CENTER (SwingConstants.CENTER);
|
||||
private int value;
|
||||
private TextAlignment(final int value) { this.value = value; }
|
||||
TextAlignment(final int value) { this.value = value; }
|
||||
public int getInt() { return value; }
|
||||
}
|
||||
private TextAlignment textAlignment = TextAlignment.LEFT;
|
||||
|
||||
@@ -104,7 +104,7 @@ public class FOptionPane extends FDialog {
|
||||
FTextField txtInput = null;
|
||||
FComboBox<T> cbInput = null;
|
||||
if (inputOptions == null) {
|
||||
txtInput = new FTextField.Builder().text(initialInput.toString()).build();
|
||||
txtInput = new FTextField.Builder().text(initialInput).build();
|
||||
inputField = txtInput;
|
||||
} else {
|
||||
cbInput = new FComboBox<T>(inputOptions);
|
||||
|
||||
@@ -47,7 +47,7 @@ public enum FOverlay {
|
||||
/**
|
||||
* Semi-transparent overlay panel. Should be used with layered panes.
|
||||
*/
|
||||
private FOverlay() {
|
||||
FOverlay() {
|
||||
pnl.setOpaque(false);
|
||||
pnl.setVisible(false);
|
||||
pnl.setFocusCycleRoot(true);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
package forge.toolbox;
|
||||
|
||||
public interface IDisposable {
|
||||
public void dispose();
|
||||
void dispose();
|
||||
}
|
||||
|
||||
@@ -42,7 +42,8 @@ import java.awt.image.BufferedImage;
|
||||
public class FImagePanel extends JPanel {
|
||||
|
||||
// See {@code setAutosizeMode} for descriptions.
|
||||
public enum AutoSizeImageMode {OFF, PANEL, SOURCE};
|
||||
public enum AutoSizeImageMode {OFF, PANEL, SOURCE}
|
||||
|
||||
AutoSizeImageMode autoSizeMode = AutoSizeImageMode.PANEL;
|
||||
|
||||
// The original unscaled, unrotated image.
|
||||
@@ -66,7 +67,7 @@ public class FImagePanel extends JPanel {
|
||||
public FImagePanel() {
|
||||
setOpaque(false);
|
||||
setResizeListener();
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* This timer is used to identify when resizing has finished.
|
||||
@@ -326,7 +327,7 @@ public class FImagePanel extends JPanel {
|
||||
if (newScale != this.imageScale) {
|
||||
isResampleEnabled = true;
|
||||
this.imageScale = newScale;
|
||||
if (newScale == 0) { this.imageScale = 1; };
|
||||
if (newScale == 0) { this.imageScale = 1; }
|
||||
if (this.autoSizeMode == AutoSizeImageMode.SOURCE && newScale > 1) {
|
||||
this.imageScale = 1;
|
||||
}
|
||||
|
||||
@@ -143,7 +143,7 @@ public final class FImageUtil {
|
||||
*/
|
||||
public static int getRotationToNearest(int requestedRotation, int nearestRotation) {
|
||||
// Ensure requested rotation falls within -360..0..360 degree range first.
|
||||
requestedRotation = requestedRotation - (360 * (requestedRotation / (int)360));
|
||||
requestedRotation = requestedRotation - (360 * (requestedRotation / 360));
|
||||
return (int)(Math.rint((double) requestedRotation / nearestRotation) * nearestRotation);
|
||||
}
|
||||
|
||||
|
||||
@@ -71,7 +71,7 @@ public enum CardZoomer {
|
||||
private boolean isMouseWheelEnabled = false;
|
||||
|
||||
// ctr
|
||||
private CardZoomer() {
|
||||
CardZoomer() {
|
||||
lblFlipcard.setIcon(FSkin.getIcon(FSkinProp.ICO_FLIPCARD));
|
||||
setMouseButtonListener();
|
||||
setMouseWheelListener();
|
||||
@@ -81,7 +81,7 @@ public enum CardZoomer {
|
||||
public void setCard(final CardStateView card, final boolean mayFlip) {
|
||||
this.thisCard = card;
|
||||
this.mayFlip = mayFlip;
|
||||
this.isInAltState = card == null ? false : card == card.getCard().getAlternateState();
|
||||
this.isInAltState = card != null && card == card.getCard().getAlternateState();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -36,11 +36,7 @@ public class PhaseLabel extends JLabel {
|
||||
this.addMouseListener(new MouseAdapter() {
|
||||
@Override
|
||||
public void mousePressed(final MouseEvent e) {
|
||||
if (PhaseLabel.this.enabled) {
|
||||
PhaseLabel.this.enabled = false;
|
||||
} else {
|
||||
PhaseLabel.this.enabled = true;
|
||||
}
|
||||
PhaseLabel.this.enabled = !PhaseLabel.this.enabled;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -65,7 +65,7 @@ public enum FView {
|
||||
// Tab overflow is for the +X display for extra tabs.
|
||||
private final JPanel pnlTabOverflow = new JPanel(new MigLayout("insets 0, gap 0, wrap"));
|
||||
|
||||
private FView() {
|
||||
FView() {
|
||||
frmSplash = new SplashFrame();
|
||||
frmDocument.setTitle("Forge: " + BuildInfo.getVersionString());
|
||||
JOptionPane.setRootFrame(frmDocument);
|
||||
|
||||
@@ -282,13 +282,13 @@ public class SimulateMatch {
|
||||
System.out.println(TextUtil.concatNoSpace("End Round - ", String.valueOf(curRound)));
|
||||
}
|
||||
curRound = tourney.getActiveRound();
|
||||
System.out.println("");
|
||||
System.out.println();
|
||||
System.out.println(TextUtil.concatNoSpace("Round ", String.valueOf(curRound) ," Pairings:"));
|
||||
|
||||
for(TournamentPairing pairing : tourney.getActivePairings()) {
|
||||
System.out.println(pairing.outputHeader());
|
||||
}
|
||||
System.out.println("");
|
||||
System.out.println();
|
||||
}
|
||||
|
||||
TournamentPairing pairing = tourney.getNextPairing();
|
||||
@@ -327,7 +327,7 @@ public class SimulateMatch {
|
||||
pairing.setWinner(tp);
|
||||
lastWinner = winner.getName();
|
||||
System.out.println(TextUtil.concatNoSpace("Match Winner - ", lastWinner, "!"));
|
||||
System.out.println("");
|
||||
System.out.println();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ public class TimeLimitedCodeBlock {
|
||||
public static void runWithTimeout(final Runnable runnable, long timeout, TimeUnit timeUnit) throws Exception {
|
||||
runWithTimeout(new Callable<Object>() {
|
||||
@Override
|
||||
public Object call() throws Exception {
|
||||
public Object call() {
|
||||
runnable.run();
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -463,7 +463,7 @@ public abstract class CardPanelContainer extends SkinnedPanel {
|
||||
}
|
||||
}
|
||||
|
||||
public static interface LayoutEventListener {
|
||||
public interface LayoutEventListener {
|
||||
void doingLayout();
|
||||
}
|
||||
|
||||
|
||||
@@ -151,8 +151,7 @@ public class ListCardArea extends FloatingCardArea {
|
||||
for(int i=index+1-(oldIndex>index?1:0); i<cardList.size(); i++) {
|
||||
if (!moveableCards.contains(cardList.get(i))) { bottomMove=false; break; }
|
||||
}
|
||||
if (toBottom && bottomMove) { return true; }
|
||||
return false;
|
||||
return toBottom && bottomMove;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -722,7 +722,7 @@ public class PlayArea extends CardPanelContainer implements CardPanelMouseListen
|
||||
return needLayoutRefresh;
|
||||
}
|
||||
|
||||
private static enum RowType {
|
||||
private enum RowType {
|
||||
Land,
|
||||
Creature,
|
||||
CreatureNonToken,
|
||||
|
||||
@@ -14,12 +14,10 @@ public class BoosterDraft1Test {
|
||||
|
||||
/**
|
||||
* Booster draft_1 test1.
|
||||
*
|
||||
* @throws Exception
|
||||
* the exception
|
||||
*
|
||||
*/
|
||||
@Test(groups = { "UnitTest", "fast" }, timeOut = 1000, enabled = false)
|
||||
public void boosterDraft1Test1() throws Exception {
|
||||
public void boosterDraft1Test1() {
|
||||
final BoosterDraft draft = BoosterDraft.createDraft(LimitedPoolType.Full);
|
||||
if (draft == null) { return; }
|
||||
|
||||
|
||||
@@ -18,13 +18,9 @@ public class ActionPreCondition {
|
||||
throw new IllegalStateException( "Mock action " + this + " can only trigger during turn " + requiredTurn + " but it is already turn " + game.getPhaseHandler().getTurn() );
|
||||
}
|
||||
}
|
||||
|
||||
if( requiredPhaseType != null && requiredPhaseType != game.getPhaseHandler().getPhase() ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
return requiredPhaseType == null || requiredPhaseType == game.getPhaseHandler().getPhase();
|
||||
}
|
||||
|
||||
public ActionPreCondition turn( int turn ) {
|
||||
requiredTurn = turn;
|
||||
|
||||
@@ -10,7 +10,7 @@ public class DeclareBlockersAction extends BasePlayerAction {
|
||||
|
||||
public DeclareBlockersAction( PlayerSpecification player ) {
|
||||
super( player );
|
||||
blockingAssignments = ArrayListMultimap.<CardSpecification, CardSpecification>create();
|
||||
blockingAssignments = ArrayListMultimap.create();
|
||||
}
|
||||
|
||||
public DeclareBlockersAction block( CardSpecification attacker, CardSpecification blocker ) {
|
||||
|
||||
@@ -19,12 +19,10 @@ import java.io.IOException;
|
||||
public class FModelTest {
|
||||
/**
|
||||
* Set up before each test, creating a default model.
|
||||
*
|
||||
* @throws FileNotFoundException
|
||||
* indirectly
|
||||
*
|
||||
*/
|
||||
@BeforeTest
|
||||
public final void setUp() throws FileNotFoundException {
|
||||
public final void setUp() {
|
||||
// this.model = new FModel();
|
||||
}
|
||||
|
||||
@@ -61,12 +59,10 @@ public class FModelTest {
|
||||
|
||||
/**
|
||||
* Test getVersion.
|
||||
*
|
||||
* @throws FileNotFoundException
|
||||
* if something is really wrong
|
||||
*
|
||||
*/
|
||||
@Test(enabled = false)
|
||||
public final void test_getVersion() throws FileNotFoundException {
|
||||
public final void test_getVersion() {
|
||||
final String version = BuildInfo.getVersionString();
|
||||
|
||||
Assert.assertEquals(version, "GIT", "version is default");
|
||||
@@ -74,12 +70,10 @@ public class FModelTest {
|
||||
|
||||
/**
|
||||
* Test getPreferences.
|
||||
*
|
||||
* @throws FileNotFoundException
|
||||
* indirectly
|
||||
*
|
||||
*/
|
||||
@Test(enabled = false)
|
||||
public final void test_getPreferences() throws FileNotFoundException {
|
||||
public final void test_getPreferences() {
|
||||
final ForgePreferences prefs = FModel.getPreferences();
|
||||
Assert.assertNotNull(prefs, "prefs instance is not null");
|
||||
}
|
||||
|
||||
@@ -218,13 +218,13 @@ public class PlanarConquestGeneraterGA extends AbstractGeneticAlgorithm<Deck> {
|
||||
System.out.println(TextUtil.concatNoSpace("End Round - ", String.valueOf(curRound)));
|
||||
}
|
||||
curRound = tourney.getActiveRound();
|
||||
System.out.println("");
|
||||
System.out.println();
|
||||
System.out.println(TextUtil.concatNoSpace("Round ", String.valueOf(curRound) ," Pairings:"));
|
||||
|
||||
for(TournamentPairing pairing : tourney.getActivePairings()) {
|
||||
System.out.println(pairing.outputHeader());
|
||||
}
|
||||
System.out.println("");
|
||||
System.out.println();
|
||||
}
|
||||
|
||||
TournamentPairing pairing = tourney.getNextPairing();
|
||||
|
||||
360
forge-gui/res/languages/de-DE.properties
Normal file
360
forge-gui/res/languages/de-DE.properties
Normal file
@@ -0,0 +1,360 @@
|
||||
language.name=Deutsch (DE)
|
||||
#SplashScreen.java
|
||||
splash.loading.examining-cards=Lade Karten, durchsuche Verzeichnis
|
||||
splash.loading.cards-folders=Lade Karten aus Verzeichnissen
|
||||
splash.loading.cards-archive=Lade Karten aus Archiv
|
||||
splash.loading.decks=Lade Decks...
|
||||
#VSubmenuPreferences.java
|
||||
Preferences=Einstellungen
|
||||
btnReset=Alles zurücksetzen
|
||||
btnDeleteMatchUI=Spiel-Layout zurücksetzen
|
||||
btnDeleteEditorUI=Editor-Layout zurücksetzen
|
||||
btnDeleteWorkshopUI=Workshop-Layout zurücksetzen
|
||||
btnUserProfileUI=Öffne Benutzer-Verzeichnis
|
||||
btnContentDirectoryUI=Öffne Daten-Verzeichnis
|
||||
btnResetJavaFutureCompatibilityWarnings=Java-Kompatibilitätswarnung zurücksetzen
|
||||
btnClearImageCache= Clear Image Cache
|
||||
btnTokenPreviewer= Token Previewer
|
||||
btnCopyToClipboard=In Zwischenablage kopieren
|
||||
cbpSelectLanguage=Language
|
||||
nlSelectLanguage=Select Language (Excluded Game part. Still a work in progress) (RESTART REQUIRED)
|
||||
cbRemoveSmall=Entferne kleine Kreaturen
|
||||
cbCardBased=Nutze kartenabhängige Deckerstellung
|
||||
cbSingletons=Singleton Modus
|
||||
cbRemoveArtifacts=Entferne Artefakte
|
||||
cbAnte=Spiele um Ante
|
||||
cbAnteMatchRarity=Passe Ante-Seltenheit an
|
||||
cbEnableAICheats=KI darf betrügen
|
||||
cbManaBurn=Manabrand
|
||||
cbManaLostPrompt=Bestätige Leeren des Manapools
|
||||
cbDevMode=Entwicklermodus
|
||||
cbLoadCardsLazily=Lade Kartenskripte verzögert
|
||||
cbLoadHistoricFormats=Aktiviere historische Formate
|
||||
cbWorkshopSyntax=Workshop Syntax Checker
|
||||
cbEnforceDeckLegality=Deckkonformität
|
||||
cbPerformanceMode=Performance Modus
|
||||
cbFilteredHands=Alternative Starthand
|
||||
cbImageFetcher=Lade automatisch fehlende Kartenbilder
|
||||
cbCloneImgSource=Klone zeigen eigenes Kartenbild
|
||||
cbScaleLarger=Skaliere Bilder größer
|
||||
cbRenderBlackCardBorders=Zeige schwarzen Rand
|
||||
cbLargeCardViewers=Nutze große Kartenansicht
|
||||
cbSmallDeckViewer=Nutze kleine Kartenansicht
|
||||
cbDisplayFoil=Zeige Foil-Overlay
|
||||
cbRandomFoil=zufällige Foil-Karten
|
||||
cbRandomArtInPools=zufällige Kartenbilder in erzeugten Kartensammlungen
|
||||
cbEnableSounds=Ton aktiviert
|
||||
cbEnableMusic=Musik aktiviert
|
||||
cbAltSoundSystem=Nutze alternatives Sound-System
|
||||
cbUiForTouchScreen=Verbessere Oberfläche für Touchscreens
|
||||
cbTimedTargOverlay=Aktiviere Zielpfeiloptimierung
|
||||
cbCompactMainMenu=Nutze kompakteres Seitenmenü
|
||||
cbDetailedPaymentDesc=Spruchbeschreibung in Bestätigungsfenster
|
||||
cbPromptFreeBlocks=Freies Block-Management
|
||||
cbPauseWhileMinimized=Pausiere wenn minimiert
|
||||
cbCompactPrompt=Kompaktes Bestätigungsfenster
|
||||
cbEscapeEndsTurn=Nutze Escape für Zugende
|
||||
cbPreselectPrevAbOrder=Nutze letzte Reihenfolge von Fähigkeiten
|
||||
cbHideReminderText=Verstecke Erinnerungstext
|
||||
cbOpenPacksIndiv=Öffne Packs einzeln
|
||||
cbTokensInSeparateRow=Zeige Spielsteine in extra Reihe
|
||||
cbStackCreatures=Staple Kreaturen
|
||||
cbFilterLandsByColorId=Sortiere Länder nach Farben für aktivierte Fähigkeiten
|
||||
cbShowStormCount=Zeige Sturmzähler im Bestätigungsfenster
|
||||
cbRemindOnPriority=Optischer Alarm bei Erhalt der Priorität
|
||||
cbUseSentry=Sende automatisch Fehlerberichte
|
||||
cbpGameLogEntryType=Spielberichtsumfang
|
||||
cbpCloseAction=Beenden
|
||||
cbpDefaultFontSize=Standard Schriftgröße
|
||||
cbpAiProfiles=KI Persönlichkeit
|
||||
cbpDisplayCurrentCardColors=Zeige detailierte Kartenfarben
|
||||
cbpAutoYieldMode=Automatische Bestätigung
|
||||
cbpCounterDisplayType=Markeranzeige Art
|
||||
cbpCounterDisplayLocation=Markeranzeige Ort
|
||||
cbpGraveyardOrdering=Genaue Reihenfolge im Friedhof einhalten
|
||||
Troubleshooting=Troubleshooting
|
||||
GeneralConfiguration=Allgemeine Einstellungen
|
||||
nlPlayerName=Name unter welchem du beim Spielen geführt wirst.
|
||||
nlCompactMainMenu=Aktiviere, um im Seitenmenü platzsparend immer nur eine Menügruppe anzeigen zu lassen. (Erfordert Neustart)
|
||||
nlUseSentry=Aktiviere, um automatische Fehlerberichte an die Entwickler zu senden.
|
||||
GamePlay=Spiel
|
||||
nlpAiProfiles=Wähle die Spielweise deines KI-Gegners.
|
||||
nlAnte=Entscheidet, ob um einen Einsatz (Ante) gespielt wird.
|
||||
nlAnteMatchRarity=Versucht den Spieleinsatz für alle Spieler ungefähr gleich zu halten.
|
||||
nlEnableAICheats=Erlaubt es der KI zu betrügen um Vorteile zu erlangen. Sofern die spezielle KI dies im Skript unterstützt.
|
||||
nlManaBurn=Spiele mit Manabrand (wurde mit M10 aus den Regeln entfernt).
|
||||
nlManaLostPrompt=Aktiviere, um vor Leerung des Manapools eine Warnung zu erhalten.
|
||||
nlEnforceDeckLegality=Erzwingt eine Deck-Konformität zum gewählten Format (minimale Deckgröße, Anzahl pro Karte im Deck, usw.).
|
||||
nlPerformanceMode=Schalten zusätzlich Prüfungen auf statische Fähigkeiten ab, um das Spiel zu beschleunigen. Warnung: Kann Probleme mit 'Aufblitzen' bei Karten von KI-Gegner verursachen!
|
||||
nlFilteredHands=Erzeugt zwei Starthände, und behält die, welche am nächsten an der duchschnittlichen Länderanzahl im Deck ist. (Erfordert Neustart)
|
||||
nlCloneImgSource=Zeige das originale Kartenbild des Klones statt der geklonten Karte.
|
||||
nlPromptFreeBlocks=Wenn ein neuer Block nichts kosten würde, dann wird er automatisch bezahlt.
|
||||
nlPauseWhileMinimized=Wenn aktiviert, pausiert Forge im minimierten Zustand (betrifft hauptsächlich KI gegen KI).
|
||||
nlEscapeEndsTurn=Wenn aktiviert, funktioniert ESCape als Alternative um den Zug zu beenden.
|
||||
nlDetailedPaymentDesc=Wenn aktiviert, werden deailierte Spruch-/Fähigkeitsbeschreibungen beim Auswählen von Zielen bzw. Bezahlen von Kosten angezeigt.
|
||||
nlShowStormCount=Wenn aktiviert,wird ein Sturmzähler angezeigt.
|
||||
nlRemindOnPriority=Wenn aktiviert, dann blinkt der Auswahlbereich des Spielers bei Erhalt der Priorität.
|
||||
nlPreselectPrevAbOrder=Wenn aktiviert, wird die letzte genutze Reihenfolge von Fähigkeiten im Auswahlfenster vorbelegt.
|
||||
nlpGraveyardOrdering=Entscheidet, wann auf die Reihenfolge, in welcher Karten auf den Friedhof wandern, geachtet wird. (Niemals, immer oder nur wenn bestimmte Karten es nötig machen.)
|
||||
nlpAutoYieldMode=Definiert die Ebene der automatischen Bestätigung (pro Fähigkeit oder pro einzelner Karte).
|
||||
RandomDeckGeneration=Zufällige Deck-Erstellung
|
||||
nlRemoveSmall=Verhindert 1/1- und 0/X-Kreaturen in erzeugten Decks
|
||||
nlSingletons=Verhindert Duplikate von Nicht-Landkarten in erzeugten Decks
|
||||
nlRemoveArtifacts=Verhindert Artefakte in erzeugten Decks
|
||||
nlCardBased=Erzeugt stimmigere zufällig erzeugte Decks (Erfordert Neustart)
|
||||
DeckEditorOptions=Deck Editor Optionen
|
||||
nlFilterLandsByColorId=Macht es einfacher die richtigen Länder zu finden, wenn Farbfilter genutzt werden.
|
||||
AdvancedSettings=Erweiterte Optionen
|
||||
nlDevMode=Ativiert ein Menü mit Funktionen, welche das Testen vereinfachen.
|
||||
nlWorkshopSyntax=Aktiviert den Syntaxcheck für Kartenskripte im Workshop. Hinweis: Befindet sich noch in der Testphase!
|
||||
nlGameLogEntryType=Steuert den Umfang der Daten in der Protokolldatei. Sortiert vom geringsten zum gröten Umfang.
|
||||
nlCloseAction=Steuert was passiert, wenn X oben rechts gedückt wird.
|
||||
nlLoadCardsLazily=Wenn aktiviert, lädt Forge Kartenscripte erst wenn sie benötigt werden, nicht bei Programmstart. Warnung: Experimental!!!
|
||||
nlLoadHistoricFormats=Wenn aktiviert, lädt Forge auch ältere Spielformate. Verlängert den Programmstart.
|
||||
GraphicOptions=Grafik Optionen
|
||||
nlDefaultFontSize=Die Standardschriftgröße. Alle Schriftelemente werden werden relative zu dieser angepaßt. (Erfordert Neustart)
|
||||
nlImageFetcher=Ermöglicht bei bestehender Onlineverbindung das automatisches Nachladen fehlender Kartenbilder.
|
||||
nlDisplayFoil=Zeige FOIL-Karten mit einem optischen FOIL-Effekt.
|
||||
nlRandomFoil=Zeige den FOIL-Effekt bei zufälligen Karten.
|
||||
nlScaleLarger=Erlaubt Kartenbilder größer als ihre originale Größe zu zeigen.
|
||||
nlRenderBlackCardBorders=Erzeuge einen schwarzen Rahmen um die Kartenbilder.
|
||||
nlLargeCardViewers=Macht die Kartenansicht größer, zur besseren Nutzung bei hoher Bildschirmauflösung. Nicht für kleine Bildschirme!
|
||||
nlSmallDeckViewer=Setzt die Kartenansicht auf 800x600 statt auf einen relativen Teil der Bildschirmgröße.
|
||||
nlRandomArtInPools=Nimm zufällige Versionen von Kartenbildern beim Erzeugen von zufälligen Kartensammlungen.
|
||||
nlUiForTouchScreen=Vergrößert einige Elemente der Benutzeroberfläche zu besseren Bedienug auf Touchscreen-Geräten. (Erfordert Neustart)
|
||||
nlCompactPrompt=Entfernt Überschriften und nutzt kleinere Schriftgröße um Bedienfenster kompakter zu machen.
|
||||
nlHideReminderText=Verstecke Erinnerungstext im Kartendetailfenster.
|
||||
nlOpenPacksIndiv=Beim Öffnen von FatPacks und Boosterboxen werden Booster einzeln nacheinander geöffnet.
|
||||
nlTokensInSeparateRow=Zeige Spielsteinein auf dem Spielfeld in einer separaten Reihe unter den Nicht-Spielsteinkreaturen.
|
||||
nlStackCreatures=Stapelt identische Kreaturen auf dem Spielfeld, analog der Länder, Artefakte und Verzauberungen.
|
||||
nlTimedTargOverlay=Aktiviert eine Optimierung des Zielpfeil-Overlays. Nur bei Problemen/Rucklern auf älteren System deaktivieren. Erfordert den Neustart von laufenden Spielen.
|
||||
nlCounterDisplayType=Bestimmt im Spiel die Art der Anzeige von Markern auf Karten. Text-basiert zählt die Marker als Text auf. Bild-basiert zeigte die Marker als Punkte auf den Karten. Hybrid zeigt beides.
|
||||
nlCounterDisplayLocation=Bestimmt die Position des Markertextes auf der Karte.
|
||||
nlDisplayCurrentCardColors=Zeigt eine Übersicht der aktuellen Farbe der Karten im Kartendetailfenster.
|
||||
SoundOptions=Sound Optionen
|
||||
nlEnableSounds=Geräusche während des Spiels
|
||||
nlEnableMusic=Hintergrundmusik während des Spiels
|
||||
nlAltSoundSystem=Nutze alternatives Sound-System (nur nutzen, wenn es Probleme mit fehlenden Geräuschen gibt)
|
||||
KeyboardShortcuts=Tastenkombinationen
|
||||
# VSubmenuAchievements.java
|
||||
Achievements=Erfolge
|
||||
# VSubmenuDownloaders.java
|
||||
btnDownloadSetPics=Bilder(LQ) Sets herunterladen
|
||||
btnDownloadPics=Bilder(LQ) Karten herunterladen
|
||||
btnDownloadQuestImages=Bilder für Quests herunterladen
|
||||
btnDownloadAchievementImages=Bilder für Erfolge herunterladen
|
||||
btnReportBug=Einen Fehler melden
|
||||
btnListImageData=Prüfe Karten- und Bilddaten
|
||||
lblListImageData=Prüfe auf von Forge nicht unterstütze Karten und fehlende Kartenbilder
|
||||
btnImportPictures=Daten importieren
|
||||
btnHowToPlay=Wie man spielt
|
||||
btnDownloadPrices=Kartenpreise herunterladen
|
||||
btnLicensing=Lizenzhinweis
|
||||
lblDownloadPics=Lädt ein Standardbild pro Karte.
|
||||
lblDownloadSetPics=Lädt alle Bilder pro Karte. Eines für jedes Set, in welchem die Karte auftauchte.
|
||||
lblDownloadQuestImages=Lädt die Bilder für den Quest-Modus.
|
||||
lblDownloadAchievementImages=Lädt die Bilder zu den möglichen Erfolgen. Verschönert die Trophäensammlung.
|
||||
lblDownloadPrices=Lädt aktuelle Kartenpreise für den Kartenladen im Spiel.
|
||||
lblYourVersionOfJavaIsTooOld=Deine Java-Version ist leider zu alt.
|
||||
lblPleaseUpdateToTheLatestVersionOfJava=Bitte aktualisiere auf die neueste Java-Version.
|
||||
lblYoureRunning=Du nutzt
|
||||
lblYouNeedAtLeastJavaVersion=Du brauchst mindestens die Version 1.8.0_101.
|
||||
lblImportPictures=Importiere Daten aus einem lokalen Verzeichnis.
|
||||
lblReportBug=Etwas funktioniert nicht?
|
||||
lblHowToPlay=Spielregeln
|
||||
lblLicensing=Rechtliche Hinweise
|
||||
ContentDownloaders=Inhalte herunterladen
|
||||
ReleaseNotes=Versions Hinweis
|
||||
# CSubmenuPreferences.java
|
||||
CantChangeDevModeWhileNetworkMath=Umstellen des DEV_MODEs ist während eines Netzwerkspiles ist nicht möglich!
|
||||
CompatibilityWarningsReEnabled=Kompatibilitätswarnungen reaktiviert!
|
||||
AresetForgeSettingsToDefault=Dies wird alle Standardeinstellungen wiederherstellen und Forge neu starten.\n\nZurücksetzen und neu starten?
|
||||
TresetForgeSettingsToDefault=Einstellungen zurücksetzen
|
||||
AresetDeckEditorLayout=Dies wird das Deck-Editor-Layout zurücksetzen.\nAlle Reiter im Standard wiederhergestellt.\n\nLayout zurücksetzen?
|
||||
TresetDeckEditorLayout=Deck-Editor-Layout zurücksetzen
|
||||
OKresetDeckEditorLayout=Deck-Editor-Layout wurde zurückgesetzt.
|
||||
AresetWorkshopLayout=Dies wird das Workshop-Layout zurücksetzen.\nAlle Reiter im Standard wiederhergestellt.\n\nLayout zurücksetzen?
|
||||
TresetWorkshopLayout=Workshop-Layout zurücksetzen
|
||||
OKresetWorkshopLayout=Workshop-Layout wurde zurückgesetzt.
|
||||
AresetMatchScreenLayout=Dies wird das Spielfeldlayout zurücksetzen.\nFalls du vorher noch das derzeitige Layout speichern möchtest, nutze bitte Forge->Layout->File->Save Current Layout in einem laufenden Spiel.\n\nSpielfeldlayout zurücksetzen?
|
||||
TresetMatchScreenLayout=Spielfeldlayout zurücksetzen
|
||||
OKresetMatchScreenLayout=Spielfeldlayout wurde zurückgesetzt.
|
||||
#EMenuGroup.java
|
||||
lblSanctionedFormats=gültige Spielformate
|
||||
lblOnlineMultiplayer=Mehrspieler (online)
|
||||
lblQuestMode=Quest-Modus
|
||||
lblPuzzleMode=Rätsel-Modus
|
||||
lblGauntlets=Herausforderungen
|
||||
lblGameSettings=Spieleinstellungen
|
||||
#VLobby.java
|
||||
lblHeaderConstructedMode=Sanctioned Format: Constructed
|
||||
lblGetNewRandomName=Get new random name
|
||||
lbltypeofName=What type of name do you want to generate?
|
||||
lblconfirmName= Would you like to use the name %n, or try again?
|
||||
lblUseThisName=Use this name
|
||||
lblTryAgain=Try Again
|
||||
lblAddAPlayer=Add a Player
|
||||
lblVariants=Variants
|
||||
#VSubmenuConstructed.java
|
||||
lblConstructedMode=Constructed-Modus
|
||||
lblConstructed=Constructed
|
||||
#PlayerPanel.java
|
||||
lblSelectaDeck=Wähle ein Deck
|
||||
lblSelectaSchemeDeck=Wähle Komplottdeck
|
||||
lblSchemeDeckEditor=Komplottdeck-Editor
|
||||
lblSelectaCommanderDeck=Wähle Commanderdeck
|
||||
lblSelectaPlanarDeck=Wähle Weltendeck
|
||||
lblPlanarDeckEditor=Weltendeck-Editor
|
||||
lblSelectaVanguardAvatar=Wähle Vanguard-Avatar
|
||||
lblVanguardAvatar= Vanguard avatar
|
||||
lblDeck=Deck
|
||||
lblSchemeDeck=Komplottdeck
|
||||
lblCommanderDeck=Commanderdeck
|
||||
lblPlanarDeck=Weltendeck
|
||||
lblVanguard=Vanguard
|
||||
lblHuman=Mensch
|
||||
lblAI=KI
|
||||
lblOpen=Öffnen...
|
||||
lblUseSimulation=Nutze Simulation
|
||||
lblGetaNewRandomName=Zufälliger Name
|
||||
lblArchenemy=Erzfeind
|
||||
lblHeroes=Helden
|
||||
lblRemove=Entferne
|
||||
ttlblAvatar=L-Klick: Wähle Avatar. R-Klick: Zufälliger Avatar.
|
||||
lblReady=Fertig
|
||||
lblKick=Rauswerfen
|
||||
lblReallyKick=%s wirklich rauswerfen?
|
||||
#ForgeMenu.java
|
||||
lblRestart=Neustart
|
||||
lblExit=Beenden
|
||||
#LayoutMenu.java
|
||||
lblLayout=Layout
|
||||
lblView=Anzeige
|
||||
lblFile=Datei
|
||||
lblTheme=Thema
|
||||
lblBackgroundImage=Hintergrundbild
|
||||
lblPanelTabs=Kartenreiter
|
||||
lblSaveCurrentLayout=Sichere aktuelles Layout
|
||||
lblRefresh=Aktualisieren
|
||||
lblSetWindowSize=Setze Fenstergröße
|
||||
lblChooseNewWindowSize=Wähle neue Fenstergröße
|
||||
lblFullScreen=Vollbild
|
||||
lblExitFullScreen=Vollbild verlassen
|
||||
#HelpMenu.java
|
||||
lblHelp=Hilfe
|
||||
lblAboutForge=Über Forge
|
||||
lblTroubleshooting=Fehlerbehebung
|
||||
lblArticles=Artikel
|
||||
lblGettingStarted=Starthilfe
|
||||
lblHowtoPlay=Wie man spielt
|
||||
lblForgeLicense=Forge Lizenzhinweis
|
||||
lblReleaseNotes=Versionshinweise
|
||||
#GameMenu.java
|
||||
lblGame=Spiel
|
||||
lblSoundEffects=Geräusche
|
||||
lblUndo=Rückgängig
|
||||
lblAlphaStrike=Alle angreifen
|
||||
lblEndTurn=Zug beenden
|
||||
lblTargetingArcs=Zielpfeile
|
||||
lblOff=Aus
|
||||
lblCardMouseOver=Bei Zeiger über Karte
|
||||
lblAlwaysOn=Immer an
|
||||
lblAutoYields=Automatische Bestätigung
|
||||
lblDeckList=Deckliste
|
||||
lblClose=Schließen
|
||||
lblExitForge=Forge verlassen
|
||||
#ConstructedGameMenu.java
|
||||
lblSelectAvatarFor=Wähle Avatar für %s
|
||||
lblRemoveSmallCreatures=Entferne 1/1- und 0/X-Kreaturen aus erzeugten Decks
|
||||
lblRemoveArtifacts=Entferne Artefakte aus erzeugten Decks.
|
||||
PreventNonLandDuplicates=Verhindere doppelte Nicht-Landkarten in erzeugten Decks.
|
||||
#PlayerPanel.java
|
||||
lblName=Name
|
||||
lblTeam=Team
|
||||
#InputConfirmMulligan.java
|
||||
lblKeep=Behalten
|
||||
lblYouAreGoingFirst=Du beginnst!
|
||||
lblIsGoingFirst=beginnt.
|
||||
lblYouAreGoing=Du startest
|
||||
lblMulligan=Mulligan
|
||||
lblDoYouWantToKeepYourHand=Starthand behalten?
|
||||
lblOk=OK
|
||||
lblReset=Zurück
|
||||
lblAuto=Auto
|
||||
#VAssignDamage.java
|
||||
lbLAssignDamageDealtBy=Verteile Schaden verursacht von %s
|
||||
lblLClickDamageMessage=Linksklick: Verteile 1 Schaden. (Linksklick + STRG): Verteile Schaden bis max. tödlich
|
||||
lblRClickDamageMessage=Rechtsklick: 1 Schaden zurücknehmen. (Rechtsklick + STRG): Allen Schaden zurücknehmen.
|
||||
lblTotalDamageText=Gesamtschaden: Unbekannt
|
||||
lblAssignRemainingText=Verteile verbleibenden Schaden unter tödlich Verwundeten
|
||||
lblLethal=Tödlich
|
||||
#KeyboardShortcuts.java
|
||||
lblSHORTCUT_SHOWSTACK=Duell: Zeige Stapelfenster
|
||||
lblSHORTCUT_SHOWCOMBAT=Duell: Zeige Kampffenster
|
||||
lblSHORTCUT_SHOWCONSOLE=Duell: Zeige Konsolenfenster
|
||||
lblSHORTCUT_SHOWDEV=Duell: Zeige Entwicklerfenster
|
||||
lblSHORTCUT_CONCEDE=Duell: Spiel aufgeben
|
||||
lblSHORTCUT_ENDTURN=Duell: Priorität bis Zugende oder nächstem Ereignis abgeben
|
||||
lblSHORTCUT_ALPHASTRIKE=Duell: Alpha Strike (Mit allem angreifen)
|
||||
lblSHORTCUT_SHOWTARGETING=Duell: Zielpfeile umschalten
|
||||
lblSHORTCUT_AUTOYIELD_ALWAYS_YES=Duel: Auto-Bestätigen von Fähigkeiten auf dem Stapel (immer Ja)
|
||||
lblSHORTCUT_AUTOYIELD_ALWAYS_NO=Duel: Auto-Bestätigen von Fähigkeiten auf dem Stapel (immer Nein)
|
||||
lblSHORTCUT_MACRO_RECORD=Duell: Aktion-Abfolge-Makro aufnehmen
|
||||
lblSHORTCUT_MACRO_NEXT_ACTION=Duel: führe nächste Aktion im gespeicherten Makro aus
|
||||
lblSHORTCUT_CARD_ZOOM=Duell: Zoome ausgewählte Karte
|
||||
#VSubmenuDraft.java
|
||||
lblBoosterDraft= Booster Draft
|
||||
lblHeaderBoosterDraft=Sanctioned Format: Booster Draft
|
||||
lblPlayAnOpponent=Play an opponent
|
||||
lblPlayAll7opponents=Play all 7 opponents
|
||||
lblBuildorselectadeck=Build or select a deck
|
||||
lblDraftText1=In Draft mode, three booster packs are rotated around eight players.
|
||||
lblDraftText2=Build a deck from the cards you choose. The AI will do the same.
|
||||
lblDraftText3=Then, play against one or all of the AI opponents.
|
||||
lblNewBoosterDraftGame=New Booster Draft Game
|
||||
lblDraftDecks=Draft Decks
|
||||
#CSubmenuDraft.java
|
||||
lblNoDeckSelected=No deck selected for human.\n(You may need to build a new deck)
|
||||
lblNoDeck=No Deck
|
||||
lblChooseDraftFormat=Choose Draft Format
|
||||
#VSubmenuSealed.java
|
||||
lblSealedDeck=Sealed Deck
|
||||
lblSealedDecks=Sealed Decks
|
||||
lblHeaderSealed=Sanctioned Format: Sealed Deck
|
||||
lblSealedText1=Select a game, or build a new one
|
||||
lblSealedText2=In Sealed mode, you build a deck from booster packs (maximum 10).
|
||||
lblSealedText3=Build a deck from the cards you receive. A number of AI opponents will do the same.
|
||||
lblSealedText4=Then, you may play against each of the AI opponents, or one of the opponents.
|
||||
btnBuildNewSealedDeck=Build New Sealed Deck
|
||||
#FDeckChooser.java
|
||||
lblViewDeck=View Deck
|
||||
lblRandomDeck=Random Deck
|
||||
#GameType.java
|
||||
lblSealed=Sealed
|
||||
lblDraft=Draft
|
||||
lblWinston=Winston
|
||||
lblGauntlet=Gauntlet
|
||||
lblTournament=Tournament
|
||||
lblQuest=Quest
|
||||
lblQuestDraft=QuestDraft
|
||||
lblPlanarConquest=PlanarConquest
|
||||
lblPuzzle=Puzzle
|
||||
lblPuzzleDesc=Solve a puzzle from the given game state
|
||||
lblDeckManager=
|
||||
lblVanguardDesc=Each player has a special \"Avatar\" card that affects the game.
|
||||
lblCommandesDesc=Each player has a legendary \"General\" card which can be cast at any time and determines deck colors.
|
||||
lblTinyLeaders=Tiny Leaders
|
||||
lblTinyLeadersDesc=Each player has a legendary \"General\" card which can be cast at any time and determines deck colors. Each card must have CMC less than 4.
|
||||
lblBrawl=Brawl
|
||||
lblBrawlDesc=Each player has a legendary \"General\" card which can be cast at any time and determines deck colors. Only cards legal in Standard may be used.
|
||||
lblPlaneswalker=Planeswalker
|
||||
lblPlaneswalkerDesc=Each player has a Planeswalker card which can be cast at any time.
|
||||
lblPlanechase=Planechase
|
||||
lblPlanechaseDesc=Plane cards apply global effects. The Plane card changes when a player rolls \"Planeswalk\" on the planar die.
|
||||
lblArchenemyDesc=One player is the Archenemy and fights the other players by playing Scheme cards.
|
||||
lblArchenemyRumble=
|
||||
lblArchenemyRumbleDesc=All players are Archenemies and can play Scheme cards.
|
||||
lblMomirBasic=Momir Basic
|
||||
lblMomirBasicDesc=Each player has a deck containing 60 basic lands and the Momir Vig avatar.
|
||||
lblMoJhoSto=MoJhoSto
|
||||
lblMoJhoStoDesc=Each player has a deck containing 60 basic lands and the Momir Vig, Jhoira of the Ghitu, and Stonehewer Giant avatars.
|
||||
@@ -16,6 +16,8 @@ btnResetJavaFutureCompatibilityWarnings = Reset Java Compatibility Warnings
|
||||
btnClearImageCache = Clear Image Cache
|
||||
btnTokenPreviewer = Token Previewer
|
||||
btnCopyToClipboard= Copy to Clipboard
|
||||
cbpSelectLanguage=Language
|
||||
nlSelectLanguage=Select Language (Excluded Game part. Still a work in progress) (RESTART REQUIRED)
|
||||
cbRemoveSmall = Remove Small Creatures
|
||||
cbCardBased = Include Card-based Deck Generation
|
||||
cbSingletons = Singleton Mode
|
||||
@@ -143,6 +145,7 @@ btnDownloadQuestImages = Download Quest Images
|
||||
btnDownloadAchievementImages = Download Achievement Images
|
||||
btnReportBug =Report a Bug
|
||||
btnListImageData =Audit Card and Image Data
|
||||
lblListImageData = Audit cards not implemented by Forge and missing card images
|
||||
btnImportPictures = Import Data
|
||||
btnHowToPlay = How To Play
|
||||
btnDownloadPrices = Download Card Prices
|
||||
@@ -154,11 +157,10 @@ lblDownloadAchievementImages = Download achievement images to really make your t
|
||||
lblDownloadPrices = Download up-to-date price list for in-game card shops.
|
||||
lblYourVersionOfJavaIsTooOld = Your version of Java is too old to use the content downloaders.
|
||||
lblPleaseUpdateToTheLatestVersionOfJava = Please update to the latest version of Java
|
||||
lblYoureRunning = You're running
|
||||
lblYoureRunning = You're running
|
||||
lblYouNeedAtLeastJavaVersion = You need at least version 1.8.0_101.
|
||||
lblImportPictures = Import data from a local directory.
|
||||
lblReportBug = Something broken?
|
||||
lblListImageData = Audit cards not implemented by Forge and missing card images
|
||||
lblHowToPlay = Rules of the Game.
|
||||
lblLicensing = Forge legal.
|
||||
ContentDownloaders = Content Downloaders
|
||||
@@ -184,6 +186,15 @@ lblQuestMode = Quest Mode
|
||||
lblPuzzleMode = Puzzle Mode
|
||||
lblGauntlets = Gauntlets
|
||||
lblGameSettings = Game Settings
|
||||
#VLobby.java
|
||||
lblHeaderConstructedMode=Sanctioned Format: Constructed
|
||||
lblGetNewRandomName=Get new random name
|
||||
lbltypeofName=What type of name do you want to generate?
|
||||
lblconfirmName= Would you like to use the name %n, or try again?
|
||||
lblUseThisName=Use this name
|
||||
lblTryAgain=Try Again
|
||||
lblAddAPlayer=Add a Player
|
||||
lblVariants=Variants
|
||||
#VSubmenuConstructed.java
|
||||
lblConstructedMode = Constructed Mode
|
||||
lblConstructed = Constructed
|
||||
@@ -195,6 +206,7 @@ lblSelectaCommanderDeck=Select a Commander deck
|
||||
lblSelectaPlanarDeck = Select a planar deck
|
||||
lblPlanarDeckEditor = Planar Deck Editor
|
||||
lblSelectaVanguardAvatar = Select a Vanguard avatar
|
||||
lblVanguardAvatar = Vanguard avatar
|
||||
lblDeck=Deck
|
||||
lblSchemeDeck=Scheme Deck
|
||||
lblCommanderDeck= Commander Deck
|
||||
@@ -205,7 +217,7 @@ lblAI=AI
|
||||
lblOpen=Open
|
||||
lblUseSimulation=Use Simulation
|
||||
lblGetaNewRandomName=Get a new random name
|
||||
lblArchenemy=Archenemy
|
||||
lblArchenemy=Archenemy
|
||||
lblHeroes=Heroes
|
||||
lblRemove=Remove
|
||||
ttlblAvatar=L-click: Select avatar. R-click: Randomize avatar.
|
||||
@@ -289,4 +301,60 @@ lblSHORTCUT_AUTOYIELD_ALWAYS_YES=Match: auto-yield ability on stack (Always Yes)
|
||||
lblSHORTCUT_AUTOYIELD_ALWAYS_NO=Match: auto-yield ability on stack (Always No)
|
||||
lblSHORTCUT_MACRO_RECORD=Match: record a macro sequence of actions
|
||||
lblSHORTCUT_MACRO_NEXT_ACTION=Match: execute next action in a recorded macro
|
||||
lblSHORTCUT_CARD_ZOOM=Match: zoom the currently selected card
|
||||
lblSHORTCUT_CARD_ZOOM=Match: zoom the currently selected card
|
||||
#VSubmenuDraft.java
|
||||
lblBoosterDraft= Booster Draft
|
||||
lblHeaderBoosterDraft=Sanctioned Format: Booster Draft
|
||||
lblPlayAnOpponent=Play an opponent
|
||||
lblPlayAll7opponents=Play all 7 opponents
|
||||
lblBuildorselectadeck=Build or select a deck
|
||||
lblDraftText1=In Draft mode, three booster packs are rotated around eight players.
|
||||
lblDraftText2=Build a deck from the cards you choose. The AI will do the same.
|
||||
lblDraftText3=Then, play against one or all of the AI opponents.
|
||||
lblNewBoosterDraftGame=New Booster Draft Game
|
||||
lblDraftDecks=Draft Decks
|
||||
#CSubmenuDraft.java
|
||||
lblNoDeckSelected=No deck selected for human.\n(You may need to build a new deck)
|
||||
lblNoDeck=No Deck
|
||||
lblChooseDraftFormat=Choose Draft Format
|
||||
#VSubmenuSealed.java
|
||||
lblSealedDeck=Sealed Deck
|
||||
lblSealedDecks=Sealed Decks
|
||||
lblHeaderSealed=Sanctioned Format: Sealed Deck
|
||||
lblSealedText1=Select a game, or build a new one
|
||||
lblSealedText2=In Sealed mode, you build a deck from booster packs (maximum 10).
|
||||
lblSealedText3=Build a deck from the cards you receive. A number of AI opponents will do the same.
|
||||
lblSealedText4=Then, you may play against each of the AI opponents, or one of the opponents.
|
||||
btnBuildNewSealedDeck=Build New Sealed Deck
|
||||
#FDeckChooser.java
|
||||
lblViewDeck=View Deck
|
||||
lblRandomDeck=Random Deck
|
||||
#GameType.java
|
||||
lblSealed=Sealed
|
||||
lblDraft=Draft
|
||||
lblWinston=Winston
|
||||
lblGauntlet=Gauntlet
|
||||
lblTournament=Tournament
|
||||
lblQuest=Quest
|
||||
lblQuestDraft=QuestDraft
|
||||
lblPlanarConquest=PlanarConquest
|
||||
lblPuzzle=Puzzle
|
||||
lblPuzzleDesc=Solve a puzzle from the given game state
|
||||
lblDeckManager=
|
||||
lblVanguardDesc=Each player has a special \"Avatar\" card that affects the game.
|
||||
lblCommandesDesc=Each player has a legendary \"General\" card which can be cast at any time and determines deck colors.
|
||||
lblTinyLeaders=Tiny Leaders
|
||||
lblTinyLeadersDesc=Each player has a legendary \"General\" card which can be cast at any time and determines deck colors. Each card must have CMC less than 4.
|
||||
lblBrawl=Brawl
|
||||
lblBrawlDesc=Each player has a legendary \"General\" card which can be cast at any time and determines deck colors. Only cards legal in Standard may be used.
|
||||
lblPlaneswalker=Planeswalker
|
||||
lblPlaneswalkerDesc=Each player has a Planeswalker card which can be cast at any time.
|
||||
lblPlanechase =Planechase
|
||||
lblPlanechaseDesc=Plane cards apply global effects. The Plane card changes when a player rolls \"Planeswalk\" on the planar die.
|
||||
lblArchenemyDesc=One player is the Archenemy and fights the other players by playing Scheme cards.
|
||||
lblArchenemyRumble=
|
||||
lblArchenemyRumbleDesc=All players are Archenemies and can play Scheme cards.
|
||||
lblMomirBasic=Momir Basic
|
||||
lblMomirBasicDesc=Each player has a deck containing 60 basic lands and the Momir Vig avatar.
|
||||
lblMoJhoSto=MoJhoSto
|
||||
lblMoJhoStoDesc=Each player has a deck containing 60 basic lands and the Momir Vig, Jhoira of the Ghitu, and Stonehewer Giant avatars.
|
||||
|
||||
360
forge-gui/res/languages/es-es.properties
Normal file
360
forge-gui/res/languages/es-es.properties
Normal file
@@ -0,0 +1,360 @@
|
||||
language.name=Spanish (ES)
|
||||
#SplashScreen.java
|
||||
splash.loading.examining-cards=Cargando cartas, examinando carpeta
|
||||
splash.loading.cards-folders=Cargando cartas de carpetas
|
||||
splash.loading.cards-archive=Cargando cartas del archivo
|
||||
splash.loading.decks=Cargando Mazos...
|
||||
#VSubmenuPreferences.java
|
||||
Preferences=Preferencias
|
||||
btnReset=Restablecer la configuración predeterminada
|
||||
btnDeleteMatchUI=Restablecer diseño de la pantalla de Juego
|
||||
btnDeleteEditorUI=Restablecer diseño de la pantalla del Editor
|
||||
btnDeleteWorkshopUI=Restablecer diseño del Workshop
|
||||
btnUserProfileUI=Abrir directorio de usuario
|
||||
btnContentDirectoryUI=Abrir directorio del contenido
|
||||
btnResetJavaFutureCompatibilityWarnings=Restablecer las advertencias de compatibilidad de Java
|
||||
btnClearImageCache=
|
||||
btnTokenPreviewer=
|
||||
btnCopyToClipboard=Copy to Clipboard
|
||||
cbpSelectLanguage=Language
|
||||
nlSelectLanguage=Select Language (Excluded math part. Still a work in progress) (RESTART REQUIRED)
|
||||
cbRemoveSmall=Eliminar Pequeñas Criaturas
|
||||
cbCardBased=Incluye la generación de mazo basado en tarjeta
|
||||
cbSingletons=Mode Singleton
|
||||
cbRemoveArtifacts=Quitar artefactos
|
||||
cbAnte=Jugar con apuesta (Ante)
|
||||
cbAnteMatchRarity=Igualar rareza en apuesta (Ante)
|
||||
cbEnableAICheats=Permitir engaños de la IA
|
||||
cbManaBurn=Quemadura de maná
|
||||
cbManaLostPrompt=Avisar antes de vaciar el maná en la reserva al pasar la fase
|
||||
cbDevMode=Modo Desarrollador
|
||||
cbLoadCardsLazily=Cargar Scripts de Cartas modo perezoso
|
||||
cbLoadHistoricFormats=Cargar Formatos Históricos
|
||||
cbWorkshopSyntax=Verificador de sintaxis del Taller
|
||||
cbEnforceDeckLegality=Conformidad del Mazo
|
||||
cbPerformanceMode=Modo de desempeño
|
||||
cbFilteredHands=Manos filtradas
|
||||
cbImageFetcher=Descargar automáticamente el arte de la carta si no existe
|
||||
cbCloneImgSource=Clones usan el arte original de la carta
|
||||
cbScaleLarger=Imagen de escala más grande
|
||||
cbRenderBlackCardBorders=Renderizar bordes de cartas negras
|
||||
cbLargeCardViewers=Usar visores de cartas grandes
|
||||
cbSmallDeckViewer=Usar el visor de mazos pequeño
|
||||
cbDisplayFoil=Mostrar Foil (efecto sobreexpuesto)
|
||||
cbRandomFoil=Foil Aleatorio
|
||||
cbRandomArtInPools=Aleatorizar Arte de la Carta en los pools que se generen
|
||||
cbEnableSounds=Activar sonidos
|
||||
cbEnableMusic=Activar música
|
||||
cbAltSoundSystem=Utilizar el sistema de sonido alternativo
|
||||
cbUiForTouchScreen=Mejorar la interfaz de usuario para pantallas táctiles
|
||||
cbTimedTargOverlay=Habilitar optimización de superposición de capas
|
||||
cbCompactMainMenu=Usar el menú de la barra lateral principal compacta
|
||||
cbDetailedPaymentDesc=Descripción del hechizo en el aviso del pago
|
||||
cbPromptFreeBlocks=Manejar bloqueos en el combate sí no requieren coste
|
||||
cbPauseWhileMinimized=Pausa mientras minimizado
|
||||
cbCompactPrompt=Ventana de aviso compacta
|
||||
cbEscapeEndsTurn=Use la tecla Escape para Fin del Turno
|
||||
cbPreselectPrevAbOrder=Preseleccionar el último orden de habilidades
|
||||
cbHideReminderText=Ocultar texto de recordatorio
|
||||
cbOpenPacksIndiv=Abrir packs individualmente
|
||||
cbTokensInSeparateRow=Mostrar fichas en una fila separada
|
||||
cbStackCreatures=Apilar Criaturas
|
||||
cbFilterLandsByColorId=Filtrar tierras por color en habilidades activadas
|
||||
cbShowStormCount=Mostrar el contador de tormenta (Storm) en el panel de aviso
|
||||
cbRemindOnPriority=Alerta visual al recibir la prioridad
|
||||
cbUseSentry=Enviar automáticamente informes de errores.
|
||||
cbpGameLogEntryType=Verbosidad del registro del juego
|
||||
cbpCloseAction=Acción al cerrar
|
||||
cbpDefaultFontSize=Tamaño de fuente predeterminado
|
||||
cbpAiProfiles=Personalidad de la IA
|
||||
cbpDisplayCurrentCardColors=Mostrar color detallado de la carta
|
||||
cbpAutoYieldMode=Auto-Ceder
|
||||
cbpCounterDisplayType=Forma en la que se muestran los contadores
|
||||
cbpCounterDisplayLocation=Ubicación del contador
|
||||
cbpGraveyardOrdering=Permitir ordenar cartas puestas en el cementerio
|
||||
Troubleshooting=Solución de problemas
|
||||
GeneralConfiguration=Configuración general
|
||||
nlPlayerName=Establece el nombre al que te referirá Forge durante el juego.
|
||||
nlCompactMainMenu=Habilitar para una barra lateral eficiente en espacio que muestre solo un grupo de menús a la vez (REQUIERE REINICIAR).
|
||||
nlUseSentry=Cuando está habilitado, envía automáticamente informes de errores a los desarrolladores.
|
||||
GamePlay=Juego
|
||||
nlpAiProfiles=Elige tu oponente de la IA
|
||||
nlAnte=Determina si el juego se juega con apuesta o no.
|
||||
nlAnteMatchRarity=Intenta crear apuesta de la misma rareza para todos los jugadores.
|
||||
nlEnableAICheats=Permita que la IA haga trampa para obtener ventaja (para personalidades que tienen configuradas trampas al barajar).
|
||||
nlManaBurn=Jugar con quemadura de maná (reglas previas a Magic 2010).
|
||||
nlManaLostPrompt=Cuando está habilitado, recibes una advertencia si la prioridad de pase te haría perder maná en tu reserva de maná.
|
||||
nlEnforceDeckLegality=Aplica la legalidad del mazo correspondiente a cada entorno (tamaño mínimo de mazo, número máximo de cartas, etc.).
|
||||
nlPerformanceMode=Desactiva las comprobaciones de habilidades estáticas adicionales para acelerar el motor del juego. (Advertencia: rompe algunos escenarios 'como si tuviera flash' cuando se lanzan cartas de propiedad de los oponentes).
|
||||
nlFilteredHands=Genera dos manos iniciales y mantiene la que tiene el recuento de tierras más cercano al promedio del mazo (Requiere reinicio)
|
||||
nlCloneImgSource=Cuando se habilite, los clones usarán su arte original en lugar del arte de la carta clonada.
|
||||
nlPromptFreeBlocks=Cuando esté habilitado, si tuviera que pagar 0 para bloquear, pague automáticamente sin aviso.
|
||||
nlPauseWhileMinimized=Cuando está habilitado, Forge hace una pausa cuando está minimizado (principalmente para AI contra AI).
|
||||
nlEscapeEndsTurn=Cuando está habilitada, la tecla Escape funciona como un atajo alternativo para finalizar el turno actual.
|
||||
nlDetailedPaymentDesc=Cuando está habilitado, se muestran descripciones detalladas de hechizos / habilidades al elegir objetivos y pagar costos.
|
||||
nlShowStormCount=Cuando está habilitado, muestra el recuento de tormentas actual en el panel de solicitud.
|
||||
nlRemindOnPriority=Cuando está habilitado, parpadea el área de elección del jugador al recibir prioridad.
|
||||
nlPreselectPrevAbOrder=Cuando está habilitado, preselecciona el último orden de habilidad simultáneo definido en el cuadro de diálogo de ordenación.
|
||||
nlpGraveyardOrdering=Determina cuándo dejar que el jugador elija el orden de las cartas colocadas simultáneamente en el cementerio (nunca, siempre, o solo cuando juega con las cartas que le interesan, por ejemplo, Volrath's Shapeshifter)
|
||||
nlpAutoYieldMode=Define el nivel de granularidad de la opción auto-ceder (por habilidad única o por carta única).
|
||||
RandomDeckGeneration=Generación aleatoria de mazo
|
||||
nlRemoveSmall=Deshabilita las criaturas 1/1 y 0 / X en los mazos generados.
|
||||
nlSingletons=Deshabillita duplicados de no tierras en mazos generados
|
||||
nlRemoveArtifacts=Deshabilita las cartas de artefactos en los mazos generados.
|
||||
nlCardBased=Crea mazos aleatorios más sinérgicos (requiere reinicio)
|
||||
DeckEditorOptions=Opciones del editor de mazo
|
||||
nlFilterLandsByColorId=Al usar filtros de color de cartas, filtre las tierras de manera que sea más fácil encontrar tierras que produzcan ese color de maná.
|
||||
AdvancedSettings=Ajustes avanzados
|
||||
nlDevMode=Habilita el menú con funciones para probar durante el desarrollo.
|
||||
nlWorkshopSyntax=Habilita la comprobación de sintaxis de los guiones de tarjetas en el taller. Nota: funcionalidad aún en fase de prueba!
|
||||
nlGameLogEntryType=Cambia la cantidad de información que se muestra en el registro del juego. Ordenado de menos a más detallado.
|
||||
nlCloseAction=Cambia lo que sucede al hacer clic en el botón X en la parte superior derecha.
|
||||
nlLoadCardsLazily=Si está activado, Forge cargará los scripts de las cartas según sea necesario en lugar de al inicio. (Advertencia: Experimental)
|
||||
nlLoadHistoricFormats=Si está activado, Forge cargará todas los formatos históricos, esto puede demorar un poco más en cargarse en el inicio.
|
||||
GraphicOptions=Opciones gráficas
|
||||
nlDefaultFontSize=El tamaño de fuente predeterminado dentro de la interfaz de usuario. Todos los elementos de fuente se escalan en relación a esto. (Necesita reinicio)
|
||||
nlImageFetcher=Permite la descarga instantánea de imágenes de cartas faltantes.
|
||||
nlDisplayFoil=Mostrar cartas foil con un capa que da efecto foil sobre la carta
|
||||
nlRandomFoil=Agrega efecto de foil a cartas aleatorias.
|
||||
nlScaleLarger=Permite que las imágenes de las cartas se amplíen más que su tamaño original.
|
||||
nlRenderBlackCardBorders=Hacer bordes negros alrededor de las imágenes de las cartas.
|
||||
nlLargeCardViewers=Hace que todos los visores de cartas en el programa sean mucho más grandes para usar con imágenes de alta resolución. No cabrá en pantallas más pequeñas.
|
||||
nlSmallDeckViewer=Establece la ventana del visor de mazo para que sea de 800x600 en lugar de una proporción del tamaño de la pantalla.
|
||||
nlRandomArtInPools=Genera cartas con arte al azar en pools generados de cartas de modo limitado.
|
||||
nlUiForTouchScreen=Aumenta algunos elementos de la interfaz de usuario para proporcionar una mejor experiencia en dispositivos de pantalla táctil. (Necesita reinicio)
|
||||
nlCompactPrompt=Oculte el encabezado y use una fuente más pequeña en el panel de solicitud para hacerlo más compacto.
|
||||
nlHideReminderText=Ocultar el texto del recordatorio en el panel de Detalle de la Carta
|
||||
nlOpenPacksIndiv=Al abrir packs de cartas (Fat Packs) y cajas de sobres, los sobres se abrirán y se mostrarán de uno en uno.
|
||||
nlTokensInSeparateRow=Muestra las fichas en una fila separada en el campo de batalla debajo de las criaturas que no son fichas.
|
||||
nlStackCreatures=Apila criaturas idénticas en el campo de batalla, como tierras, artefactos y encantamientos.
|
||||
nlTimedTargOverlay=Habilita la optimización basada en la regulación de la superposición de objetivos para reducir el uso de la CPU (solo desactívela si experimenta interferencias en el hardware más antiguo, es necesario iniciar de nuevo el juego).
|
||||
nlCounterDisplayType=Selecciona el estilo en el que se mostrarán los contadores en las cartas. En texto, en imagen o híbrido (muestra ambos a la vez).
|
||||
nlCounterDisplayLocation=Determina dónde colocar los contadores basados en texto en la carta: cerca de la parte superior o cerca de la parte inferior.
|
||||
nlDisplayCurrentCardColors=Muestra el color actual de las cartas en el panel de información detallada de la tarjeta.
|
||||
SoundOptions=Opciones de Sonido
|
||||
nlEnableSounds=Habilitar efectos de sonido durante el juego
|
||||
nlEnableMusic=Habilitar música de fondo durante el juego
|
||||
nlAltSoundSystem=Use el sistema de sonido alternativo (solo use si tiene problemas con el sonido que no se reproduce o desaparece)
|
||||
KeyboardShortcuts=Atajos de teclado
|
||||
# VSubmenuAchievements.java
|
||||
Achievements=Logros
|
||||
# VSubmenuDownloaders.java
|
||||
btnDownloadSetPics=Descargar todos los Sets de Cartas
|
||||
btnDownloadPics=Descargar todas las Cartas
|
||||
btnDownloadQuestImages=Descargar Imágenes del modo Quest
|
||||
btnDownloadAchievementImages=Descagar Imágenes de los Logros
|
||||
btnReportBug=Reportar un error
|
||||
btnListImageData=Audit Card and Image Data
|
||||
lblListImageData=Audit cards not implemented by Forge and missing card images
|
||||
btnImportPictures=Importar Datos
|
||||
btnHowToPlay=Cómo jugar (Inglés)
|
||||
btnDownloadPrices=Descargar los precios de las cartas
|
||||
btnLicensing=Detalles de la licencia
|
||||
lblDownloadPics=Descargar la imagen de la carta por defecto para cada carta.
|
||||
lblDownloadSetPics=Descargue todas las imágenes de cada carta (una por cada set donde apareció la carta)
|
||||
lblDownloadQuestImages=Descarga fichas e íconos utilizados en el modo Quest.
|
||||
lblDownloadAchievementImages=Descarga imágenes de logros para que tus trofeos realmente destaquen.
|
||||
lblDownloadPrices=Descargue la lista de precios actualizada para las tiendas de cartas del juego.
|
||||
lblYourVersionOfJavaIsTooOld=Su versión de Java es demasiado antigua para usar los descargadores de contenido.
|
||||
lblPleaseUpdateToTheLatestVersionOfJava=Por favor, actualice a la última versión de Java
|
||||
lblYoureRunning=Estas corriendo
|
||||
lblYouNeedAtLeastJavaVersion=Necesitas al menos la versión 1.8.0_101.
|
||||
lblImportPictures=Importar datos desde un directorio local.
|
||||
lblReportBug=¿Algo roto?
|
||||
lblHowToPlay=Reglas del juego.
|
||||
lblLicensing=Forge Aviso Legal.
|
||||
ContentDownloaders=Descargadores de contenido
|
||||
ReleaseNotes=Notas de la Versión
|
||||
# CSubmenuPreferences.java
|
||||
CantChangeDevModeWhileNetworkMath=¡No se puede cambiar a Modo Desarrollador mientras se está realizando una partida en red!
|
||||
CompatibilityWarningsReEnabled=¡Advertencias de compatibilidad re-habilitadas!
|
||||
AresetForgeSettingsToDefault=Esto reseteará todas las preferencias a sus valores predeterminados y reiniciará Forge.\n\ n¿Resetear y reiniciar Forge?
|
||||
TresetForgeSettingsToDefault=Ajustes del Reset
|
||||
AresetDeckEditorLayout=Esto restablecerá el diseño de la pantalla del Editor de Mazos.\nTodas las vistas con pestañas se restaurarán a sus posiciones predeterminadas.\n\n ¿Restablecer diseño?
|
||||
TresetDeckEditorLayout=Restablecer diseño del Editor de Mazos
|
||||
OKresetDeckEditorLayout=El diseño del Editor se ha reestablecido correctamente
|
||||
AresetWorkshopLayout=Esto restablecerá el diseño del Taller.\nTodas las vistas con pestañas se restaurarán a sus posiciones predeterminadas. \n\n ¿Restablecer diseño?
|
||||
TresetWorkshopLayout=Restablecer diseño del Taller.
|
||||
OKresetWorkshopLayout=El diseño del Taller se ha restablecido.
|
||||
AresetMatchScreenLayout=Esto restablecerá el diseño de la pantalla de Juego.\n Si desea guardar primero el diseño actual, use la pestaña Dock -> Guardar opción de diseño en la pantalla de Juego\n \n ¿Restablecer diseño?
|
||||
TresetMatchScreenLayout=Restablecer diseño de pantalla de Juego
|
||||
OKresetMatchScreenLayout=El diseño de la pantalla de Juego se ha restablecido.
|
||||
#EMenuGroup.java
|
||||
lblSanctionedFormats=Formatos Sancionados
|
||||
lblOnlineMultiplayer=Multijugador en linea
|
||||
lblQuestMode=Modo Aventura
|
||||
lblPuzzleMode=Modo Puzzle
|
||||
lblGauntlets=Desafíos
|
||||
lblGameSettings=Configuración
|
||||
#VLobby.java
|
||||
lblHeaderConstructedMode=Formato Sancionado: Construido
|
||||
lblGetNewRandomName=Obtener nuevo nombre aleatorio
|
||||
lbltypeofName=Qué tipo de nombre quieres generar?
|
||||
lblconfirmName=Quieres usar el nombre de %n, o probar de nuevo?
|
||||
lblUseThisName=Usar este nombre
|
||||
lblTryAgain=Probar de nuevo
|
||||
lblAddAPlayer=Añadir Jugador
|
||||
lblVariants=Variantes
|
||||
#VSubmenuConstructed.java
|
||||
lblConstructedMode=Modo Construido
|
||||
lblConstructed=Construido
|
||||
#PlayerPanel.java
|
||||
lblSelectaDeck=Selecciona un mazo
|
||||
lblSelectaSchemeDeck=Selecciona un Mazo de Fenómenos (Scheme)
|
||||
lblSchemeDeckEditor=Editor de Mazo de Escenario (Scheme)
|
||||
lblSelectaCommanderDeck=Selecciona un Mazo Commander
|
||||
lblSelectaPlanarDeck=Selecciona un Mazo Planar
|
||||
lblPlanarDeckEditor=Editor de Mazos Planar
|
||||
lblSelectaVanguardAvatar=Selecciona un avatar para Vanguard
|
||||
lblVanguardAvatar=avatar Vanguard
|
||||
lblDeck=Mazo
|
||||
lblSchemeDeck=Mazo de Escenario (Scheme)
|
||||
lblCommanderDeck=Mazo Commander
|
||||
lblPlanarDeck=Mazo Planar
|
||||
lblVanguard=Vanguard
|
||||
lblHuman=Humano
|
||||
lblAI=IA
|
||||
lblOpen=Abierto
|
||||
lblUseSimulation=Usar Simulación
|
||||
lblGetaNewRandomName=Obtener un nuevo nombre al azar
|
||||
lblArchenemy=Archienemigo
|
||||
lblHeroes=Heroes
|
||||
lblRemove=Quitar
|
||||
ttlblAvatar=L-click: Seleccionar avatar. R-clic: aleatorizar avatar.
|
||||
lblReady=Listo
|
||||
lblKick=Quitar
|
||||
lblReallyKick=Quitar a %s?
|
||||
#ForgeMenu.java
|
||||
lblRestart=Reiniciar
|
||||
lblExit=Salir
|
||||
#LayoutMenu.java
|
||||
lblLayout=Diseño
|
||||
lblView=Ver
|
||||
lblFile=Archivo
|
||||
lblTheme=Tema
|
||||
lblBackgroundImage=Imagen de fondo
|
||||
lblPanelTabs=Pestañas de los Paneles
|
||||
lblSaveCurrentLayout=Guardar el diseño actual
|
||||
lblRefresh=Refrescar
|
||||
lblSetWindowSize=Establecer tamaño de ventana
|
||||
lblChooseNewWindowSize=Elija nuevo tamaño de ventana
|
||||
lblFullScreen=Pantalla completa
|
||||
lblExitFullScreen=Salir de pantalla completa
|
||||
#HelpMenu.java
|
||||
lblHelp=Ayuda
|
||||
lblAboutForge=Sobre Forge
|
||||
lblTroubleshooting=Solución de problemas
|
||||
lblArticles=Artículos (Inglés)
|
||||
lblGettingStarted=Empezando (Inglés)
|
||||
lblHowtoPlay=Cómo jugar (Inglés)
|
||||
lblForgeLicense=Licencia de Forge
|
||||
lblReleaseNotes=Notas de la Versión
|
||||
#GameMenu.java
|
||||
lblGame=Juego
|
||||
lblSoundEffects=Efectos de Sonido
|
||||
lblUndo=Deshacer
|
||||
lblAlphaStrike=Atacar con Todo
|
||||
lblEndTurn=Finalizar Turno
|
||||
lblTargetingArcs=Flechas Objetivo
|
||||
lblOff=Desactivado
|
||||
lblCardMouseOver=Cuando sea señalada por el ratón
|
||||
lblAlwaysOn=Siempre Activado
|
||||
lblAutoYields=Auto-Ceder
|
||||
lblDeckList=Lista del Mazo
|
||||
lblClose=Cerrar
|
||||
lblExitForge=Salir de Forge
|
||||
#ConstructedGameMenu.java
|
||||
lblSelectAvatarFor=Select avatar for %s
|
||||
lblRemoveSmallCreatures=Remove 1/1 and 0/X creatures in generated decks.
|
||||
lblRemoveArtifacts=Remove artifact cards in generated decks.
|
||||
PreventNonLandDuplicates=Prevent non-land duplicates in generated decks.
|
||||
#PlayerPanel.java
|
||||
lblName=Nombre
|
||||
lblTeam=Equipo
|
||||
#InputConfirmMulligan.java
|
||||
lblKeep=Mantener
|
||||
lblYouAreGoingFirst=tu vas primero!
|
||||
lblIsGoingFirst=va primero
|
||||
lblYouAreGoing=vas
|
||||
lblMulligan=Mulligan
|
||||
lblDoYouWantToKeepYourHand=¿Quieres quedarte tu mano?
|
||||
lblOk=Ok
|
||||
lblReset=Reset
|
||||
lblAuto=Auto
|
||||
#VAssignDamage.java
|
||||
lbLAssignDamageDealtBy=Asignar daño hecho por %s
|
||||
lblLClickDamageMessage=Clic izquierdo: Asigna 1 daño. (Clic izquierdo + Control): Asigna el daño restante a letal
|
||||
lblRClickDamageMessage=Clic derecho: Desasignar 1 daño. (Clic derecho + Control): Desasignar todo el daño.
|
||||
lblTotalDamageText=Puntos de daño disponibles: Desconocido
|
||||
lblAssignRemainingText=Distribuye los puntos de daño restantes entre las entidades letalmente heridas.
|
||||
lblLethal=Letal
|
||||
#KeyboardShortcuts.java
|
||||
lblSHORTCUT_SHOWSTACK=Match: show stack panel
|
||||
lblSHORTCUT_SHOWCOMBAT=Match: show combat panel
|
||||
lblSHORTCUT_SHOWCONSOLE=Match: show console panel
|
||||
lblSHORTCUT_SHOWDEV=Match: show dev panel
|
||||
lblSHORTCUT_CONCEDE=Match: concede game
|
||||
lblSHORTCUT_ENDTURN=Match: pass priority until EOT or next stack event
|
||||
lblSHORTCUT_ALPHASTRIKE=Match: Alpha Strike (attack with all available)
|
||||
lblSHORTCUT_SHOWTARGETING=Match: toggle targeting visual overlay
|
||||
lblSHORTCUT_AUTOYIELD_ALWAYS_YES=Match: auto-yield ability on stack (Always Yes)
|
||||
lblSHORTCUT_AUTOYIELD_ALWAYS_NO=Match: auto-yield ability on stack (Always No)
|
||||
lblSHORTCUT_MACRO_RECORD=Match: record a macro sequence of actions
|
||||
lblSHORTCUT_MACRO_NEXT_ACTION=Match: execute next action in a recorded macro
|
||||
lblSHORTCUT_CARD_ZOOM=Match: zoom the currently selected card
|
||||
#VSubmenuDraft.java
|
||||
lblBoosterDraft=Booster Draft
|
||||
lblHeaderBoosterDraft=Formato sancionado: Booster Draft
|
||||
lblPlayAnOpponent=Jugar contra un oponente
|
||||
lblPlayAll7opponents=Juega contra los 7 oponentes
|
||||
lblBuildorselectadeck=Construye o selecciona un mazo
|
||||
lblDraftText1=En el modo Draft, tres sobres de cartas giran alrededor de ocho jugadores.
|
||||
lblDraftText2=Construye un mazo a partir de las cartas que elijas. La IA hará lo mismo.
|
||||
lblDraftText3=Luego, juega contra uno o todos los oponentes de la IA.
|
||||
lblNewBoosterDraftGame=Nuevo Booster Draft
|
||||
lblDraftDecks=Mazos de Draft
|
||||
#CSubmenuDraft.java
|
||||
lblNoDeckSelected=No deck selected for human.\n(You may need to build a new deck)
|
||||
lblNoDeck=No Deck
|
||||
lblChooseDraftFormat=Choose Draft Format
|
||||
#VSubmenuSealed.java
|
||||
lblSealedDeck=Mazo Sellado
|
||||
lblSealedDecks=Mazos de Sellado
|
||||
lblHeaderSealed=Formato Sancionado: Mazo Sellado
|
||||
lblSealedText1=Selecciona un juego o crea uno nuevo
|
||||
lblSealedText2=En modo sellado, construyes un mazo con sobres (máximo 10).
|
||||
lblSealedText3=Construye un mazo con las cartas que recibas. Un número de oponentes de la IA hará lo mismo.
|
||||
lblSealedText4=Luego, juega contra uno o todos los oponentes de la IA.
|
||||
btnBuildNewSealedDeck=Nuevo Mazo Sellado
|
||||
#FDeckChooser.java
|
||||
lblViewDeck=Ver Mazo
|
||||
lblRandomDeck=Mazo Aleatorio
|
||||
#GameType.java
|
||||
lblSealed=Sellado
|
||||
lblDraft=Draft
|
||||
lblWinston=Winston
|
||||
lblGauntlet=Desafío
|
||||
lblTournament=Torneo
|
||||
lblQuest=Aventura
|
||||
lblQuestDraft=Draft Aventura
|
||||
lblPlanarConquest=Conquista Planar
|
||||
lblPuzzle=Puzzle
|
||||
lblPuzzleDesc=Resuelve un puzzle del estado del juego dado.
|
||||
lblDeckManager=Gestor de Mazos
|
||||
lblVanguardDesc=Cada jugador tiene una carta especial de "Avatar" que afecta el juego.
|
||||
lblCommandesDesc=
|
||||
lblTinyLeaders=Tiny Leaders
|
||||
lblTinyLeadersDesc=Cada jugador tiene una carta legendaria "Comandante" que se puede lanzar en cualquier momento y determina los colores de la baraja. Cada carta debe tener CMC menos de 4.
|
||||
lblBrawl=Brawl
|
||||
lblBrawlDesc=Cada jugador tiene una carta legendaria "Comandante" que se puede lanzar en cualquier momento y determina los colores de la baraja. Solo se pueden usar cartas legales en estándar.
|
||||
lblPlaneswalker=Caminante de Planos
|
||||
lblPlaneswalkerDesc=Cada jugador tiene una carta de Planeswalker que se puede lanzar en cualquier momento.
|
||||
lblPlanechase=Planechase
|
||||
lblPlanechaseDesc=Las cartas de plano aplican efectos globales. La carta de Plano cambia cuando un jugador tira "Planeswalk" en el dado planar.
|
||||
lblArchenemyDesc=Un jugador es el Archienemigo y lucha contra los otros jugadores jugando cartas de Fenómenos.
|
||||
lblArchenemyRumble=Archenemy Rumble
|
||||
lblArchenemyRumbleDesc=Todos los jugadores son Archienemigos y pueden jugar cartas de Fenómenos.
|
||||
lblMomirBasic=Momir Basic
|
||||
lblMomirBasicDesc=Each player has a deck containing 60 basic lands and the Momir Vig avatar.
|
||||
lblMoJhoSto=MoJhoSto
|
||||
lblMoJhoStoDesc=Cada jugador tiene un mazo que contiene 60 tierras básicas y los avatares Momir Vig, Jhoira of the Ghitu, y Stonehewer Giant avatar
|
||||
@@ -18,7 +18,6 @@
|
||||
package forge.match.input;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import forge.game.Game;
|
||||
import forge.game.card.Card;
|
||||
import forge.game.card.CardCollection;
|
||||
@@ -29,8 +28,8 @@ import forge.game.zone.ZoneType;
|
||||
import forge.player.PlayerControllerHuman;
|
||||
import forge.util.ITriggerEvent;
|
||||
import forge.util.Lang;
|
||||
import forge.util.Localizer;
|
||||
import forge.util.ThreadUtil;
|
||||
import forge.util.Localizer;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@@ -68,7 +67,7 @@ public class InputConfirmMulligan extends InputSyncronizedBase {
|
||||
}
|
||||
else {
|
||||
sb.append(startingPlayer.getName()).append(" " + localizer.getMessage("lblIsGoingFirst") +".\n");
|
||||
sb.append(player).append(", "+ localizer.getMessage("lblYouAreGoing") +"").append(Lang.getOrdinal(game.getPosition(player, startingPlayer))).append(".\n\n");
|
||||
sb.append(player).append(", "+ localizer.getMessage("lblYouAreGoing") + " ").append(Lang.getOrdinal(game.getPosition(player, startingPlayer))).append(".\n\n");
|
||||
}
|
||||
|
||||
getController().getGui().updateButtons(getOwner(), localizer.getMessage("lblKeep"), localizer.getMessage("lblMulligan"), true, true, true);
|
||||
|
||||
Reference in New Issue
Block a user