game-classes-tky
Version:
游戏角色和物品的JavaScript类库(NPC、敌人、装备等)
38 lines (30 loc) • 1.14 kB
JavaScript
// 基础物品父类
function BaseItem(name) {
this.name = name;
}
BaseItem.prototype.discard = function() {
console.log(`${this.name}被丢弃了`);
};
// 消耗物品子类
function ConsumableItem(name, consume) {
BaseItem.call(this, name);
this.consume = consume;
this.name = "消耗品:" + name; // 覆盖name属性
}
ConsumableItem.prototype = Object.create(BaseItem.prototype);
ConsumableItem.prototype.constructor = ConsumableItem;
ConsumableItem.prototype.use = function() {
console.log(`使用了${this.consume}个:${this.name}`);
};
// 装备子类
function EquipmentItem(name, naijiu) {
BaseItem.call(this, name);
this.naijiu = naijiu;
this.name = "装备:" + name; // 覆盖name属性
}
EquipmentItem.prototype = Object.create(BaseItem.prototype);
EquipmentItem.prototype.constructor = EquipmentItem;
EquipmentItem.prototype.equip = function() {
console.log(`装备了${this.name},这件装备还有:${this.naijiu}点耐久`);
};
module.exports = { BaseItem, ConsumableItem, EquipmentItem };