rename MagicCubeDefinition to MagicCustomFormat, rename CubeDefinitions to CustomFormats

master
melvinzhang 2015-06-20 10:26:31 +08:00
parent e98c9cc3e3
commit 282c1d809d
12 changed files with 49 additions and 56 deletions

View File

@ -30,7 +30,6 @@ import magic.utility.MagicSystem;
import magic.model.MagicCardDefinition;
import magic.model.MagicChangeCardDefinition;
import magic.model.MagicColor;
import magic.model.MagicCubeDefinition;
import magic.model.event.MagicHandCastActivation;
import magic.utility.MagicFileSystem;
import magic.utility.MagicFileSystem.DataPath;
@ -216,7 +215,7 @@ public class CardDefinitions {
reporter.setMessage("Loading cards...100%");
// update card lists
final MagicCubeDefinition cube = CubeDefinitions.DEFAULT_CUBE;
final MagicCustomFormat cube = CustomFormats.DEFAULT_CUBE;
for (final MagicCardDefinition cardDefinition : allPlayableCardDefs.values()) {
if (cardDefinition.isToken() == false && cardDefinition.isHidden() == false) {
defaultPlayableCardDefs.add(cardDefinition);

View File

@ -10,11 +10,10 @@ import java.util.Collections;
import java.util.List;
import magic.utility.MagicSystem;
import magic.model.MagicCardDefinition;
import magic.model.MagicCubeDefinition;
import magic.utility.MagicFileSystem;
import magic.utility.MagicFileSystem.DataPath;
public class CubeDefinitions {
public class CustomFormats {
private static final String CUBE_FILE_EXTENSION = "_cube.txt";
private static final FileFilter CUBE_FILE_FILTER = new FileFilter() {
@ -24,22 +23,22 @@ public class CubeDefinitions {
}
};
public static final MagicCubeDefinition DEFAULT_CUBE = new MagicCubeDefinition("all");
public static final MagicCustomFormat DEFAULT_CUBE = new MagicCustomFormat("all");
private static final List<MagicCubeDefinition> cubeDefinitions = new ArrayList<>();
private static MagicCubeDefinition currentCube;
private static final List<MagicCustomFormat> cubeDefinitions = new ArrayList<>();
private static MagicCustomFormat currentCube;
static {
cubeDefinitions.add(DEFAULT_CUBE);
currentCube = DEFAULT_CUBE;
}
public static MagicCubeDefinition[] getCubesArray() {
return cubeDefinitions.toArray(new MagicCubeDefinition[cubeDefinitions.size()]);
public static MagicCustomFormat[] getCubesArray() {
return cubeDefinitions.toArray(new MagicCustomFormat[cubeDefinitions.size()]);
}
public static String[] getFilterValues() {
final List<String> values = new ArrayList<>();
for (MagicCubeDefinition cube : cubeDefinitions) {
for (MagicCustomFormat cube : cubeDefinitions) {
if (cube != DEFAULT_CUBE) {
values.add(cube.getLabel());
}
@ -57,7 +56,7 @@ public class CubeDefinitions {
ex.printStackTrace();
return;
}
final MagicCubeDefinition cubeDefinition = new MagicCubeDefinition(name);
final MagicCustomFormat cubeDefinition = new MagicCustomFormat(name);
for (final String line: content) {
final String cardName = line.trim();
if (!cardName.isEmpty()) {
@ -79,18 +78,18 @@ public class CubeDefinitions {
if (MagicSystem.showStartupStats()) {
System.err.println(cubeDefinitions.size()+" cube definitions");
for (final MagicCubeDefinition cubeDefinition : cubeDefinitions) {
for (final MagicCustomFormat cubeDefinition : cubeDefinitions) {
System.err.println("Cube " + cubeDefinition);
}
}
}
public static boolean isCardInCube(final MagicCardDefinition card, final String cubeName) {
final MagicCubeDefinition cube = getCube(cubeName);
final MagicCustomFormat cube = getCube(cubeName);
return cube.isCardLegal(card);
}
public static MagicCubeDefinition getCube(final String cubeLabel) {
public static MagicCustomFormat getCube(final String cubeLabel) {
// prior to 1.62 the cube label including card count was saved to the duel
// config file so for backwards compatibility during import need to check
@ -98,7 +97,7 @@ public class CubeDefinitions {
final String cubeName = getCubeNameWithoutSize(cubeLabel);
if (!currentCube.getName().equals(cubeName)) {
for (MagicCubeDefinition cube : cubeDefinitions) {
for (MagicCustomFormat cube : cubeDefinitions) {
if (cube.getName().equals(cubeName)) {
currentCube = cube;
break;
@ -109,8 +108,8 @@ public class CubeDefinitions {
}
public static MagicCubeDefinition createCube(Collection<MagicCardDefinition> cardPool) {
final MagicCubeDefinition cubeDefinition = new MagicCubeDefinition("random");
public static MagicCustomFormat createCube(Collection<MagicCardDefinition> cardPool) {
final MagicCustomFormat cubeDefinition = new MagicCustomFormat("random");
for (MagicCardDefinition card : cardPool) {
cubeDefinition.add(card.getName());
}

View File

@ -4,7 +4,6 @@ import java.util.Collection;
import magic.generator.RandomDeckGenerator;
import magic.model.MagicCardDefinition;
import magic.model.MagicColor;
import magic.model.MagicCubeDefinition;
import magic.model.MagicDeck;
import magic.model.MagicDeckProfile;
@ -48,7 +47,7 @@ public class DeckGenerator {
}
public MagicDeck getRandomDeck(final Collection<MagicCardDefinition> cardPool) {
final MagicCubeDefinition cubeDefinition = CubeDefinitions.createCube(cardPool);
final MagicCustomFormat cubeDefinition = CustomFormats.createCube(cardPool);
final RandomDeckGenerator generator = new RandomDeckGenerator(cubeDefinition);
deck = new MagicDeck();
deckProfile = MagicDeckProfile.getDeckProfile(getColorText());

View File

@ -3,7 +3,6 @@ package magic.data;
import magic.utility.DeckUtils;
import magic.utility.FileIO;
import magic.generator.RandomDeckGenerator;
import magic.model.MagicCubeDefinition;
import magic.model.DuelPlayerConfig;
import java.io.IOException;
@ -117,7 +116,7 @@ public class DeckGenerators {
private static void setRandomColorDeck(final DuelPlayerConfig player) {
final MagicDeckProfile deckProfile = player.getDeckProfile();
final MagicDeck deck = player.getDeck();
final MagicCubeDefinition cubeDefinition = DuelConfig.getInstance().getCube();
final MagicCustomFormat cubeDefinition = DuelConfig.getInstance().getCube();
final RandomDeckGenerator defaultGenerator = new RandomDeckGenerator(cubeDefinition);
final RandomDeckGenerator customGenerator = DeckGenerators.getDeckGenerator(deckProfile);
if (customGenerator == null) {

View File

@ -6,7 +6,6 @@ import java.util.Properties;
import magic.model.MagicDeckProfile;
import magic.model.MagicDuel;
import magic.model.DuelPlayerConfig;
import magic.model.MagicCubeDefinition;
import magic.model.player.PlayerProfile;
import magic.model.player.PlayerProfiles;
@ -28,7 +27,7 @@ public class DuelConfig {
private int startLife = 20;
private int handSize = 7;
private int games = 7;
private MagicCubeDefinition cube = CubeDefinitions.DEFAULT_CUBE;
private MagicCustomFormat cube = CustomFormats.DEFAULT_CUBE;
private DuelPlayerConfig[] players = new DuelPlayerConfig[MAX_PLAYERS];
// CTR
@ -69,10 +68,10 @@ public class DuelConfig {
return games;
}
public MagicCubeDefinition getCube() {
public MagicCustomFormat getCube() {
return cube;
}
public void setCube(final MagicCubeDefinition aCube) {
public void setCube(final MagicCustomFormat aCube) {
this.cube = aCube;
}
@ -95,7 +94,7 @@ public class DuelConfig {
startLife = Integer.parseInt(properties.getProperty(START_LIFE, Integer.toString(startLife)));
handSize = Integer.parseInt(properties.getProperty(HAND_SIZE, Integer.toString(handSize)));
games = Integer.parseInt(properties.getProperty(GAMES, Integer.toString(games)));
cube = CubeDefinitions.getCube(properties.getProperty(CUBE, cube.getName()));
cube = CustomFormats.getCube(properties.getProperty(CUBE, cube.getName()));
loadPlayerConfigs(properties, loadPlayerDecks);
}

View File

@ -1,17 +1,16 @@
package magic.model;
package magic.data;
import java.util.Set;
import java.util.HashSet;
import magic.data.MagicFormat;
import magic.data.CardLegality;
import magic.model.MagicCardDefinition;
public class MagicCubeDefinition extends MagicFormat {
public class MagicCustomFormat extends MagicFormat {
private final Set<String> legal = new HashSet<>();
private final String name;
public MagicCubeDefinition(final String name) {
public MagicCustomFormat(final String name) {
this.name=name;
}
@ -20,7 +19,7 @@ public class MagicCubeDefinition extends MagicFormat {
}
@Override
public CardLegality getCardLegality(MagicCardDefinition card, int cardCount) {
public CardLegality getCardLegality(final MagicCardDefinition card, final int cardCount) {
return (legal.contains(card.getName())) ? CardLegality.Legal : CardLegality.Illegal;
}

View File

@ -1,16 +1,16 @@
package magic.generator;
import magic.data.CardDefinitions;
import magic.data.MagicCustomFormat;
import magic.model.MagicCardDefinition;
import magic.model.MagicCondensedDeck;
import magic.model.MagicCubeDefinition;
import magic.model.MagicDeck;
import magic.model.MagicDeckProfile;
import magic.model.MagicRandom;
import java.util.ArrayList;
import java.util.List;
import magic.data.CubeDefinitions;
import magic.data.CustomFormats;
import magic.data.DeckGenerator;
public class RandomDeckGenerator {
@ -18,17 +18,17 @@ public class RandomDeckGenerator {
private final List<MagicCardDefinition> spellCards = new ArrayList<>();
private final List<MagicCardDefinition> landCards = new ArrayList<>();
private MagicCubeDefinition cubeDefinition;
private MagicCustomFormat cubeDefinition;
public RandomDeckGenerator(final MagicCubeDefinition cubeDefinition) {
public RandomDeckGenerator(final MagicCustomFormat cubeDefinition) {
this.cubeDefinition = cubeDefinition;
}
public RandomDeckGenerator() {
this(CubeDefinitions.DEFAULT_CUBE);
this(CustomFormats.DEFAULT_CUBE);
}
public void setCubeDefinition(final MagicCubeDefinition cube) {
public void setCubeDefinition(final MagicCustomFormat cube) {
cubeDefinition = cube;
}

View File

@ -18,7 +18,7 @@ import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import magic.data.CardDefinitions;
import magic.data.CubeDefinitions;
import magic.data.CustomFormats;
import magic.data.MagicPredefinedFormat;
import magic.data.MagicSetDefinitions;
import magic.data.MagicSets;
@ -169,7 +169,7 @@ public class CardFilterPanel extends TexturedPanel implements ActionListener {
private void addCubeFilter() {
cubePopup = addFilterPopupPanel("Cube");
final String[] filterValues = CubeDefinitions.getFilterValues();
final String[] filterValues = CustomFormats.getFilterValues();
cubeCheckBoxes = new JCheckBox[filterValues.length];
cubeFilterChoices = new JRadioButton[FILTER_CHOICES.length];
populateCheckboxPopup(cubePopup, filterValues, cubeCheckBoxes, cubeFilterChoices, false);
@ -302,7 +302,7 @@ public class CardFilterPanel extends TexturedPanel implements ActionListener {
@Override
public boolean checkCard(final MagicCardDefinition card, final int i) {
final String cubeName = cubeCheckBoxes[i].getText();
return CubeDefinitions.isCardInCube(card, cubeName);
return CustomFormats.isCardInCube(card, cubeName);
}
})) {
return false;

View File

@ -1,7 +1,8 @@
package magic.ui.dialog;
import magic.utility.MagicSystem;
import magic.data.CubeDefinitions;
import magic.data.CustomFormats;
import magic.data.MagicCustomFormat;
import magic.ui.MagicFrame;
import magic.ui.widget.SliderPanel;
import net.miginfocom.swing.MigLayout;
@ -16,9 +17,7 @@ import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRootPane;
import javax.swing.KeyStroke;
import java.awt.event.ActionEvent;
import magic.model.MagicCubeDefinition;
@SuppressWarnings("serial")
public class DuelPropertiesDialog extends JDialog {
@ -26,7 +25,7 @@ public class DuelPropertiesDialog extends JDialog {
private final SliderPanel handSizeSliderPanel;
private final SliderPanel lifeSliderPanel;
private final SliderPanel winsSliderPanel;
private final JComboBox<MagicCubeDefinition> cubeComboBox;
private final JComboBox<MagicCustomFormat> cubeComboBox;
private boolean isCancelled = false;
// CTR : edit an existing profile.
@ -35,7 +34,7 @@ public class DuelPropertiesDialog extends JDialog {
final int handSize,
final int initialLife,
final int maxGames,
final MagicCubeDefinition cube
final MagicCustomFormat cube
) {
super(frame, true);
@ -49,7 +48,7 @@ public class DuelPropertiesDialog extends JDialog {
handSizeSliderPanel = new SliderPanel("Hand size:", null, 6, 8, 1, handSize);
winsSliderPanel = new SliderPanel("Max. games:", null, 1, 11, 2, maxGames);
cubeComboBox = new JComboBox<>(CubeDefinitions.getCubesArray());
cubeComboBox = new JComboBox<>(CustomFormats.getCubesArray());
cubeComboBox.setLightWeightPopupEnabled(false);
cubeComboBox.setFocusable(false);
cubeComboBox.setSelectedItem(cube);
@ -130,7 +129,7 @@ public class DuelPropertiesDialog extends JDialog {
return winsSliderPanel.getValue();
}
public MagicCubeDefinition getCube() {
public MagicCustomFormat getCube() {
return cubeComboBox.getItemAt(cubeComboBox.getSelectedIndex());
}

View File

@ -10,8 +10,8 @@ import javax.swing.JPanel;
import magic.data.DeckType;
import magic.utility.DeckUtils;
import magic.data.DuelConfig;
import magic.data.MagicCustomFormat;
import magic.exception.InvalidDeckException;
import magic.model.MagicCubeDefinition;
import magic.model.MagicDeck;
import magic.model.player.IPlayerProfileListener;
import magic.model.player.PlayerProfile;
@ -203,7 +203,7 @@ public class NewDuelSettingsScreen
}
}
public MagicCubeDefinition getCube() {
public MagicCustomFormat getCube() {
return duelSettingsPanel.getCube();
}

View File

@ -7,10 +7,10 @@ import java.awt.event.MouseEvent;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.SwingConstants;
import magic.data.CubeDefinitions;
import magic.data.CustomFormats;
import magic.data.DuelConfig;
import magic.data.MagicIcon;
import magic.model.MagicCubeDefinition;
import magic.data.MagicCustomFormat;
import magic.ui.utility.GraphicsUtils;
import magic.ui.IconImages;
import magic.ui.MagicFrame;
@ -30,7 +30,7 @@ public class DuelSettingsPanel extends TexturedPanel implements IThemeStyle {
private int startLife;
private int handSize;
private int maxGames = 7;
private MagicCubeDefinition cube = CubeDefinitions.DEFAULT_CUBE;
private MagicCustomFormat cube = CustomFormats.DEFAULT_CUBE;
private final MouseAdapter mouseAdapter = getMouseAdapter();
public DuelSettingsPanel(final MagicFrame frame, final DuelConfig config) {
@ -137,7 +137,7 @@ public class DuelSettingsPanel extends TexturedPanel implements IThemeStyle {
config.setCube(cube);
}
public MagicCubeDefinition getCube() {
public MagicCustomFormat getCube() {
return cube;
}

View File

@ -2,7 +2,7 @@ package magic.utility;
import magic.data.DeckGenerators;
import magic.data.KeywordDefinitions;
import magic.data.CubeDefinitions;
import magic.data.CustomFormats;
import magic.data.CardDefinitions;
import magic.data.UnimplementedParser;
import magic.data.GeneralConfig;
@ -172,7 +172,7 @@ final public class MagicSystem {
}
reporter.setMessage("Loading cube definitions...");
CubeDefinitions.loadCubeDefinitions();
CustomFormats.loadCubeDefinitions();
reporter.setMessage("Loading deck generators...");
DeckGenerators.getInstance().loadDeckGenerators();
reporter.setMessage("Loading keyword definitions...");