Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 7cc1d74

Browse files
committed
pythonbirds finalizado
1 parent f8f14af commit 7cc1d74

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

atores.py

+9-5
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,8 @@ def colidir_com_chao(self):
107107
o status dos Passaro deve ser alterado para destruido, bem como o seu caracter
108108
109109
"""
110-
pass
110+
if self.y<=0:
111+
self.status = DESTRUIDO
111112

112113
def calcular_posicao(self, tempo):
113114
"""
@@ -123,7 +124,7 @@ def calcular_posicao(self, tempo):
123124
:param tempo: tempo de jogo a ser calculada a posição
124125
:return: posição x, y
125126
"""
126-
if self.foi_lancado():
127+
if self.esta_voando():
127128
delta_t= tempo-self._tempo_de_lancamento
128129
self._calcular_posicao_vertical(delta_t)
129130
self._calcular_posicao_horizontal(delta_t)
@@ -140,21 +141,24 @@ def lancar(self, angulo, tempo_de_lancamento):
140141
:return:
141142
"""
142143
self._tempo_de_lancamento = tempo_de_lancamento
143-
self._angulo_de_lancamento = angulo
144+
self._angulo_de_lancamento = math.radians(angulo)
144145

145146
def _calcular_posicao_vertical(self, delta_t):
146147
y_atual= self._y_inicial
147-
angulo_radianos = math.radians(self._angulo_de_lancamento)
148+
angulo_radianos = self._angulo_de_lancamento
148149
y_atual +=self.velocidade_escalar*delta_t*math.sin(angulo_radianos)
149150
y_atual -= (GRAVIDADE*delta_t**2)/ 2
150151
self.y = y_atual
151152

152153
def _calcular_posicao_horizontal(self, delta_t):
153154
x_atual= self._x_inicial
154-
angulo_radianos = math.radians(self._angulo_de_lancamento)
155+
angulo_radianos = self._angulo_de_lancamento
155156
x_atual+= self.velocidade_escalar*delta_t*math.cos(angulo_radianos)
156157
self.x = x_atual
157158

159+
def esta_voando(self):
160+
return self.foi_lancado() and self.status == ATIVO
161+
158162

159163
class PassaroAmarelo(Passaro):
160164
_caracter_ativo = 'A'

0 commit comments

Comments
 (0)