archivo al momento de la entrega
This commit is contained in:
79
main.py
Normal file
79
main.py
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
# Ejercicio 1
|
||||||
|
class Persona():
|
||||||
|
def __init__(self, vida, posicion, velocidad):
|
||||||
|
self._vida = vida
|
||||||
|
self._posicion = posicion
|
||||||
|
self._velocidad = velocidad
|
||||||
|
|
||||||
|
def recibir_ataque(self, ataque):
|
||||||
|
if (self._vida <= ataque):
|
||||||
|
self._vida = 0
|
||||||
|
print("La vida de la persona llego a 0")
|
||||||
|
else:
|
||||||
|
self._vida -= ataque
|
||||||
|
|
||||||
|
|
||||||
|
def mover(self, direccion):
|
||||||
|
if (direccion == "up"):
|
||||||
|
self._posicion["y"]+=self._velocidad
|
||||||
|
elif (direccion == "down"):
|
||||||
|
self._posicion["y"]-=self._velocidad
|
||||||
|
elif (direccion == "left"):
|
||||||
|
self._posicion["x"]-=self._velocidad
|
||||||
|
elif (direccion == "right"):
|
||||||
|
self._posicion["x"]+=self._velocidad
|
||||||
|
|
||||||
|
def state(self):
|
||||||
|
return f"vida: {self._vida }, posicion: {self._posicion}, velocidad: {self._velocidad}"
|
||||||
|
# Ejercicio2
|
||||||
|
class Soldado(Persona):
|
||||||
|
|
||||||
|
def __init__(self, vida, posicion, velocidad, ataque):
|
||||||
|
super().__init__(vida, posicion, velocidad)
|
||||||
|
self._ataque = ataque
|
||||||
|
|
||||||
|
def atacar(self, personaje):
|
||||||
|
personaje.recibir_ataque(self._ataque)
|
||||||
|
|
||||||
|
|
||||||
|
#Ejercicio 3
|
||||||
|
class Campesino(Persona):
|
||||||
|
|
||||||
|
def __init__(self, vida, posicion, velocidad, cosecha):
|
||||||
|
super().__init__(vida, posicion, velocidad)
|
||||||
|
self._cosecha = cosecha
|
||||||
|
|
||||||
|
def cosechar(self):
|
||||||
|
print(f"Cantidad Cosechada {self._cosecha} ")
|
||||||
|
|
||||||
|
# ejercicio 4. ?? el campesino no puede atacar
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
soldado = Soldado(10, {"x": 0, "y":0}, 5, 5 )
|
||||||
|
campe = Campesino(10, {"x":0,"y":0}, 2, 50)
|
||||||
|
persona = Persona(10, {"x":0, "y":0}, 10)
|
||||||
|
|
||||||
|
|
||||||
|
print("=====Estado Inicial======")
|
||||||
|
print(soldado.state())
|
||||||
|
print(campe.state())
|
||||||
|
print(persona.state())
|
||||||
|
|
||||||
|
print("=====Campesino muestra cosecha=====")
|
||||||
|
campe.cosechar()
|
||||||
|
|
||||||
|
print("=====Soldado se mueve=====")
|
||||||
|
soldado.mover("up")
|
||||||
|
soldado.mover("left")
|
||||||
|
print(soldado.state())
|
||||||
|
|
||||||
|
print("=====Soldado ataca 2 veces al campesino y una a la persona=====")
|
||||||
|
soldado.atacar(campe)
|
||||||
|
soldado.atacar(campe)
|
||||||
|
|
||||||
|
soldado.atacar(persona)
|
||||||
|
|
||||||
|
print(campe.state())
|
||||||
|
print(persona.state())
|
||||||
|
|
||||||
Reference in New Issue
Block a user