refactor(skill): 重构技能组件目录结构并重命名施法请求组件

将技能相关组件从hero目录移动到skill目录
将CastSkillRequestComp重命名为CSRequestComp
更新相关引用和文档说明
This commit is contained in:
2025-10-31 09:22:50 +08:00
parent a1c605238d
commit b38e63e200
14 changed files with 47 additions and 129 deletions

View File

@@ -18,7 +18,7 @@
## 更新摘要
**已做更改**
- 更新了组件注册机制部分以反映在多个系统中添加ECS注册装饰器的更改
- 添加了关于技能系统的新部分包括CastSkillRequestComp、SkillCastSystem、SkillCDSystem和SkillAutocastSystem
- 添加了关于技能系统的新部分包括CSRequestComp、SkillCastSystem、SkillCDSystem和SkillAutocastSystem
- 更新了实际案例分析,以包含新的技能系统实现
- 在扩展开发指南中添加了新的系统接口示例
- 更新了文档来源以包含新分析的文件
@@ -355,7 +355,7 @@ HeroViewComp实现了复杂的BUFF/DEBUFF管理系统
```mermaid
classDiagram
class CastSkillRequestComp {
class CSRequestComp {
+number skillIndex
+Vec3[] targetPositions
+reset() void
@@ -424,14 +424,14 @@ participant Cast as SkillCastSystem
participant Entity as Entity
participant Skill as SkillEnt
Auto->>Entity : update()
Auto->>Entity : add(CastSkillRequestComp)
Auto->>Entity : add(CSRequestComp)
Cast->>Entity : entityEnter()
Cast->>Entity : checkCastConditions()
Cast->>Entity : executeCast()
Cast->>Entity : playSkillEffect()
Cast->>Cast : createSkillEntity()
Cast->>Skill : load()
Cast->>Entity : remove(CastSkillRequestComp)
Cast->>Entity : remove(CSRequestComp)
```
**图表来源**
@@ -447,7 +447,7 @@ Cast->>Entity : remove(CastSkillRequestComp)
- `SkillCDSystem`:负责管理"技能冷却"
2. **标记驱动设计**
- 使用`CastSkillRequestComp`作为标记组件
- 使用`CSRequestComp`作为标记组件
- 避免了直接调用系统方法的耦合
- 符合ECS的声明式编程理念

View File

@@ -239,7 +239,7 @@ SkillConfig --> BuffConf
```mermaid
classDiagram
class CastSkillRequestComp {
class CSRequestComp {
+skillIndex : number
+targetPositions : Vec3[]
+reset() void
@@ -261,9 +261,9 @@ class SkillAutocastSystem {
+update(e : Entity) void
+selectTargets() Vec3[]
}
CastSkillRequestComp --> SkillCastSystem
CSRequestComp --> SkillCastSystem
SkillCastSystem --> SkillCDSystem
SkillAutocastSystem --> CastSkillRequestComp
SkillAutocastSystem --> CSRequestComp
```
**章节来源**