【发布时间】:2016-06-02 00:45:21
【问题描述】:
我不知道如何询问用户是否想再玩一次,如果他们说y 它会循环回到开始或n 并退出游戏,我不知道该怎么做。我知道我可以使用循环,但我不知道如何使用它们。
import random
xp = 0
level = 1
player1 = raw_input("player1 enter name")
enemyhealth = 100
playerhealth = 100
stage2 = "false"
difficulty = raw_input("choose difficulty, rookie,pro,master,legend or god")
if difficulty == "rookie":
enemyhealth = enemyhealth - 15
if difficulty == "pro":
enemyhealth = enemyhealth + 10
if difficulty == "master":
enemyhealth = enemyhealth + 35
if difficulty == "legend":
enemyhealth = enemyhealth + 40
if difficulty == "god":
enemyhealth = enemyhealth + 60
print ("A quick tutorial: Make sure you type you actions with no spaces, heres a list of the moves you can perform")
print ("Punch: A simple attack that has a short range of damage but is reliable.")
print ("flyingkick: not 100 percent reliable but if pulled off correctly can deal good damage.")
print ("uppercut: A somewhat reliable move that deals decent damage.")
print ("kick: A simple attack that has a short range of damage but is reliable.")
print ("stab: can be very powerful or deal next to no damage.")
print ("shoot: deadly if it hits, less so if you miss.")
print ("A man in the street starts a fight with you, beat him!")
while enemyhealth >0:
fight = raw_input("fight")
if fight == "punch":
print ("You punched the enemy")
enemyhealth = enemyhealth - random.randint(5,10)
xp = xp + 1
print "the enemy now has", enemyhealth, "health"
print "they fight back!"
playerhealth = playerhealth - random.randint(5,10)
if stage2 == "true":
playerhealth = playerhealth - random.randit (0,5)
print "you now have..", playerhealth
elif fight =="flyingkick":
print "you flying kicked the enemy"
enemyhealth = enemyhealth - random.randint(5,25)
xp = xp + 1
print "the enemy now has", enemyhealth, "health"
print "they fight back!"
playerhealth = playerhealth - random.randint(5,15)
if stage2 == "true":
playerhealth = playerhealth - random.randit (0,5)
print "you now have..", playerhealth
elif fight =="uppercut":
print "you uppercutted the enemy"
enemyhealth = enemyhealth - random.randint(10,25)
xp = xp + 1
print "the enemy now has", enemyhealth, "health"
print "they fight back!"
playerhealth = playerhealth - random.randint(5,15)
if stage2 == "true":
playerhealth = playerhealth - random.randit (1,5)
print "you now have..", playerhealth
elif fight =="rko":
print "you rko'ed the enemy, out of nowhere!"
enemyhealth = enemyhealth - random.randint(9,29)
xp = xp + 1
print "the enemy now has", enemyhealth, "health"
print "they fight back!"
playerhealth = playerhealth - random.randint(5,12)
if stage2 == "true":
playerhealth = playerhealth - random.randit (1,5)
print "you now have..", playerhealth
elif fight =="kick":
print "you kicked the enemy"
enemyhealth = enemyhealth - random.randint(5,10)
xp = xp + 1
print "the enemy now has", enemyhealth, "health"
print "they fight back!"
playerhealth = playerhealth - random.randint(5,10)
if stage2 == "true":
playerhealth = playerhealth - random.randit (1,5)
print "you now have..", playerhealth
elif fight =="ninjastar":
print "you ninjastarred the enemy"
enemyhealth = enemyhealth - random.randint(5,20)
xp = xp + 1
print "the enemy now has", enemyhealth, "health"
print "they fight back!"
playerhealth = playerhealth - random.randint(5,10)
if stage2 == "true":
playerhealth = playerhealth - random.randit (1,5)
print "you now have..", playerhealth
elif fight =="headbutt":
print "you headbutted the enemy"
enemyhealth = enemyhealth - random.randint(5,18)
xp = xp + 1
print "the enemy now has", enemyhealth, "health"
print "they fight back!"
playerhealth = playerhealth - random.randint(5,10)
if stage2 == "true":
playerhealth = playerhealth - random.randit (1,5)
print "you now have..", playerhealth
elif fight =="deathray":
print "you deathrayed the enemy"
enemyhealth = enemyhealth - random.randint(1,50)
xp = xp + 1
print "the enemy now has", enemyhealth, "health"
print "they fight back!"
playerhealth = playerhealth - random.randint(1,30)
if stage2 == "true":
playerhealth = playerhealth - random.randit (1,5)
print "you now have..", playerhealth
elif fight =="stab":
print "you stabbed the enemy"
enemyhealth = enemyhealth - random.randint(3,40)
xp = xp + 1
print "the enemy now has", enemyhealth, "health"
print "they fight back!"
playerhealth = playerhealth - random.randint(2,20)
if stage2 == "true":
playerhealth = playerhealth - random.randit (1,5)
print "you now have..", playerhealth
elif fight =="shoot":
print "you shot the enemy"
enemyhealth = enemyhealth - random.randint(1,50)
xp = xp + 1
print "the enemy now has", enemyhealth, "health"
print "they fight back!"
playerhealth = playerhealth - random.randint(1,30)
if stage2 == "true":
playerhealth = playerhealth - random.randit (1,5)
print "you now have..", playerhealth
if xp == 5:
print "you leveled up! move unlocked: 'rko'"
if xp == 7:
print "you leveled up! move unlocked: 'ninjastar'"
if xp == 10:
print "you leveled up! move unlocked: 'headbutt'"
if xp == 100:
print " you reached the max level! move 'deathray' is now unlocked"
if playerhealth <1:
print "you died!"
if enemyhealth < 1:
print "the enemy is KO , YOU WIN , Stage 2 is unlocked and the enemy has become stronger!"
stage2 = "true"
else:
None
【问题讨论】:
-
“请不要说将代码包装在一个 while 循环中,因为我不知道这意味着什么,哈哈,谢谢,请不要投反对票” - 很遗憾。那么,您为什么不了解
while循环,然后像成年人一样写作? -
请在你的编辑器中增加行高,这样你就不用这样写了。
-
@alexbwithtek 我们应该关心您的截止日期,因为...?请收下tour,学习How to Ask。
-
@alex bwithtek 我知道你是一个新程序员,特别是 python,所以我试图激发....
标签: python python-2.7