[docs][refactor]: 拆分重复模块文档并提升框架架构为全局入口
- 技能系统/相机系统/内存对象管理 README 改为概览+导航 - 框架架构.md 由通用框架子目录提升为全局入口 - 更新日期、过时改进点和文档关联路径 - 10-架构说明.md 拆分通用框架与框架架构链接 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -8,8 +8,6 @@
|
||||
|
||||
为角色、怪物等实体提供统一的技能管理、冷却控制、释放接口和事件通知。
|
||||
|
||||
---
|
||||
|
||||
## 核心组成
|
||||
|
||||
| 类/结构 | 职责 |
|
||||
@@ -19,79 +17,12 @@
|
||||
| `HFEvent_OnSkillUsed` | 技能使用事件 |
|
||||
| `stSkillConfig` | 技能配置结构 |
|
||||
|
||||
---
|
||||
## 使用规则
|
||||
|
||||
## 技能管理
|
||||
|
||||
```csharp
|
||||
// 添加技能
|
||||
skillSystem.AddSkill(skillId);
|
||||
|
||||
// 移除技能
|
||||
skillSystem.RemoveSkill(skillId);
|
||||
|
||||
// 检查技能是否就绪
|
||||
bool isReady = skillSystem.IsSkillReady(skillId);
|
||||
|
||||
// 获取技能冷却时间
|
||||
float cooldown = skillSystem.GetSkillCooldown(skillId);
|
||||
|
||||
// 是否有技能在冷却
|
||||
bool hasCooldown = skillSystem.HasSkillInCooldown();
|
||||
|
||||
// 清除所有冷却
|
||||
skillSystem.ClearAllCooldowns();
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 技能使用
|
||||
|
||||
```csharp
|
||||
// 对目标使用技能
|
||||
skillSystem.UseSkill(skillId, targetEntity);
|
||||
|
||||
// 对位置使用技能
|
||||
skillSystem.UseSkillAtPosition(skillId, worldPosition);
|
||||
```
|
||||
|
||||
触发事件:
|
||||
|
||||
```csharp
|
||||
public class HFEvent_OnSkillUsed : AbsHFEventArg<enHFCTCEvent>
|
||||
{
|
||||
public HFAbsEntity Caster { get; set; }
|
||||
public int SkillId { get; set; }
|
||||
public HFAbsEntity Target { get; set; }
|
||||
public Vector3 Position { get; set; }
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 自动配置加载
|
||||
|
||||
系统会根据实体配置自动加载技能:
|
||||
|
||||
```csharp
|
||||
var config = HFFunCatalogue.NDB.ds_EntityConfig_Sheet_TableData_1FC4334A.ReadTable(ownerEntity.EntityId);
|
||||
if (config != null && config.SkillID > 0)
|
||||
{
|
||||
AddSkill(config.SkillID);
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 实体中的添加方式
|
||||
|
||||
在角色或敌人实体中统一添加:
|
||||
|
||||
```csharp
|
||||
AddSystem<HFGenericSkillSystem>();
|
||||
```
|
||||
|
||||
---
|
||||
- 角色和怪物使用同一套技能系统接口。
|
||||
- 技能 ID 在项目中应保持唯一。
|
||||
- 技能效果逻辑应在事件处理器中实现,避免直接写在释放器里。
|
||||
- 合理设置冷却时间以平衡游戏体验。
|
||||
|
||||
## 子系统边界
|
||||
|
||||
@@ -102,24 +33,12 @@ AddSystem<HFGenericSkillSystem>();
|
||||
- `HFSkillTrigger_*` — 技能触发器
|
||||
- `HFSkill_*_Releaser` — 技能释放器
|
||||
|
||||
---
|
||||
## 详细文档
|
||||
|
||||
## 使用规则
|
||||
|
||||
- 角色和怪物使用同一套技能系统接口。
|
||||
- 技能 ID 在项目中应保持唯一。
|
||||
- 技能效果逻辑应在事件处理器中实现,避免直接写在释放器里。
|
||||
- 合理设置冷却时间以平衡游戏体验。
|
||||
|
||||
---
|
||||
|
||||
## 相关模块
|
||||
|
||||
- [实体系统](../实体系统/README.md)
|
||||
- [事件系统](../事件系统/README.md)
|
||||
- [数据/配置框架](../数据配置框架.md)
|
||||
|
||||
---
|
||||
- [使用指南](使用指南.md) — API 详情、配置加载、事件结构与最佳实践
|
||||
- [实体系统](../实体系统/README.md) — 技能系统作为实体子系统的添加方式
|
||||
- [事件系统](../事件系统/README.md) — 技能使用事件依赖事件系统
|
||||
- [数据/配置框架](../数据配置框架.md) — 技能配置来源
|
||||
|
||||
## 文档关联
|
||||
|
||||
@@ -128,7 +47,9 @@ AddSystem<HFGenericSkillSystem>();
|
||||
| 文档 | 关联原因 |
|
||||
|---|---|
|
||||
| [modules/模块索引.md](../../模块索引.md) | 模块索引是项目知识总入口 |
|
||||
| [modules/frameworks/技能系统/使用指南.md](使用指南.md) | 本模块的详细 API 与使用说明 |
|
||||
| [modules/frameworks/实体系统/README.md](../实体系统/README.md) | 技能系统是实体系统的子系统 |
|
||||
| [modules/frameworks/事件系统/README.md](../事件系统/README.md) | 技能使用事件依赖事件系统 |
|
||||
| [modules/frameworks/数据配置框架.md](../数据配置框架.md) | 技能配置来源 |
|
||||
| [rules/10-架构说明.md](../../../rules/10-架构说明.md) | 架构说明定义总体分层和依赖方向 |
|
||||
| [rules/30-模块登记规则.md](../../../rules/30-模块登记规则.md) | 模块登记规则定义分类和状态口径 |
|
||||
|
||||
Reference in New Issue
Block a user