Python:简单单人打怪小游戏(文字)

该游戏非常简单,非常适合像我这样的新人学习。我们可以通过该游戏来了解Python基础中的类与对象。 步骤如下。

1.定义“类”

class Creature():#首字母要大写,冒号不能缺

2.初始化

初始化类Creature,为它增加属性,这里就为其增加了hp这个属性,也可以增加更多属性,根据需要添加。

def __init__(self,hp):
    self.hp=hp
复制代码

3.定义函数

在写程序时我们会反复用到相同的一段代码,通过定义函数可以极大的减少代码量和我们的时间。这里就定义了人物的攻击,血量,判断是否活着和显示血量的函数。

def attack(self):
    attack_value=random.randint(0,10)
    return attack_value
def not_dead(self):
    if self.hp<=0:
        return False
    else:
        return True
def nowhp(self,attack_value):
    self.hp=self.hp-attack_value
def show_stastic(self):
    print('its hp is {}'.format(self.hp))
复制代码

4.创建实例对象

类定义并不是一个对象,只是一个蓝图。现在来真正的“盖房子”。在这里,我创建二个对象“pleyer”,“enemy”,并给他们赋予了hp这个属性的值。类与对象可以比作类是一种物种,像狗,而对象是不同种类的狗。我们通过对类进行修改可以改变对象的属性,而对单独对象进行修改却无法改变其他对象。

pleyer=Creature(100)
enemy=Creature(120)
复制代码

5.实现小游戏

在这,我定义了玩家可以做出攻击(A)和防御(D)二种选择,二种选择会造成不同的反应。

while pleyer.not_dead() and enemy.not_dead():
     pleyer.show_stastic()
     enemy.show_stastic()
     choose=input('A or D')
     if choose=='A':
        pleyer.attack_value=pleyer.attack()
        enemy.attack_value=enemy.attack()
        pleyer.nowhp(pleyer.attack_value)
        enemy.nowhp(pleyer.attack_value)


     elif choose=='D':
        enemy.attack_value = enemy.attack()*0.1
        pleyer.nowhp(enemy.attack_value)


if pleyer.not_dead():
     print('you win!')
else:
    print('you lose!')
复制代码

结语

为了简单明了,在这我只设置了HP和攻击防御,感兴趣的话,可以继续添加MP和各种技能,让游戏变得更加有趣。

猜你喜欢

转载自juejin.im/post/7035211872886325262