This is my whole program, I don't know if it helps that i posted all but the if statement is in line 38 . I don't know why the if statement does nothing, even though the condition is true sometimes (i printed position_enemy1_x and position_enemy1_y after they got random values and then typed them in attacked_position_x and attacked_position_y but it still didn't run).
import random
class Enemy :
life = 50
def attack (self) :
self.power = random.randrange(1, 15)
return self.power
def position (self) :
self.xposition = random.randrange(1, 4)
self.yposition = random.randrange(1, 4)
return self.xposition, self.yposition
def life_check_enemy (self) :
if(self.life > 0) :
print("The enemy has " + str(self.life) + " life left" )
else :
print("An enemy is dead.")
return self.life
def my_life_check ( remained_life ) :
if remained_life < 0 :
print("You lost")
else :
print("It's your turn now!")
my_life = 200
enemy1 = Enemy ()
enemy2 = Enemy ()
life_enemy1 = enemy1.life_check_enemy()
life_enemy2 = enemy2.life_check_enemy()
while (life_enemy1 > 0) or (life_enemy2 > 0):
power1 = enemy1.attack()
power2 = enemy2.attack()
my_life = my_life - power1 - power2
my_life_check(my_life)
print("The position I attack is ")
attacked_position_x = input()
attacked_position_y = input()
(position_enemy1_x, position_enemy1_y) = enemy1.position()
(position_enemy2_x, position_enemy2_y) = enemy2.position()
if (position_enemy1_x, position_enemy1_y) == (attacked_position_x, attacked_position_y) :
my_power = random.randrange (10, 20)
life_enemy1 = life_enemy1 - my_power
enemy1.life_check_enemy()
elif (position_enemy2_x, position_enemy2_y) == (attacked_position_x, attacked_position_y) :
my_power = random.randrange (10, 20)
life_enemy2 = life_enemy2 - my_power
enemy2.life_check_enemy()
else:
print("You did't get anybody! Next time maybe!")
print(my_life)
Aucun commentaire:
Enregistrer un commentaire