Files
heros/assets/script/game/data/dataModelComp.ts
2024-08-03 23:54:37 +08:00

47 lines
1.3 KiB
TypeScript

import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
import { VM } from "../../../../extensions/oops-plugin-framework/assets/libs/model-view/ViewModel";
import { CCVMParentComp } from "../../../../extensions/oops-plugin-framework/assets/module/common/CCVMParentComp";
/** 数据层对象 */
@ecs.register('dataModel')
export class dataModelComp extends CCVMParentComp {
/** 提供 MVVM 组件使用的数据 */
/** VM 组件绑定数据 */
vm: any = {
name : "数据测试",
/** 当前等级 */
porwer: 0,
/** 当前经验 */
def : 0,
/** 下级经验 */
speed : 0,
hp: {
min:50,
max:100
}
};
/** 显示数据添加到 MVVM 框架中监视 */
vmAdd() {
console.log("dataModelComp vmAdd");
VM.add(this.vm, "data");
}
changeHp(min: number, max: number) {
this.vm.hp.min =this.vm.hp.min +min
this.vm.hp.max =this.vm.hp.max +max
}
/** 显示数据从 MVVM 框架中移除 */
vmRemove() {
VM.remove("data");
}
/** 数据层组件移除时,重置所有数据为默认值 */
reset() {
for (var key in this.vm) {
delete this.vm[key];
}
}
}