Здравствуйте, писал уже вчера, мне помогли решить задачку, правда теперь я так запутался с циклами что не понятно.
Проблема вот такая, программа теперь, если введено значение <1, просит пользователя заново ввести кол-во ударов, а сам код дальше не проигрывает так сказать "зацикливаясь" на одном)
Я понимаю, что я где-то допустил ошибку.
Подскажите, пожалуйста.
(Код также залил на pastebin-https://pastebin.com/2giV4rQy)
Проблема вот такая, программа теперь, если введено значение <1, просит пользователя заново ввести кол-во ударов, а сам код дальше не проигрывает так сказать "зацикливаясь" на одном)
Я понимаю, что я где-то допустил ошибку.
Подскажите, пожалуйста.
(Код также залил на pastebin-https://pastebin.com/2giV4rQy)
Python:
import time
stats = [["энергия",6],["здоровье", 10]]#Статистика персонажа
statsM = [["здоровье", 7]]#Статистика врага
print("Ваша статистика")
print (stats)
print("Стастика врага")
print (statsM)
time.sleep(6)
while statsM[0][1] != 0:
while True:
attack=input("Какое количество ударов нанести?:")
if attack<"1":
print("Вы вступили в бой, необходимо нанести удары")
continue
break
if attack=="1":
stats[0][1] -= 1#вычитаем одну энергию
statsM[0][1] -= 1#вычитаем одно здоровье у врага
if attack=="2":
stats[0][1] -= 2
statsM[0][1] -= 2
if attack=="3":
stats[0][1] -= 3
statsM[0][1] -= 3
if attack=="4":
stats[0][1] -= 4
statsM[0][1] -= 4
if attack=="5":
stats[0][1] -= 5
statsM[0][1] -= 5
if attack=="6":
stats[0][1] -= 6
statsM[0][1] -= 6
while attack > "6":
while True:
attack=input("Какое количество ударов нанести?:")
if attack>"6":
print("У вас не хватает энергии")
continue
break
while statsM[0][1] != 0:
while True:
if attack=="1":
stats[0][1] -= 1#вычитаем одну энергию
statsM[0][1] -= 1#вычитаем одно здоровье у врага
if attack=="2":
stats[0][1] -= 2
statsM[0][1] -= 2
if attack=="3":
stats[0][1] -= 3
statsM[0][1] -= 3
if attack=="4":
stats[0][1] -= 4
statsM[0][1] -= 4
if attack=="5":
stats[0][1] -= 5
statsM[0][1] -= 5
if attack=="6":
stats[0][1] -= 6
statsM[0][1] -= 6
break
while statsM[0][1] != 0:
while True:
if statsM[0][1] == 0:
continue
break
print("Ваша статистика")
print (stats)
print("Стастика врага")
print (statsM)
time.sleep(4)
print("Ход врага")
time.sleep(2)
print("...")
time.sleep(1)
while defense!=1 or defense!=2:
while True:
defense=input("Враг сейчас нанесет вам 1 урон.1)Уклониться (-1 энергия); 2) Принять удар (0 энергии):") # уклонения тратят столько энергии, сколько урона наносит враг
continue
break
if defense=="1":
print("Вы уклонились от атаки ")
stats[0][1] -= 1
print("Ваша статистика")
print (stats)
print("Стастика врага")
print (statsM)
if defense=="2":
print("Вы получили 1 урон ")
print("Ваша статистика")
print (stats)
print("Стастика врага")
print (statsM)