while playerhealth and monsterhealth > 0:
x=raw_input('Attack or Run? >')
if x=='Attack' or 'attack':
print 'You attack the %r!' %monster
if playerstats[2]>=monsterstats[3]:
print 'You attack!'
currmonhealth-=(playerstats[0]-monsterstats[2])
print 'The monster attacks!'
playerhealth-=(monsterstats[1]-playerstats[1])
if monsterhealth<=0:
return 'The monster died!'
if playerhealth<=0:
return 'You died!'
print currmonhealth
print playerhealth
if monsterstats[2]<monsterstats[3]:
print 'The monster attacks!'
playerhealth-=(monsterstats[1]-playerstats[1])
print 'You attack!'
print currmonhealth
print playerhealth
currmonhealth-=(playerstats[0]-monsterstats[2])
if monsterhealth<=0:
return 'The monster died!'
if playerhealth<=0:
return 'You died!'
elif x=='Run' or 'run':
c=random.randint(0,1)
if c==0:
return 'You made it!'
if c==1:
print 'You didn\'t make it!'
print 'The monster attacks!'
playerhealth-=(monsterstats[1]-playerstats[1])
if playerhealth<=0:
return 'You died!'
else:
print 'You can\'t do that!'
* Извините, обо всем этом. Когда я пытаюсь запустить это, он печатает здоровье монстра и здоровье игрока, но позволяет ему опускаться ниже нуля, не заканчивая цикл. Может ли кто-нибудь объяснить, в чем проблема, почему цикл не заканчивается? *Пока цикл не заканчивается
Я думаю, что вы хотите изменить в то время как playerhealth и monsterhealth> 0 в то время как playerhealth> 0 и monsterhealth> 0 –
Вы декремента и печати currmonhealth, но ваша петля условие проверяет переменную monsterhealth, которая, кажется, не изменяется в вашем блоке цикла – Unda