feat(战斗系统): 实现伤害队列机制优化战斗处理

重构伤害处理逻辑,将直接伤害组件改为队列系统
- 新增DamageQueueComp组件管理伤害事件队列
- 添加DamageQueueHelper工具类处理伤害事件添加和查询
- 修改HeroAtkSystem改为处理伤害队列而非单个伤害
- 移除旧的DmgDataCom组件及相关引用
- 优化SkillView.apply_damage使用新队列系统
This commit is contained in:
2025-10-31 20:08:43 +08:00
parent 8e0d09fc98
commit b8f48e09d6
7 changed files with 278 additions and 85 deletions

View File

@@ -22,30 +22,4 @@ export class SDataCom extends ecs.Comp {
this.hit_count=0
}
}
//伤害数据
@ecs.register('DmgDataCom')
export class DmgDataCom extends ecs.Comp {
/** 业务层组件移除时,重置所有数据为默认值 */
Attrs:any=null
caster:HeroViewComp=null
s_uuid:number=0
reset() {
this.Attrs=null
this.s_uuid=0
this.caster=null
}
}
// /** 业务层业务逻辑处理对象 */
// export class SDataComSystem extends ecs.ComblockSystem implements ecs.IEntityEnterSystem {
// filter(): ecs.IMatcher {
// return ecs.allOf(SDataCom);
// }
// entityEnter(e: ecs.Entity): void {
// // 注:自定义业务逻辑
// e.remove(SDataCom);
// }
// }