Skip to content

Commit 795c03b

Browse files
author
renzon
committed
Jogar novamente funcionando. Agora tá profissa =D
1 parent 7079987 commit 795c03b

3 files changed

Lines changed: 19 additions & 3 deletions

File tree

atores.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ def __init__(self, x=0, y=0):
2222
self.x = x
2323
self._tempo_de_colisao = None
2424

25+
def resetar(self):
26+
self._tempo_de_colisao = None
27+
2528
def status(self, tempo):
2629
if self._tempo_de_colisao is None or self._tempo_de_colisao > tempo:
2730
return ATIVO
@@ -71,6 +74,12 @@ def __init__(self, x=0, y=0):
7174
self._tempo_de_lancamento = None
7275
self._angulo_de_lancamento = None # radianos
7376

77+
def resetar(self):
78+
super().resetar()
79+
self._tempo_de_lancamento = None
80+
self._angulo_de_lancamento = None
81+
82+
7483
def foi_lancado(self):
7584
return self._tempo_de_lancamento is not None
7685

@@ -112,7 +121,6 @@ class PassaroAmarelo(Passaro):
112121
_caracter_destruido = 'a'
113122

114123

115-
116124
class PassaroVermelho(Passaro):
117125
velocidade_escalar = 20 # m/s
118126
_caracter_ativo = 'V'

fase.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,10 @@ def lancar(self, angulo, tempo):
5252
passaro.lancar(angulo, tempo)
5353
return
5454

55+
def resetar(self):
56+
for ator in chain(self._passaros,self._obstaculos,self._porcos):
57+
ator.resetar()
58+
5559
def calcular_pontos(self, tempo):
5660
pontos = [self._calcular_ponto_de_passaro(p, tempo) for p in self._passaros]
5761
obstaculos_e_porcos = chain(self._obstaculos, self._porcos)

placa_grafica_tkinter.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,12 @@ def _replay(event):
9696

9797

9898
def _jogar_novamente(event):
99-
# verificar se a fase ja acabou
100-
pass
99+
nonlocal tempo
100+
nonlocal delta_t
101+
if fase.acabou(tempo):
102+
tempo = delta_t
103+
fase.resetar()
104+
_animar()
101105

102106
def _finalizar(event):
103107
root.destroy()

0 commit comments

Comments
 (0)