Hola, cuando deberia de ser empate, en vez de avisar “Empate!”, avisa “Gano el jugador numero 1”, y no entiendo porque , si conocen alguna manera que no sea usando:
if self.nave1.vida==1:
if self.nave2.vida==1:
y que sea algo como:
if self.nave1.vida==1 && self.nave2.vida==1::
me ayudarian bastante!
Aqui les dejo el codigo completo:
if self.nave1.vida==1:
if self.nave2.vida==1:
pilas.avisar("Empate!")
if self.nave2.vida==1:
pilas.avisar("Gano el jugador numero 1")
if self.nave1.vida==1:
pilas.avisar("Gano el jugador numero 2")
A veces vale la pena buscar recursos externos, sobre todo cuando se tiene dudas con el mismo Python, que es el lenguaje en el que se basa Pilas-Engine.
En Python que yo sepa no se usa ni & ni && como operador lógico “AND” (como sí sucede en PHP o JavaScript, por ejemplo).
En este enlace tienes el uso de los "if… elif… else…, y de “and” y “or”:
Por tanto tu código podrá ser algo parecido a esto (CÓDIGO DE EJEMPLO,SIN TESTAR):
if self.nave1.vida==1 and self.nave2.vida==1:
pilas.avisar("Empate!")
elif self.nave2.vida==1:
pilas.avisar("Gano el jugador numero 1")
elif self.nave1.vida==1:
pilas.avisar("Gano el jugador numero 2")
else:
pass