Skip to content
Permalink
Browse files
spjspj - Update to push deck List across from Client to Server for Cu…
…stom Cube
  • Loading branch information
spjspj committed Jul 25, 2016
1 parent 9d9265e commit 883b63a01d44abd66db1c89004d9883daa19cc42
@@ -49,6 +49,7 @@
import javax.swing.JTextArea;
import javax.swing.SpinnerNumberModel;
import javax.swing.filechooser.FileFilter;
import mage.cards.decks.Deck;
import mage.cards.decks.importer.DeckImporterUtil;
import mage.cards.repository.ExpansionInfo;
import mage.cards.repository.ExpansionRepository;
@@ -58,6 +59,7 @@
import mage.constants.MultiplayerAttackOption;
import mage.constants.RangeOfInfluence;
import mage.constants.SkillLevel;
import mage.game.GameException;
import mage.game.draft.DraftOptions;
import mage.game.draft.DraftOptions.TimingOption;
import mage.game.tournament.LimitedOptions;
@@ -559,7 +561,15 @@ private void btnOkActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:e
if (tournamentType.isCubeBooster()) {
tOptions.getLimitedOptions().setDraftCubeName(this.cbDraftCube.getSelectedItem().toString());
if (!(cubeFromDeckFilename.equals(""))) {
tOptions.getLimitedOptions().setCubeFromDeckFilename(cubeFromDeckFilename);
Deck cubeFromDeck = new Deck();
try {
cubeFromDeck = Deck.load(DeckImporterUtil.importDeck(cubeFromDeckFilename), true, true);
} catch (GameException e1) {
JOptionPane.showMessageDialog(MageFrame.getDesktop(), e1.getMessage(), "Error loading deck", JOptionPane.ERROR_MESSAGE);
}
if (cubeFromDeck != null) {
tOptions.getLimitedOptions().setCubeFromDeck(cubeFromDeck);
}
}
} else if (tournamentType.isRandom() || tournamentType.isRichMan()) {
this.isRandom = tournamentType.isRandom();
@@ -27,6 +27,7 @@
*/
package mage.tournament.cubes;

import mage.cards.decks.Deck;
import mage.cards.decks.DeckCardInfo;
import mage.cards.decks.DeckCardLists;
import mage.cards.decks.importer.DeckImporterUtil;
@@ -39,14 +40,17 @@
*/
public class CubeFromDeck extends DraftCube {

public CubeFromDeck(String chosenDckFile) {
public CubeFromDeck(Deck cubeFromDeck) {
super("Cube From Deck");

DeckCardLists cards = DeckImporterUtil.importDeck(chosenDckFile);

DeckCardLists cards = null;
if (cubeFromDeck != null) {
cards = cubeFromDeck.getDeckCardLists();
}

if (cards != null) {
for (DeckCardInfo card : cards.getCards()) {
cubeCards.add(new CardIdentity(card.getCardName(), card.getSetCode()));
cubeCards.add(new CardIdentity(card.getCardName(), ""));
}
}
}
@@ -31,6 +31,7 @@
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
import mage.cards.decks.Deck;
import mage.game.draft.DraftCube;
import org.apache.log4j.Logger;

@@ -67,13 +68,13 @@ public DraftCube createDraftCube(String draftCubeName) {
return draftCube;
}

public DraftCube createDeckDraftCube(String draftCubeName, String chosenDckFile) {
public DraftCube createDeckDraftCube(String draftCubeName, Deck cubeFromDeck) {

DraftCube draftCube;
Constructor<?> con;
try {
con = draftCubes.get(draftCubeName).getConstructor(new Class[]{String.class});
draftCube = (DraftCube)con.newInstance(new Object[] {chosenDckFile});
con = draftCubes.get(draftCubeName).getConstructor(new Class[]{Deck.class});
draftCube = (DraftCube)con.newInstance(new Object[] {cubeFromDeck});
} catch (Exception ex) {
logger.fatal("CubeFactory error", ex);
return null;
@@ -81,8 +81,8 @@ public Tournament createTournament(String tournamentType, TournamentOptions opti
if (tournament.getTournamentType().isCubeBooster()) {
DraftCube draftCube = null;

if (tournament.getOptions().getLimitedOptions().getCubeFromDeckFilename().length() != 0) {
draftCube = CubeFactory.getInstance().createDeckDraftCube(tournament.getOptions().getLimitedOptions().getDraftCubeName(), tournament.getOptions().getLimitedOptions().getCubeFromDeckFilename());
if (tournament.getOptions().getLimitedOptions().getCubeFromDeck() != null) {
draftCube = CubeFactory.getInstance().createDeckDraftCube(tournament.getOptions().getLimitedOptions().getDraftCubeName(), tournament.getOptions().getLimitedOptions().getCubeFromDeck());
} else {
draftCube = CubeFactory.getInstance().createDraftCube(tournament.getOptions().getLimitedOptions().getDraftCubeName());
}
@@ -31,6 +31,7 @@
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import mage.cards.decks.Deck;
import mage.game.draft.DraftCube;

/**
@@ -45,7 +46,7 @@
protected DraftCube draftCube;
protected int numberBoosters;
protected boolean isRandom;
protected String cubeFromDeckFilename = "";
protected Deck cubeFromDeck = null;

public List<String> getSetCodes() {
return sets;
@@ -67,12 +68,12 @@ public void setDraftCubeName(String draftCubeName) {
this.draftCubeName = draftCubeName;
}

public void setCubeFromDeckFilename(String cubeFromDeckFilename) {
this.cubeFromDeckFilename = cubeFromDeckFilename;
public void setCubeFromDeck(Deck cubeFromDeck) {
this.cubeFromDeck = cubeFromDeck;
}

public String getCubeFromDeckFilename() {
return cubeFromDeckFilename;
public Deck getCubeFromDeck() {
return cubeFromDeck;
}

public DraftCube getDraftCube() {

0 comments on commit 883b63a

Please sign in to comment.