diff --git a/Mage.Client/release/sample-decks/SanDiegoLuisScott-Vargas.dck b/Mage.Client/release/sample-decks/SanDiegoLuisScott-Vargas.dck index b0aa4e4aa79..7c409355619 100644 Binary files a/Mage.Client/release/sample-decks/SanDiegoLuisScott-Vargas.dck and b/Mage.Client/release/sample-decks/SanDiegoLuisScott-Vargas.dck differ diff --git a/Mage.Client/release/sample-decks/UW Control.dck b/Mage.Client/release/sample-decks/UW Control.dck index cccac0fc290..79d23cd7e56 100644 Binary files a/Mage.Client/release/sample-decks/UW Control.dck and b/Mage.Client/release/sample-decks/UW Control.dck differ diff --git a/Mage.Client/release/sample-decks/WhiteTokens.dck b/Mage.Client/release/sample-decks/WhiteTokens.dck index 1a0bc8e5104..830c2b4f396 100644 Binary files a/Mage.Client/release/sample-decks/WhiteTokens.dck and b/Mage.Client/release/sample-decks/WhiteTokens.dck differ diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.java b/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.java index de9af8989fd..aa2e17fcafa 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.java +++ b/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.java @@ -276,7 +276,7 @@ public class DeckEditorPanel extends javax.swing.JPanel { File file = fcSelectDeck.getSelectedFile(); try { setCursor(new Cursor(Cursor.WAIT_CURSOR)); - deck = Deck.load(DeckCardLists.load(file.getPath())); + deck = Deck.load(DeckCardLists.load(file.getPath()), true); } catch (GameException ex) { JOptionPane.showMessageDialog(MageFrame.getDesktop(), ex.getMessage(), "Error loading deck", JOptionPane.ERROR_MESSAGE); } catch (Exception ex) { diff --git a/Mage/src/mage/cards/decks/Deck.java b/Mage/src/mage/cards/decks/Deck.java index ce7349aecf1..5ebba4cfb80 100644 --- a/Mage/src/mage/cards/decks/Deck.java +++ b/Mage/src/mage/cards/decks/Deck.java @@ -41,21 +41,29 @@ public class Deck implements Serializable { private Set sideboard = new LinkedHashSet(); 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.setName(deckCardLists.getName()); for (String cardName: deckCardLists.getCards()) { Card card = CardImpl.createCard(cardName); if (card != null) deck.cards.add(CardImpl.createCard(cardName)); - else - throw new GameException("Error loading card - " + cardName + " for deck - " + deck.getName()); + else { + if (!ignoreErrors) + throw new GameException("Error loading card - " + cardName + " for deck - " + deck.getName()); + } } for (String cardName: deckCardLists.getSideboard()) { Card card = CardImpl.createCard(cardName); if (card != null) deck.sideboard.add(CardImpl.createCard(cardName)); - else - throw new GameException("Error loading card - " + cardName + " for deck - " + deck.getName()); + else { + if (!ignoreErrors) + throw new GameException("Error loading card - " + cardName + " for deck - " + deck.getName()); + } } return deck;