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:
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
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -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) {
|
||||||
|
|
|
@ -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;
|
||||||
|
|
Loading…
Add table
Reference in a new issue