我在处理基本技能提高方面遇到了一些困难。现在,代码看起来就像
huntluck = 11
huntskill = 1
def hunt(self):
global result, huntluck, huntskill
hunting = random.randint(0, huntluck)
if hunting == 0:
result = "You couldn't find anything."
elif hunting >=10:
huntluck += 1
huntskill += 1
result = ("You succeeded in hunting. Your hunting skill increases. " +
"(%s)" %huntskill)运气和技能是分开的,因为我希望猎杀lvl 1成功的机会是十分之一,但我也想正确地展示这种技能。这是一个相当棘手的方法,但这只是问题的一部分。
一切打印正确,但当用户成功时,大约有50/50的机会,技能水平不会上升。
你成功地打猎了。你的狩猎技能提高了。(2) 你成功地打猎了。你的狩猎技能提高了。(2) 你成功地打猎了。你的狩猎技能提高了。(3) 你成功地打猎了。你的狩猎技能提高了。(3) 你成功地打猎了。你的狩猎技能提高了。(3) 你成功地打猎了。你的狩猎技能提高了。(4)
我打算在每次玩家成功狩猎时提高技能水平。很明显这不会发生..。
你能看出我做错了什么吗?我怎么才能修好它?我怎样才能做得更好?
谢谢!
发布于 2013-04-14 11:17:53
只有当result =0或大于9时,才为hunting设置一个新值;如果hunting等于1-9,则result保持旧值,然后重新打印该值。
更改您的hunting测试:
if hunting < 10:
result = "You couldn't find anything."
else:
huntluck += 1
huntskill += 1
result = ("You succeeded in hunting. Your hunting skill increases. " +
"(%s)" %huntskill)https://stackoverflow.com/questions/15998414
复制相似问题