-1
我正在用java製作遊戲,並且正在嘗試製作暫停菜單。此刻我正在檢查正在按下的esc按鈕並運行我的菜單JFrame。問題是我的遊戲一直在後臺運行。如何在菜單打開時暫停遊戲線程?單獨的JFrame打開時暫停遊戲線程
代碼是遊戲的主要循環
public void run() {
try {
init();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
long lastTime = System.nanoTime();
final double amountOfTicks = 60D;
double ns = 1000000000/amountOfTicks;
double delta = 0;
while(running){
long now = System.nanoTime();
delta +=(now - lastTime)/ns;
lastTime = now;
if (delta >= 1) {
tick();
delta--;
}
render();
}
stop();
}
代碼檢查暫停菜單
public void tick() {
if (up) {
playerUp = true;
playerDown = false;
playerLeft = false;
playerRight = false;
y -= SPEED;
moving = true;
}
if (dn) {
playerDown = true;
playerLeft = false;
playerRight = false;
playerUp = false;
y += SPEED;
moving = true;
}
if (lt) {
playerLeft = true;
playerRight = false;
playerDown = false;
playerUp = false;
x -= SPEED;
moving = true;
}
if (rt) {
playerRight = true;
playerLeft = false;
playerUp = false;
playerDown = false;
x += SPEED;
moving = true;
}
if (esc) {
pauseMenu.main(null);
}
請分享示例代碼。 – Braj
也許看:http://stackoverflow.com/questions/8299010/how-to-pause-and-resume-a-simple-game-in-java爲一個小樣本...如果不幫助顯示一些你的代碼 – pL4Gu33
編輯包含代碼的問題 –