Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
spjspj - Update to push deck List across from Client to Server for Cu…
- Loading branch information
|
|
@@ -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() { |
|
|
|