-1
ここでは、私が作ったゲームのコードを9行目から13行目まで、飢餓変数を180秒ごとに10ずつ減らそうとしていますが、動作しません。あなただけのコピーを渡すので、時間のある変数の値を減らす方法
import threading
print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
print(" Welcome to my game")
print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
health = 100
stamina = 100
hunger = 100
def hungerdecrease(h):
global hunger
threading.Timer(180,hungerdecrease).start()
h -= 10
hungerdecrease(hunger)
while health > 0 and stamina >0 and hunger >0:
if hunger <50:
print("You are hungry.")
if stamina <10:
print("You are feeling exhausted.")
if health <50:
print("You are unhealthy.")
print("You are dead")
'hunger'がコピーなっているので、関数のはコピーのみを変更します。 – ForceBru
hungerdecreaseに戻り、 'hunger = hungerdecrease(hunger)'を実行してみてください。あなたの編集の後、hの代わりに飢えを修正するべきではありませんか? – themistoklik
私はPythonにかなり新しいですので、私の質問が愚かに聞こえる場合は私を許してくださいが、私はあなたが意味するものを得ることはありませんhungerdecreaseへの復帰を追加する – Wilziam