随机技能在Python文本rpg中没有按预期工作

2024-06-15 03:23:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我在处理基本技能提升时遇到了一些困难。现在代码看起来像

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)

运气和技能是分开的,因为我希望狩猎1级成功的几率是十分之一,但我也希望能正确地展示技能。这是一个相当笨拙的方法,但这只是麻烦的一部分。在

一切都是正确的,但是当用户成功时,技能水平大概有50/50的几率不会提高。在

You succeeded in hunting. Your hunting skill increases. (2)

You succeeded in hunting. Your hunting skill increases. (2)

You succeeded in hunting. Your hunting skill increases. (3)

You succeeded in hunting. Your hunting skill increases. (3)

You succeeded in hunting. Your hunting skill increases. (3)

You succeeded in hunting. Your hunting skill increases. (4)

我打算每当玩家成功狩猎时,技能水平都会提高。很显然,这不会发生。。。在

你能看出我做错了什么吗?我怎么能修好它?我怎样才能做得更好?在

谢谢你!在


Tags: inyouyour技能水平resultskillsucceeded
1条回答
网友
1楼 · 发布于 2024-06-15 03:23:41

仅当hunting等于0大于9时,才为result设置新值。如果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)

相关问题 更多 >