41 lines
973 B
TypeScript
41 lines
973 B
TypeScript
/*
|
|
* @Author: dgflash
|
|
* @Date: 2021-11-18 15:56:01
|
|
* @LastEditors: dgflash
|
|
* @LastEditTime: 2022-08-17 13:43:25
|
|
*/
|
|
import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
|
|
import { Monster } from "./Monster";
|
|
/**
|
|
* 角色属性数据
|
|
*/
|
|
@ecs.register('BaseMonsterModel')
|
|
export class BaseMonsterModel extends ecs.Comp {
|
|
/** 角色编号 */
|
|
hp: number = 100;
|
|
/** 角色名 */
|
|
name: string = "base monster";
|
|
/** */
|
|
|
|
|
|
|
|
reset() {
|
|
this.hp = 100;
|
|
this.name = "";
|
|
}
|
|
|
|
}
|
|
@ecs.register('Monster')
|
|
export class MonsterUpgradeSystem extends ecs.ComblockSystem implements ecs.IEntityEnterSystem {
|
|
filter(): ecs.IMatcher {
|
|
|
|
return ecs.allOf(BaseMonsterModel);
|
|
}
|
|
|
|
entityEnter(e: Monster): void {
|
|
let MonsterModel = e.MonsterModel;
|
|
MonsterModel.name = "base monster"
|
|
console.log("MonsterUpgradeSystem", e);
|
|
e.remove(BaseMonsterModel);
|
|
}
|
|
} |