Ayuda Pygame: Menu Pausa
Publicado por Ele (1 intervención) el 19/11/2017 14:34:23
Buen día!
Soy ultra principiante con todo lo que respecta a la programación. Estoy tratando de terminar un juego muy sencillo que es parecido al Tetris.
El problema es que el juego usa una cuenta regresiva que hace que termine cuando llega a 0. Logré hacer un menú de Pausa que funciona bien para pausar la parte gráfica, pero el contador sigue corriendo y no encuentro cómo solucionarlo. Si se deja el juego pausado por mucho tiempo, el contador sigue corriendo y toma valores negativos y en cuanto se quiere salir del menú, termina.
Realmente no tengo mucha idea de cómo usar el tiempo del juego dentro de la función para que no siga corriendo. Lamentablemente el juego se empezó desde un template y no de cero.
Gracias a todos!
Soy ultra principiante con todo lo que respecta a la programación. Estoy tratando de terminar un juego muy sencillo que es parecido al Tetris.
El problema es que el juego usa una cuenta regresiva que hace que termine cuando llega a 0. Logré hacer un menú de Pausa que funciona bien para pausar la parte gráfica, pero el contador sigue corriendo y no encuentro cómo solucionarlo. Si se deja el juego pausado por mucho tiempo, el contador sigue corriendo y toma valores negativos y en cuanto se quiere salir del menú, termina.
Realmente no tengo mucha idea de cómo usar el tiempo del juego dentro de la función para que no siga corriendo. Lamentablemente el juego se empezó desde un template y no de cero.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#El tiempo del juego esta dado por:
def game():
### Resto del Codigo ###
framesInicio = 3
tiempoMax = 150
relojJuego = pygame.time.Clock()
ticksInicio = pygame.time.get_ticks()
tiempoTotal = 0
segundos = tiempoMax
ticksTrans = pygame.time.get_ticks() - ticksInicio
segundos = tiempoMax - ticksTrans / 1000
fps = framesInicio
band = True
while band:
if segundos <= 0:
band = False
#El juego termina cuando el contador llega a cero
gameClock.tick(fps)
tiempoTotal += gameClock.get_time()
fps = 15
### Resto del Codigo ###
#Menu pausa
def pausa():
pausa = True
while pausa:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
quit()
if event.type == KEYDOWN:
if event.key == K_p: #Quitar la Pausa
pausa = False
elif event.key == K_q: #Salir del juego
pygame.quit()
quit()
pygame.display.update()
Gracias a todos!
Valora esta pregunta


0