所以我刚开始学习python,我想为什么不做一个基于文本的游戏来提高我的技能。所以在这个游戏中,我想制作一个战斗场景,其中你有一个职业(骑士、盗贼或巫师),这个职业存储在player\ class中。每个类有三个属性。每个职业都有速度、伤害和生命值。我想这样做,如果你的速度高于或等于敌人你攻击第一,但如果敌人的速度高于敌人的攻击第一。所以我想我可以这样做,只要调用player\u class=userKnight,然后在战斗中如果player\u class(speed)>;=敌方类型(espeed),那么敌方类型(health)-player\u class(damage)。这是行不通的,如果有人有更好的方法或者可以解释我如何更好地实现这一点,那就太棒了!你知道吗
def userRogue(damage,speed,health):
health = 100;
damage = 50;
speed = 150;
return
def userKnight(damage,speed,health):
health = 100;
damage = 100;
speed = 50;
return
def userWizard(damage,speed,health):
health = 100;
damage = 75;
speed = 75;
return
def enemyRat(ehealth, espeed, edamage):
ehealth = 100;
edamage = 10;
espeed = 70;
return
def enemyDeath():
if ehealth <= 0:
print("Enemy is dead!")
return
def playerDeath():
if health <= 0:
print("You have died!")
return
user_name = input("What is your name: ")
print("1:)Rogue")
print("2:)Knight")
print("3:)Wizard")
player_class_select = int(input("Choose your class: "))
player_class = 0
enemy_type = 0
if player_class_select == 1:
print("You chose Rogue!")
player_class = userRogue
elif player_class_select == 2:
print("You chose Knight!")
player_class = userKnight
elif player_class_select == 3:
print("You chose Wizard!")
player_class = userWizard
else:
print("That is not a choice!")
print("Time for your first battle...")
print("A enemy has appeared!")
enemy_type = enemyRat
if player_class(speed) >= enemy_type(espeed):
enemy_type(ehealth) - player_class(damage)
enemyDeath()
elif player_class(speed) < enemy_type(espeed):
player_class(health) - enemy_type(edamage);
playerDeath()
```
您应该为角色创建一个父类,如下所示:
这将创建您的玩家和属性:
使用此信息比较容易与其他玩家/敌人的其他值进行比较:
相关问题 更多 >
编程相关推荐