add code to exit from code

This commit is contained in:
yugecin 2017-01-18 16:55:30 +01:00
parent b1ccfe3019
commit 02863de1cf
3 changed files with 13 additions and 17 deletions

View File

@ -597,9 +597,7 @@ public class MainMenu extends BaseOpsuState {
} else if (restartButton.contains(x, y) && status == Updater.Status.UPDATE_DOWNLOADED) {
SoundController.playSound(SoundEffect.MENUHIT);
Updater.get().prepareUpdate();
// TODO: exit?
//container.setForceExit(false);
//container.exit();
displayContainer.exitRequested = true;
return true;
}
}
@ -624,8 +622,7 @@ public class MainMenu extends BaseOpsuState {
enterSongMenu();
return true;
} else if (exitButton.contains(x, y, 0.25f)) {
// TODO exit?
//container.exit();
displayContainer.exitRequested = true;
return true;
}
}

View File

@ -185,16 +185,14 @@ public class Splash extends BaseOpsuState {
@Override
public boolean keyPressed(int key, char c) {
if (key == Input.KEY_ESCAPE) {
// close program
if (++escapeCount >= 3) System.out.println("hi");
//container.exit(); // TODO
// stop parsing beatmaps by sending interrupt to BeatmapParser
else if (thread != null)
thread.interrupt();
return true;
if (key != Input.KEY_ESCAPE) {
return false;
}
return false;
if (++escapeCount >= 3) {
displayContainer.exitRequested = true;
} else if (thread != null) {
thread.interrupt();
}
return true;
}
}

View File

@ -93,6 +93,8 @@ public class DisplayContainer implements ErrorDumpable, KeyListener, MouseListen
public int renderDelta;
public int delta;
public boolean exitRequested;
public int timeSinceLastRender;
private long lastFrame;
@ -153,7 +155,7 @@ public class DisplayContainer implements ErrorDumpable, KeyListener, MouseListen
public void run() throws LWJGLException {
while(!(Display.isCloseRequested() && state.onCloseRequest())) {
while(!exitRequested && !(Display.isCloseRequested() && state.onCloseRequest())) {
delta = getDelta();
timeSinceLastRender += delta;
@ -196,7 +198,6 @@ public class DisplayContainer implements ErrorDumpable, KeyListener, MouseListen
Display.processMessages();
Display.sync(targetUpdatesPerSecond);
}
teardown();
}
public void setup() throws Exception {