我試圖創建一個函數來提高max hp,只要stat增加或減少。我試圖改變self.maxHpCalc()播放器。**將變量=(int)移動到任何爲什麼我可以想到並且一直沒有運氣的orc類中。取決於我如何改變它我得到自己/球員沒有屬性的力量,maxHp或maxHpCalc沒有定義。在python中使用基於文本的遊戲的類
class player:
def __init__(self, hp = 1 , maxHp = 1, strength = 4, defense = 5):
self.hp = hp
self.maxHp = maxHpCalc()
self.strength = strength
self.defense = defense
def maxHpCalc():
player.maxHp = player.strength + player.defense
class orc(player):
def __init__(self, hp, maxHp, strength , defnese):
super().__init__(hp, maxHp, strength, defense)
print(player.maxHp)
一切我改變給我的播放器/自無屬性力量的時刻
我已閱讀過這篇文章,但我很努力地想看到一個問題。你只是尋找一些保證,你做對了嗎? –
哈哈是的,頂部。或多或少,我只是在跟自己說話。如果看起來沒錯的話就忽略它。主要是我在最後遇到了所有def函數的問題。因爲我希望他們是一個不斷變化的變量,這取決於統計數據是什麼。所以我遇到像「玩家沒有屬性upperStrength」或maxHPCalc未定義的錯誤。至於現在我有一個raiseStat()函數,並有maxHp =(公式),並且工作,但從我所看到的應該有一種方法將該函數放入類maxHp = maxHpCalc()我還沒有找到了一種方法來使其工作。 – Reederboard
你有沒有嘗試用一個縮進這些函數,所以它們屬於這個類的範圍?在這裏你永遠無法確定這些縮進錯誤不是將代碼粘貼到文本框中的結果,也不是原始海報代碼中的真正錯誤。 –