Updated threading for quest start game process.

This commit is contained in:
Doublestrike
2012-03-09 03:55:12 +00:00
parent 7f822cefef
commit cb22007805

View File

@@ -4,6 +4,8 @@ import java.io.File;
import java.util.Set; import java.util.Set;
import javax.swing.ImageIcon; import javax.swing.ImageIcon;
import javax.swing.SwingUtilities;
import javax.swing.SwingWorker;
import net.miginfocom.swing.MigLayout; import net.miginfocom.swing.MigLayout;
import forge.AllZone; import forge.AllZone;
@@ -193,10 +195,17 @@ public class SubmenuQuestUtil {
final QuestData qData = AllZone.getQuestData(); final QuestData qData = AllZone.getQuestData();
final QuestEvent event = selectedOpponent.getEvent(); final QuestEvent event = selectedOpponent.getEvent();
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
OverlayUtils.startGameOverlay(); OverlayUtils.startGameOverlay();
OverlayUtils.showOverlay(); OverlayUtils.showOverlay();
}
});
// Logic final SwingWorker<Object, Void> worker = new SwingWorker<Object, Void>() {
@Override
public Object doInBackground() {
Constant.Runtime.HUMAN_DECK[0] = SubmenuQuestUtil.getCurrentDeck(); Constant.Runtime.HUMAN_DECK[0] = SubmenuQuestUtil.getCurrentDeck();
Constant.Runtime.COMPUTER_DECK[0] = event.getEventDeck(); Constant.Runtime.COMPUTER_DECK[0] = event.getEventDeck();
Constant.Quest.OPP_ICON_NAME[0] = event.getIconFilename(); Constant.Quest.OPP_ICON_NAME[0] = event.getIconFilename();
@@ -235,10 +244,16 @@ public class SubmenuQuestUtil {
else { else {
GameNew.newGame(SubmenuQuestUtil.getCurrentDeck(), event.getEventDeck()); GameNew.newGame(SubmenuQuestUtil.getCurrentDeck(), event.getEventDeck());
} }
return null;
}
// Start transisiton to match UI. @Override
public void done() {
OverlayUtils.hideOverlay(); OverlayUtils.hideOverlay();
} }
};
worker.execute();
}
/** Selectable panels for duels and challenges. */ /** Selectable panels for duels and challenges. */
@SuppressWarnings("serial") @SuppressWarnings("serial")