Prevent crash when trying to view deck list before a player has priority

This commit is contained in:
drdev
2015-05-30 17:23:46 +00:00
parent 9efcda5d4d
commit b43d9b3eed

View File

@@ -3,12 +3,14 @@ package forge.screens.match.views;
import forge.assets.FSkinImage; import forge.assets.FSkinImage;
import forge.deck.Deck; import forge.deck.Deck;
import forge.deck.FDeckViewer; import forge.deck.FDeckViewer;
import forge.game.player.Player;
import forge.menu.FDropDownMenu; import forge.menu.FDropDownMenu;
import forge.menu.FMenuItem; import forge.menu.FMenuItem;
import forge.screens.match.MatchController; import forge.screens.match.MatchController;
import forge.screens.settings.SettingsScreen; import forge.screens.settings.SettingsScreen;
import forge.toolbox.FEvent; import forge.toolbox.FEvent;
import forge.toolbox.FEvent.FEventHandler; import forge.toolbox.FEvent.FEventHandler;
import forge.toolbox.FOptionPane;
import forge.util.ThreadUtil; import forge.util.ThreadUtil;
public class VGameMenu extends FDropDownMenu { public class VGameMenu extends FDropDownMenu {
@@ -45,11 +47,16 @@ public class VGameMenu extends FDropDownMenu {
addItem(new FMenuItem("Deck List", FSkinImage.DECKLIST, new FEventHandler() { addItem(new FMenuItem("Deck List", FSkinImage.DECKLIST, new FEventHandler() {
@Override @Override
public void handleEvent(FEvent e) { public void handleEvent(FEvent e) {
final Deck deck = MatchController.getHostedMatch().getGame().getPhaseHandler().getPlayerTurn().getRegisteredPlayer().getDeck(); final Player player = MatchController.getHostedMatch().getGame().getPhaseHandler().getPlayerTurn();
if (player != null) {
final Deck deck = player.getRegisteredPlayer().getDeck();
if (deck != null) { if (deck != null) {
FDeckViewer.show(deck); FDeckViewer.show(deck);
return;
} }
} }
FOptionPane.showMessageDialog("No player has priority at the moment, so deck list can't be viewed.");
}
})); }));
addItem(new FMenuItem("Auto-Yields", FSkinImage.WARNING, new FEventHandler() { addItem(new FMenuItem("Auto-Yields", FSkinImage.WARNING, new FEventHandler() {
@Override @Override