mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 20:28:00 +00:00
Add Net Commander Decks to Deck Manager
This commit is contained in:
@@ -394,6 +394,7 @@ public class FDeckChooser extends FScreen {
|
|||||||
cmbDeckTypes.addItem(DeckType.PRECONSTRUCTED_DECK);
|
cmbDeckTypes.addItem(DeckType.PRECONSTRUCTED_DECK);
|
||||||
cmbDeckTypes.addItem(DeckType.QUEST_OPPONENT_DECK);
|
cmbDeckTypes.addItem(DeckType.QUEST_OPPONENT_DECK);
|
||||||
cmbDeckTypes.addItem(DeckType.NET_DECK);
|
cmbDeckTypes.addItem(DeckType.NET_DECK);
|
||||||
|
cmbDeckTypes.addItem(DeckType.NET_COMMANDER_DECK);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
cmbDeckTypes.addItem(DeckType.CUSTOM_DECK);
|
cmbDeckTypes.addItem(DeckType.CUSTOM_DECK);
|
||||||
@@ -405,32 +406,37 @@ public class FDeckChooser extends FScreen {
|
|||||||
cmbDeckTypes.setChangedHandler(new FEventHandler() {
|
cmbDeckTypes.setChangedHandler(new FEventHandler() {
|
||||||
@Override
|
@Override
|
||||||
public void handleEvent(final FEvent e) {
|
public void handleEvent(final FEvent e) {
|
||||||
if (cmbDeckTypes.getSelectedItem() == DeckType.NET_DECK && !refreshingDeckType) {
|
final DeckType deckType = cmbDeckTypes.getSelectedItem();
|
||||||
|
if (!refreshingDeckType && (deckType == DeckType.NET_DECK || deckType == DeckType.NET_COMMANDER_DECK)) {
|
||||||
FThreads.invokeInBackgroundThread(new Runnable() { //needed for loading net decks
|
FThreads.invokeInBackgroundThread(new Runnable() { //needed for loading net decks
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
final NetDeckCategory category = NetDeckCategory.selectAndLoad(lstDecks.getGameType());
|
GameType gameType = lstDecks.getGameType();
|
||||||
|
if (gameType == GameType.DeckManager) {
|
||||||
|
gameType = deckType == DeckType.NET_COMMANDER_DECK ? GameType.Commander : GameType.Constructed;
|
||||||
|
}
|
||||||
|
final NetDeckCategory category = NetDeckCategory.selectAndLoad(gameType);
|
||||||
|
|
||||||
FThreads.invokeInEdtLater(new Runnable() {
|
FThreads.invokeInEdtLater(new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
if (category == null) {
|
if (category == null) {
|
||||||
cmbDeckTypes.setSelectedItem(selectedDeckType); //restore old selection if user cancels
|
cmbDeckTypes.setSelectedItem(selectedDeckType); //restore old selection if user cancels
|
||||||
if (selectedDeckType == DeckType.NET_DECK && netDeckCategory != null) {
|
if (selectedDeckType == deckType && netDeckCategory != null) {
|
||||||
cmbDeckTypes.setText(netDeckCategory.getDeckType());
|
cmbDeckTypes.setText(netDeckCategory.getDeckType());
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
netDeckCategory = category;
|
netDeckCategory = category;
|
||||||
refreshDecksList(DeckType.NET_DECK, true, e);
|
refreshDecksList(deckType, true, e);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
refreshDecksList(cmbDeckTypes.getSelectedItem(), false, e);
|
refreshDecksList(deckType, false, e);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
add(cmbDeckTypes);
|
add(cmbDeckTypes);
|
||||||
@@ -527,6 +533,7 @@ public class FDeckChooser extends FScreen {
|
|||||||
config = ItemManagerConfig.STRING_ONLY;
|
config = ItemManagerConfig.STRING_ONLY;
|
||||||
break;
|
break;
|
||||||
case NET_DECK:
|
case NET_DECK:
|
||||||
|
case NET_COMMANDER_DECK:
|
||||||
if (netDeckCategory != null) {
|
if (netDeckCategory != null) {
|
||||||
cmbDeckTypes.setText(netDeckCategory.getDeckType());
|
cmbDeckTypes.setText(netDeckCategory.getDeckType());
|
||||||
}
|
}
|
||||||
@@ -784,7 +791,7 @@ public class FDeckChooser extends FScreen {
|
|||||||
final Deck userDeck = deckProxy.getDeck();
|
final Deck userDeck = deckProxy.getDeck();
|
||||||
if (userDeck == null) { return; }
|
if (userDeck == null) { return; }
|
||||||
|
|
||||||
if (selectedDeckType == DeckType.COMMANDER_DECK) {
|
if (selectedDeckType == DeckType.COMMANDER_DECK || selectedDeckType == DeckType.NET_COMMANDER_DECK) {
|
||||||
//cannot create gauntlet for commander decks, so just start single match
|
//cannot create gauntlet for commander decks, so just start single match
|
||||||
testCommanderDeck(userDeck);
|
testCommanderDeck(userDeck);
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -13,7 +13,8 @@ public enum DeckType {
|
|||||||
COLOR_DECK ("Random Color Decks"),
|
COLOR_DECK ("Random Color Decks"),
|
||||||
THEME_DECK ("Random Theme Decks"),
|
THEME_DECK ("Random Theme Decks"),
|
||||||
RANDOM_DECK ("Random Decks"),
|
RANDOM_DECK ("Random Decks"),
|
||||||
NET_DECK ("Net Decks");
|
NET_DECK ("Net Decks"),
|
||||||
|
NET_COMMANDER_DECK ("Net Commander Decks");
|
||||||
|
|
||||||
private String value;
|
private String value;
|
||||||
private DeckType(String value) {
|
private DeckType(String value) {
|
||||||
|
|||||||
@@ -47,7 +47,6 @@ public class NetDeckCategory extends StorageBase<Deck> {
|
|||||||
switch (gameType) {
|
switch (gameType) {
|
||||||
case Constructed:
|
case Constructed:
|
||||||
case Gauntlet:
|
case Gauntlet:
|
||||||
case DeckManager:
|
|
||||||
if (constructed == null) {
|
if (constructed == null) {
|
||||||
constructed = loadCategories(ForgeConstants.NET_DECKS_LIST_FILE);
|
constructed = loadCategories(ForgeConstants.NET_DECKS_LIST_FILE);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user