import?random
class?Creature():
????def?__init__(self,hp,name):
????????self.hp?=?hp
????????self.name?=?name
????????
????def?attack(self):
????????attack_value?=?random.randint(0,50)
????????return?attack_value
????????
????def?being_attack(self,attack_value):
????????self.hp?=?hp?-?attack_value
????????
????def?not_dead(self):
????????if?self.hp?<=?0:
????????????return?False
????????else:
????????????return?True
????????????
????def?show_status(self):
????????print("{}'s?hp?is?{}.".format(self.name,self.hp))
????????
player?=?Creature(100,"Bi")
enemy?=?Creature(80,"enemy")
while?player.not_dead()?and?enemy.not_dead():
????player.show_status()
????enemy.show_status()
????
????user_input?=?input("Attack?or?Defence(A/D)")
????
????if?user_input?==?'A':
????????player_attack_value?=?player.attack()
????????enemy_attack_value?=?enemy.attack()
????????enemy.being_attack(player_attack_value)
????????player.being_attack(enemy_attack_value)
????elif?user_input?==?"D":
????????enemy_attack_value?=?enemy.attack()*0.1
????????player.being_attack(enemy_attack_value)
if?player.not_dead():
????print("You?Win!")
else:
????print("You?Lose!")報錯Traceback (most recent call last):? File "C:\Users\Administrator\Desktop\pl.py", line 45, in <module>? ? player.being_attack(enemy_attack_value)? File "C:\Users\Administrator\Desktop\pl.py", line 18, in being_attack? ? self.hp = hp - attack_valueNameError: name 'hp' is not defined怎么解決
添加回答
舉報
0/150
提交
取消