Files
pixelheros/assets/script/game/damage/DamageShowSystem.ts
2025-02-03 11:56:33 +08:00

21 lines
700 B
TypeScript

import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
import { HeroViewComp } from "../hero/HeroViewComp";
import { DamageResult } from "./DamageComp";
@ecs.register('DamageShowSystem')
export class DamageShowSystem extends ecs.ComblockSystem implements ecs.ISystemUpdate {
filter(): ecs.IMatcher {
return ecs.allOf(DamageResult, HeroViewComp);
}
update(e: ecs.Entity) {
const res = e.get(DamageResult);
const view = e.get(HeroViewComp);
// 显示伤害数字
view.showDamage(res.finalDamage, res.isCrit);
// 移除已处理的伤害结果组件
e.remove(DamageResult);
}
}