Python:声明一个继承自NPC类的战士类,新增属性攻击力__atk,该子类添加方法如下: · attack(class, int) 可以对目标进行一定伤害; ·重写upLevel() 函数,等级提升时提升20%攻击力.
时间: 2024-10-10 10:17:43 浏览: 26
在Python中,你可以通过创建一个名为`Warrior`的类,它会继承自`NPC`类,并且增加特定属性`__atk`(攻击力)。下面是一个简单的示例:
```python
class NPC:
def __init__(self):
self.hp = 100 # 假设NPC有一个基础生命值
def upLevel(self):
pass # 父类NPC的升级函数,默认无操作
class Warrior(NPC):
def __init__(self):
super().__init__() # 调用父类构造函数
self.__atk = 50 # 初始攻击力
def attack(self, target, damage):
if target.hp > 0:
target.hp -= self.__atk * damage
print(f"战士攻击了,造成了{damage}点伤害")
else:
print("目标已经死亡")
# 重写upLevel函数,提升攻击力
def upLevel(self):
self.__atk *= 1.2 # 每升一级提升20%攻击力
print(f"战士升级了,攻击力提升到{self.__atk}")
# 示例用法
warrior = Warrior()
warrior.attack(warrior, 1) # 同级战斗,攻击力为初始值
warrior.upLevel() # 升级一次,攻击力变为60
```
阅读全文