0
我正在編寫一個遊戲,而鬥爭功能似乎讓我絆倒了。這裏是我的代碼的作戰片段:Python time.sleep()沒有睡覺
def combat(player, enemy, dun):
print("\n"*100 + "A " + enemy.name + " has attacked you!")
while player.health > 0 and enemy.health > 0:
print(enemy.name[:1].upper() + enemy.name[1:], "health:", enemy.health)
print("Your health:", player.health)
cmd = input(">")
if cmd == "attack":
enemy.health -= player.atk(enemy)
if cmd == "run":
coin = random.choice(["heads", "tails"])
if coin == "heads":
break
else:
print("You couldn't escape.")
if cmd == "equip":
target = input("Which item?\n>")
print(player.equip(target))
player.health -= enemy.atk(player)
if enemy.health <= 0:
print("You defeated the", enemy.name + "!")
if enemy.drop != None:
return "Enemy defeated.\nThe " + enemy.name + " dropped a " + enemy.drop + "!"
dun.data[dun.pos][2].append(enemy.drop)
else:
return "Enemy defeated."
time.sleep(1.5)
out = 1
elif player.health <= 0:
print("You died fighting %s..." % enemy.name)
dun.pos == (0, 0)
player.inventory == []
return "You reawaken in the same room you started in, pack empty..."
time.sleep(3)
我已經導入隨機模塊和時間模塊,它只是不在片段中。
當序列結束時,它不會休眠並立即進入主遊戲循環(如果需要,我可以給它)。
除了混亂,我做錯了什麼?
因爲你之前返回'睡眠函數調用? – thefourtheye
這裏的裝飾器會很有用,例如@sleep_when_done(3) – nehz