import { ConfigConst, EConfigConst } from "../cfg/ConfigDef"; import { ConfigMgr } from "../cfg/configMgr"; import { MonsterItem } from "../cfg/monsterItem"; import { Utils } from "../common/utils"; const {ccclass, property, executeInEditMode, playOnFocus} = cc._decorator; @ccclass export class MonsterModel extends cc.Component{ hp:number = 1000; atk:number = 100; beAttacked(harmNum: number){ this.hp -= harmNum; } isOver(){ return this.hp <= 0; } init(id: string, level: number){ cc.log('[MonsterModel] [init]', `[id:${id}]-[level:${level}]`); let monsterData= ConfigMgr.inst.getCfgClassById(EConfigConst.monster, id, MonsterItem); let atk = Utils.pos2vec2(monsterData.data.atk); let hp = Utils.pos2vec2(monsterData.data.hp); this.hp = hp.x + level * hp.y; this.atk = atk.x + level * hp.y; } }