mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 20:58:03 +00:00
AdventureDeckEditor minor formatting, prevent NPE
This commit is contained in:
@@ -234,8 +234,7 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
if (showNoSellCards) {
|
||||
collectionPool.addAllFlat(AdventurePlayer.current().getNoSellCards().toFlatList());
|
||||
collectionPool.removeAllFlat(cardsInUse.toFlatList());
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
cardsInUse.removeAllFlat(AdventurePlayer.current().getNoSellCards().toFlatList());
|
||||
collectionPool.removeAllFlat(cardsInUse.toFlatList());
|
||||
}
|
||||
@@ -446,13 +445,11 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
new DeckSectionPage(DeckSection.Sideboard, ItemManagerConfig.SIDEBOARD)};
|
||||
|
||||
}
|
||||
}
|
||||
else if (event.format == AdventureEventController.EventFormat.Jumpstart){
|
||||
} else if (event.format == AdventureEventController.EventFormat.Jumpstart) {
|
||||
return new DeckEditorPage[]{
|
||||
new DeckSectionPage(DeckSection.Main, ItemManagerConfig.DRAFT_POOL),
|
||||
new DeckSectionPage(DeckSection.Sideboard, ItemManagerConfig.SIDEBOARD)};
|
||||
}
|
||||
else return new DeckEditorPage[]{};
|
||||
} else return new DeckEditorPage[]{};
|
||||
}
|
||||
|
||||
private static DeckEditorPage[] getPages(Deck deckToPreview) {
|
||||
@@ -528,12 +525,7 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
protected void buildMenu() {
|
||||
addItem(new FMenuItem(Forge.getLocalizer().getMessage("btnCopyToClipboard"), Forge.hdbuttons ? FSkinImage.HDEXPORT : FSkinImage.BLANK, e1 -> FDeckViewer.copyDeckToClipboard(getDeck())));
|
||||
if (allowsAddBasic()) {
|
||||
FMenuItem addBasic = new FMenuItem(Forge.getLocalizer().getMessage("lblAddBasicLands"), FSkinImage.LANDLOGO, new FEvent.FEventHandler() {
|
||||
@Override
|
||||
public void handleEvent(FEvent e) {
|
||||
launchBasicLandDialog();
|
||||
}
|
||||
});
|
||||
FMenuItem addBasic = new FMenuItem(Forge.getLocalizer().getMessage("lblAddBasicLands"), FSkinImage.LANDLOGO, e1 -> launchBasicLandDialog());
|
||||
addItem(addBasic);
|
||||
}
|
||||
if (!isShop && catalogPage != null && !(catalogPage instanceof ContentPreviewPage)) {
|
||||
@@ -610,12 +602,14 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
}
|
||||
super.doLayout(startY, width, height);
|
||||
}
|
||||
|
||||
public Deck getDeck() {
|
||||
if (currentEvent == null)
|
||||
return AdventurePlayer.current().getSelectedDeck();
|
||||
else
|
||||
return currentEvent.registeredDeck;
|
||||
}
|
||||
|
||||
protected CatalogPage getCatalogPage() {
|
||||
return catalogPage;
|
||||
}
|
||||
@@ -657,6 +651,7 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
private DeckHeader() {
|
||||
setHeight(HEADER_HEIGHT);
|
||||
}
|
||||
|
||||
boolean init;
|
||||
|
||||
@Override
|
||||
@@ -718,6 +713,7 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private final Function<Map.Entry<InventoryItem, Integer>, Comparable<?>> fnNewCompare = from -> AdventurePlayer.current().getNewCards().contains((PaperCard) from.getKey()) ? Integer.valueOf(1) : Integer.valueOf(0);
|
||||
private final Function<Map.Entry<? extends InventoryItem, Integer>, Object> fnNewGet = from -> AdventurePlayer.current().getNewCards().contains((PaperCard) from.getKey()) ? "NEW" : "";
|
||||
public static final Function<Map.Entry<InventoryItem, Integer>, Comparable<?>> fnDeckCompare = from -> decksUsingMyCards.count(from.getKey());
|
||||
@@ -739,6 +735,7 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
public void addCard(PaperCard card) {
|
||||
addCard(card, 1);
|
||||
}
|
||||
|
||||
public void addCard(PaperCard card, int qty) {
|
||||
if (canAddCards()) {
|
||||
cardManager.addItem(card, qty);
|
||||
@@ -750,6 +747,7 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
public void removeCard(PaperCard card) {
|
||||
removeCard(card, 1);
|
||||
}
|
||||
|
||||
public void removeCard(PaperCard card, int qty) {
|
||||
cardManager.removeItem(card, qty);
|
||||
updateCaption();
|
||||
@@ -764,6 +762,7 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
}
|
||||
|
||||
protected abstract void onCardActivated(PaperCard card);
|
||||
|
||||
protected abstract void buildMenu(final FDropDownMenu menu, final PaperCard card);
|
||||
|
||||
private ItemPool<PaperCard> getAllowedAdditions(Iterable<Map.Entry<PaperCard, Integer>> itemsToAdd, boolean isAddSource) {
|
||||
@@ -776,11 +775,9 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
int max;
|
||||
if (deck == null || card == null) {
|
||||
max = Integer.MAX_VALUE;
|
||||
}
|
||||
else if (DeckFormat.canHaveAnyNumberOf(card)) {
|
||||
} else if (DeckFormat.canHaveAnyNumberOf(card)) {
|
||||
max = Integer.MAX_VALUE;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
max = FModel.getPreferences().getPrefInt(ForgePreferences.FPref.DECK_DEFAULT_CARD_LIMIT);
|
||||
|
||||
Integer cardCopies = DeckFormat.canHaveSpecificNumberInDeck(card);
|
||||
@@ -794,8 +791,7 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
int qty;
|
||||
if (isAddSource) {
|
||||
qty = itemEntry.getValue();
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
try {
|
||||
qty = parentScreen.getCatalogPage().cardManager.getItemCount(card);
|
||||
} catch (Exception e) {
|
||||
@@ -833,7 +829,9 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
|
||||
protected void addItem(FDropDownMenu menu, final String verb, String dest, FImage icon, boolean isAddMenu, boolean isAddSource, final Callback<Integer> callback) {
|
||||
final int max = getMaxMoveQuantity(isAddMenu, isAddSource);
|
||||
if (max == 0) { return; }
|
||||
if (max == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
String label = verb;
|
||||
if (!StringUtils.isEmpty(dest)) {
|
||||
@@ -859,7 +857,9 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
addItem(menu, "Set", "as " + captionSuffix, parentScreen.getCommanderPage().getIcon(), isAddMenu, isAddSource, new Callback<Integer>() {
|
||||
@Override
|
||||
public void run(Integer result) {
|
||||
if (result == null || result <= 0) { return; }
|
||||
if (result == null || result <= 0) {
|
||||
return;
|
||||
}
|
||||
setCommander(card);
|
||||
}
|
||||
});
|
||||
@@ -868,7 +868,9 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
addItem(menu, "Set", "as Partner " + captionSuffix, parentScreen.getCommanderPage().getIcon(), isAddMenu, isAddSource, new Callback<Integer>() {
|
||||
@Override
|
||||
public void run(Integer result) {
|
||||
if (result == null || result <= 0) { return; }
|
||||
if (result == null || result <= 0) {
|
||||
return;
|
||||
}
|
||||
setPartnerCommander(card);
|
||||
}
|
||||
});
|
||||
@@ -877,7 +879,9 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
addItem(menu, "Set", "as Signature Spell", FSkinImage.SORCERY, isAddMenu, isAddSource, new Callback<Integer>() {
|
||||
@Override
|
||||
public void run(Integer result) {
|
||||
if (result == null || result <= 0) { return; }
|
||||
if (result == null || result <= 0) {
|
||||
return;
|
||||
}
|
||||
setSignatureSpell(card);
|
||||
}
|
||||
});
|
||||
@@ -959,6 +963,7 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
private boolean initialized, needRefreshWhenShown;
|
||||
|
||||
boolean showCollectionCards = true, showAutoSellCards = false, showNoSellCards = true;
|
||||
|
||||
public void showAllCards() {
|
||||
showCollectionCards = true;
|
||||
showAutoSellCards = true;
|
||||
@@ -985,9 +990,11 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
super(config, caption0, icon0);
|
||||
refresh();
|
||||
}
|
||||
|
||||
private void setNextSelected() {
|
||||
setNextSelected(1);
|
||||
}
|
||||
|
||||
private void setNextSelected(int val) {
|
||||
if (cardManager.getItemCount() < 1)
|
||||
return;
|
||||
@@ -997,9 +1004,11 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
cardManager.setSelectedIndex(cardManager.getSelectedIndex() + 1);
|
||||
}
|
||||
}
|
||||
|
||||
private void setPreviousSelected() {
|
||||
setPreviousSelected(1);
|
||||
}
|
||||
|
||||
private void setPreviousSelected(int val) {
|
||||
if (cardManager.getItemCount() < 1)
|
||||
return;
|
||||
@@ -1012,7 +1021,9 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
|
||||
@Override
|
||||
protected void initialize() {
|
||||
if (initialized) { return; } //prevent initializing more than once if deck changes
|
||||
if (initialized) {
|
||||
return;
|
||||
} //prevent initializing more than once if deck changes
|
||||
initialized = true;
|
||||
|
||||
super.initialize();
|
||||
@@ -1020,7 +1031,6 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
|
||||
if (!isVisible()) {
|
||||
needRefreshWhenShown = true;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1039,7 +1049,9 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
|
||||
@Override
|
||||
public void setVisible(boolean visible0) {
|
||||
if (isVisible() == visible0) { return; }
|
||||
if (isVisible() == visible0) {
|
||||
return;
|
||||
}
|
||||
|
||||
super.setVisible(visible0);
|
||||
if (visible0 && needRefreshWhenShown) {
|
||||
@@ -1062,8 +1074,7 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
if (showNoSellCards) {
|
||||
adventurePool.addAll(AdventurePlayer.current().getNoSellCards());
|
||||
adventurePool.removeAll(cardsInUse);
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
cardsInUse.removeAll(AdventurePlayer.current().getNoSellCards());
|
||||
adventurePool.removeAll(cardsInUse);
|
||||
}
|
||||
@@ -1095,12 +1106,13 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
@Override
|
||||
protected void buildMenu(final FDropDownMenu menu, final PaperCard card) {
|
||||
if (!needsCommander() && !canOnlyBePartnerCommander(card)) {
|
||||
if(!parentScreen.isShop)
|
||||
{
|
||||
if (!parentScreen.isShop) {
|
||||
addItem(menu, Forge.getLocalizer().getMessage("lblAdd"), Forge.getLocalizer().getMessage("lblTo") + " " + getMainDeckPage().cardManager.getCaption(), getMainDeckPage().getIcon(), true, true, new Callback<Integer>() {
|
||||
@Override
|
||||
public void run(Integer result) {
|
||||
if (result == null || result <= 0) { return; }
|
||||
if (result == null || result <= 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!cardManager.isInfinite()) {
|
||||
removeCard(card, result);
|
||||
@@ -1112,7 +1124,9 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
addItem(menu, Forge.getLocalizer().getMessage("lblAdd"), Forge.getLocalizer().getMessage("lbltosideboard"), getSideboardPage().getIcon(), true, true, new Callback<Integer>() {
|
||||
@Override
|
||||
public void run(Integer result) {
|
||||
if (result == null || result <= 0) { return; }
|
||||
if (result == null || result <= 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!cardManager.isInfinite()) {
|
||||
removeCard(card, result);
|
||||
@@ -1145,9 +1159,11 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
protected static class DeckSectionPage extends CardManagerPage {
|
||||
private final String captionPrefix;
|
||||
private final DeckSection deckSection;
|
||||
|
||||
private void setNextSelected() {
|
||||
setNextSelected(1);
|
||||
}
|
||||
|
||||
private void setNextSelected(int val) {
|
||||
if (cardManager.getItemCount() < 1)
|
||||
return;
|
||||
@@ -1157,9 +1173,11 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
cardManager.setSelectedIndex(cardManager.getSelectedIndex() + 1);
|
||||
}
|
||||
}
|
||||
|
||||
private void setPreviousSelected() {
|
||||
setPreviousSelected(1);
|
||||
}
|
||||
|
||||
private void setPreviousSelected(int val) {
|
||||
if (cardManager.getItemCount() < 1)
|
||||
return;
|
||||
@@ -1212,15 +1230,16 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
|
||||
@Override
|
||||
protected void onCardActivated(PaperCard card) {
|
||||
CatalogPage catalog = parentScreen == null ? null : parentScreen.getCatalogPage();
|
||||
switch (deckSection) {
|
||||
case Main:
|
||||
case Planes:
|
||||
case Schemes:
|
||||
removeCard(card);
|
||||
if (parentScreen.getCatalogPage() != null && currentEvent == null || currentEvent.getDraft() == null) {
|
||||
parentScreen.getCatalogPage().addCard(card);
|
||||
}
|
||||
else if (getSideboardPage() != null) {
|
||||
if (currentEvent == null || currentEvent.getDraft() == null) {
|
||||
if (catalog != null)
|
||||
catalog.addCard(card);
|
||||
} else if (getSideboardPage() != null) {
|
||||
getSideboardPage().addCard(card);
|
||||
}
|
||||
break;
|
||||
@@ -1235,17 +1254,21 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
|
||||
@Override
|
||||
protected void buildMenu(final FDropDownMenu menu, final PaperCard card) {
|
||||
CatalogPage catalog = parentScreen == null ? null : parentScreen.getCatalogPage();
|
||||
switch (deckSection) {
|
||||
default:
|
||||
case Main:
|
||||
addItem(menu, Forge.getLocalizer().getMessage("lblAdd"), null, Forge.hdbuttons ? FSkinImage.HDPLUS : FSkinImage.PLUS, true, false, new Callback<Integer>() {
|
||||
@Override
|
||||
public void run(Integer result) {
|
||||
if (result == null || result <= 0) { return; }
|
||||
if (result == null || result <= 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
parentScreen.getCatalogPage().removeCard(card, result);
|
||||
if (catalog != null) {
|
||||
catalog.removeCard(card, result);
|
||||
addCard(card, result);
|
||||
}
|
||||
}
|
||||
});
|
||||
if (currentEvent == null) {
|
||||
addItem(menu, Forge.getLocalizer().getMessage("lblRemove"), null, Forge.hdbuttons ? FSkinImage.HDMINUS : FSkinImage.MINUS, false, false, new Callback<Integer>() {
|
||||
@@ -1255,9 +1278,9 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
return;
|
||||
}
|
||||
|
||||
if (catalog != null) {
|
||||
removeCard(card, result);
|
||||
if (parentScreen.getCatalogPage() != null) {
|
||||
parentScreen.getCatalogPage().addCard(card, result);
|
||||
catalog.addCard(card, result);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -1266,7 +1289,9 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
addItem(menu, Forge.getLocalizer().getMessage("lblMove"), Forge.getLocalizer().getMessage("lbltosideboard"), getSideboardPage().getIcon(), false, false, new Callback<Integer>() {
|
||||
@Override
|
||||
public void run(Integer result) {
|
||||
if (result == null || result <= 0) { return; }
|
||||
if (result == null || result <= 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
removeCard(card, result);
|
||||
getSideboardPage().addCard(card, result);
|
||||
@@ -1279,11 +1304,15 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
addItem(menu, Forge.getLocalizer().getMessage("lblAdd"), null, Forge.hdbuttons ? FSkinImage.HDPLUS : FSkinImage.PLUS, true, false, new Callback<Integer>() {
|
||||
@Override
|
||||
public void run(Integer result) {
|
||||
if (result == null || result <= 0) { return; }
|
||||
if (result == null || result <= 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
parentScreen.getCatalogPage().removeCard(card, result);
|
||||
if (catalog != null) {
|
||||
catalog.removeCard(card, result);
|
||||
addCard(card, result);
|
||||
}
|
||||
}
|
||||
});
|
||||
if (currentEvent == null) {
|
||||
addItem(menu, Forge.getLocalizer().getMessage("lblRemove"), null, Forge.hdbuttons ? FSkinImage.HDMINUS : FSkinImage.MINUS, false, false, new Callback<Integer>() {
|
||||
@@ -1293,9 +1322,9 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
return;
|
||||
}
|
||||
|
||||
if (catalog != null) {
|
||||
removeCard(card, result);
|
||||
if (parentScreen.getCatalogPage() != null) {
|
||||
parentScreen.getCatalogPage().addCard(card, result);
|
||||
catalog.addCard(card, result);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -1303,7 +1332,9 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
addItem(menu, Forge.getLocalizer().getMessage("lblMove"), Forge.getLocalizer().getMessage("lblToMainDeck"), getMainDeckPage().getIcon(), false, false, new Callback<Integer>() {
|
||||
@Override
|
||||
public void run(Integer result) {
|
||||
if (result == null || result <= 0) { return; }
|
||||
if (result == null || result <= 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
removeCard(card, result);
|
||||
getMainDeckPage().addCard(card, result);
|
||||
@@ -1320,13 +1351,18 @@ public class AdventureDeckEditor extends TabPageScreen<AdventureDeckEditor> {
|
||||
return;
|
||||
}
|
||||
|
||||
if (catalog != null) {
|
||||
removeCard(card, result);
|
||||
parentScreen.getCatalogPage().refresh(); //refresh so commander options shown again
|
||||
parentScreen.setSelectedPage(parentScreen.getCatalogPage());
|
||||
catalog.refresh(); //refresh so commander options shown again
|
||||
if (parentScreen != null)
|
||||
parentScreen.setSelectedPage(catalog);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user