2013-04-14 43 views
1

我在處理基本技能增加時遇到了一些麻煩。眼下代碼看起來像隨機技能在Python文本中無法正常工作rpg

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的機會,技能水平不會提高。

您成功狩獵。你的狩獵技能增加。 (2)

你成功地狩獵。你的狩獵技能增加。 (2)

你成功地狩獵。你的狩獵技能增加。 (3)

您成功狩獵。你的狩獵技能增加。 (3)

您成功狩獵。你的狩獵技能增加。 (3)

您成功狩獵。你的狩獵技能增加。 (4)

我打算每次玩家成功狩獵時提升技能等級。顯然這並沒有發生......

你能看到我做錯了什麼嗎?我該如何解決它?我怎樣才能做得更好?

謝謝!

回答

3

如果hunting等於0 比9大。如果hunting等於1-9,然後result仍然是舊的價值,你重印只設置了一個新值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) 
+0

哦弗裏克!這將解釋它!這就是我在半夜編碼時所得到的結果。謝謝! – Ghosty