feat(skill): add proc skill trigger system
实现技能命中后概率触发额外技能的完整流程 1. 新增proc_skill技能配置字段与数据组件 2. 新增公共技能派发工具方法 3. 在HeroAtkSystem中添加触发逻辑 4. 完善伤害事件与技能视图传递proc_skill参数
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
|
||||
import { BoxSet } from "../common/config/GameSet";
|
||||
import { SkillOverrides } from "../common/config/SkillSet";
|
||||
|
||||
/** 业务层对象 */
|
||||
//技能数据
|
||||
@@ -16,6 +17,9 @@ export class SDataCom extends ecs.Comp {
|
||||
dmg_ratio:number=1 //伤害比例
|
||||
hit_count:number=0 //击中数量
|
||||
max_hit_count:number=0 //最大可命中次数
|
||||
/** 命中后概率触发额外技能(由 Skill.load 从合并后配置快照;DamageEvent 透传给 HeroAtkSystem 判定;
|
||||
* overrides 字段透传给被触发技能,用于自定义伤害/数值) */
|
||||
proc_skill?: { s_uuid: number; chance?: number; overrides?: SkillOverrides };
|
||||
reset() {
|
||||
this.Attrs=null
|
||||
this.group=BoxSet.HERO
|
||||
@@ -27,6 +31,7 @@ export class SDataCom extends ecs.Comp {
|
||||
this.max_hit_count=0
|
||||
this.ext_dmg=0
|
||||
this.dmg_ratio=1
|
||||
this.proc_skill=undefined
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user