Support passing priority

This commit is contained in:
drdev
2014-03-09 21:20:08 +00:00
parent 5a821a7e3f
commit eed7fbbabf
5 changed files with 15 additions and 19 deletions

View File

@@ -2,6 +2,8 @@ package forge;
import java.io.PrintStream;
import com.badlogic.gdx.Gdx;
import forge.util.ThreadUtil;
/**
@@ -16,7 +18,7 @@ public class FThreads {
}
public static void invokeInEdtLater(Runnable runnable) {
//SwingUtilities.invokeLater(runnable);
Gdx.app.postRunnable(runnable);
}
public static void invokeInEdtNowOrLater(Runnable proc) {

View File

@@ -1,10 +1,10 @@
package forge.screens.constructed;
import forge.ai.LobbyPlayerAi;
import forge.deck.Deck;
import forge.game.GameType;
import forge.game.player.LobbyPlayer;
import forge.game.player.RegisteredPlayer;
import forge.player.LobbyPlayerHuman;
import forge.net.FServer;
import forge.screens.LaunchScreen;
import forge.utils.Utils;
@@ -25,15 +25,13 @@ public class ConstructedScreen extends LaunchScreen {
//TODO: Allow picking decks
Deck humanDeck = Utils.generateRandomDeck(2);
LobbyPlayerHuman humanLobbyPlayer = new LobbyPlayerHuman("Human");
humanLobbyPlayer.setAvatarIndex(0);
LobbyPlayer humanLobbyPlayer = FServer.getLobby().getGuiPlayer();
RegisteredPlayer humanRegisteredPlayer = new RegisteredPlayer(humanDeck);
humanRegisteredPlayer.setPlayer(humanLobbyPlayer);
launchParams.players.add(humanRegisteredPlayer);
Deck aiDeck = Utils.generateRandomDeck(2);
LobbyPlayerAi aiLobbyPlayer = new LobbyPlayerAi("AI Player");
aiLobbyPlayer.setAvatarIndex(1);
LobbyPlayer aiLobbyPlayer = FServer.getLobby().getAiPlayer();
RegisteredPlayer aiRegisteredPlayer = new RegisteredPlayer(aiDeck);
aiRegisteredPlayer.setPlayer(aiLobbyPlayer);
launchParams.players.add(aiRegisteredPlayer);

View File

@@ -118,9 +118,12 @@ public class FControlGameEventHandler extends IGameEventVisitor.Base<Void> {
return null;
}
private final Runnable unlockGameThreadOnGameOver = new Runnable() { @Override public void run() {
FControl.getInputQueue().onGameOver(true); // this will unlock any game threads waiting for inputs to complete
} };
private final Runnable unlockGameThreadOnGameOver = new Runnable() {
@Override
public void run() {
FControl.getInputQueue().onGameOver(true); // this will unlock any game threads waiting for inputs to complete
}
};
@Override
public Void visit(GameEventGameOutcome ev) {

View File

@@ -3,10 +3,6 @@ package forge.screens.match.input;
import forge.screens.match.FControl;
import forge.screens.match.FControlGamePlayback;
/**
* TODO: Write javadoc for this type.
*
*/
public class InputPlaybackControl extends InputSyncronizedBase implements InputSynchronized {
private static final long serialVersionUID = 7979208993306642072L;

View File

@@ -69,7 +69,7 @@ public class InputQueue extends Observable {
return topMost;
}
return inputLock;
} // getInput()
}
// only for debug purposes
public String printInputStack() {
@@ -88,9 +88,6 @@ public class InputQueue extends Observable {
}
}
/**
* TODO: Write javadoc for this method.
*/
public void onGameOver(boolean releaseAllInputs) {
for (InputSynchronized inp : inputStack) {
inp.relaseLatchWhenGameIsOver();
@@ -99,4 +96,4 @@ public class InputQueue extends Observable {
}
}
}
} // InputControl
}