Não consigo pausar meu jogo!

2 respostas
R

tenho o seguinte código no loop principal do meu jogo:

while (rodando) {
			long start = System.currentTimeMillis();
			if (tmrTempoInicio != null) {
				if (tempoInicio < 0) {
					tmrTempoInicio.cancel();
					tmrTempoInicio = null;
				}
			} else {
				input();
				construtores();
				arqueiros();
				flechas();
				inserirInimigos();
				inimigos();
				muralhas();
				oleoFervente();
			}
			renderiza(g);

long end = System.currentTimeMillis();
int duration = (int) (end - start);

if (duration < timeStep) {
try {
Thread.sleep(timeStep - duration);
} catch (InterruptedException ie) {
stop();
}
}
}

Tento pausar da seguinte maneira:

2 Respostas

C

Vc não deve matar o loop, vc deve desviar a execução.
Por exemplo, ao invés de processar tudo aquilo ele deve desviar a execução para um Thread.sleep(someTime);
Até que seja “unpaused”, ai entao ele volta a processar o que deve ser processado no loop.
Vc pode fazer isso com um IF dentro desse loop.

Falow!

R

Valeu! Realmente assim funciona e é bem simples!

Criado 30 de março de 2006
Ultima resposta 1 de abr. de 2006
Respostas 2
Participantes 2