1
0
Fork 0
mirror of https://github.com/correl/mage.git synced 2025-04-10 01:01:05 -09:00

fixed decks and deck loading in editor

This commit is contained in:
BetaSteward 2010-11-13 16:25:16 +00:00
parent e4c01b0693
commit 95cd28cb22
5 changed files with 13 additions and 5 deletions
Mage.Client
release/sample-decks
src/main/java/mage/client/deckeditor
Mage/src/mage/cards/decks

View file

@ -276,7 +276,7 @@ public class DeckEditorPanel extends javax.swing.JPanel {
File file = fcSelectDeck.getSelectedFile(); File file = fcSelectDeck.getSelectedFile();
try { try {
setCursor(new Cursor(Cursor.WAIT_CURSOR)); setCursor(new Cursor(Cursor.WAIT_CURSOR));
deck = Deck.load(DeckCardLists.load(file.getPath())); deck = Deck.load(DeckCardLists.load(file.getPath()), true);
} catch (GameException ex) { } catch (GameException ex) {
JOptionPane.showMessageDialog(MageFrame.getDesktop(), ex.getMessage(), "Error loading deck", JOptionPane.ERROR_MESSAGE); JOptionPane.showMessageDialog(MageFrame.getDesktop(), ex.getMessage(), "Error loading deck", JOptionPane.ERROR_MESSAGE);
} catch (Exception ex) { } catch (Exception ex) {

View file

@ -41,21 +41,29 @@ public class Deck implements Serializable {
private Set<Card> sideboard = new LinkedHashSet<Card>(); private Set<Card> sideboard = new LinkedHashSet<Card>();
public static Deck load(DeckCardLists deckCardLists) throws GameException { public static Deck load(DeckCardLists deckCardLists) throws GameException {
return Deck.load(deckCardLists, false);
}
public static Deck load(DeckCardLists deckCardLists, boolean ignoreErrors) throws GameException {
Deck deck = new Deck(); Deck deck = new Deck();
deck.setName(deckCardLists.getName()); deck.setName(deckCardLists.getName());
for (String cardName: deckCardLists.getCards()) { for (String cardName: deckCardLists.getCards()) {
Card card = CardImpl.createCard(cardName); Card card = CardImpl.createCard(cardName);
if (card != null) if (card != null)
deck.cards.add(CardImpl.createCard(cardName)); deck.cards.add(CardImpl.createCard(cardName));
else else {
throw new GameException("Error loading card - " + cardName + " for deck - " + deck.getName()); if (!ignoreErrors)
throw new GameException("Error loading card - " + cardName + " for deck - " + deck.getName());
}
} }
for (String cardName: deckCardLists.getSideboard()) { for (String cardName: deckCardLists.getSideboard()) {
Card card = CardImpl.createCard(cardName); Card card = CardImpl.createCard(cardName);
if (card != null) if (card != null)
deck.sideboard.add(CardImpl.createCard(cardName)); deck.sideboard.add(CardImpl.createCard(cardName));
else else {
throw new GameException("Error loading card - " + cardName + " for deck - " + deck.getName()); if (!ignoreErrors)
throw new GameException("Error loading card - " + cardName + " for deck - " + deck.getName());
}
} }
return deck; return deck;