EmakiSkills
EmakiSkills 是玩家技能管理模块,负责技能解锁、主动技能槽位、被动触发器、施法模式、冷却、资源消耗、升级和玩家档案。技能实际效果通常由 MythicMobs 执行,EmakiSkills 负责“什么时候允许释放、消耗什么、谁触发”。
基本信息
| 项目 | 值 |
|---|---|
| 模块版本 | 2.1.0 |
| 主命令 | /emakiskills |
| 别名 | /eskills |
| 硬依赖 | EmakiCoreLib |
| 软依赖 | MythicMobs、EmakiAttribute、PlaceholderAPI |
| 主要权限 | emakiskills.use、emakiskills.reload、emakiskills.admin、emakiskills.debug |
模块分工
| 模块 / 插件 | 职责 |
|---|---|
| EmakiSkills | 技能定义、槽位、触发器、冷却、资源、升级、玩家数据。 |
| MythicMobs | 执行真正的技能效果,例如伤害、粒子、召唤、位移。 |
| EmakiAttribute | 提供属性检查、资源检查和资源消耗。 |
| EmakiItem | 物品可提供技能解锁、触发器或套装技能。 |
| PlaceholderAPI | 展示技能状态、冷却、等级等信息。 |
默认配置目录
text
plugins/EmakiSkills/
├── config.yml
├── skills/
├── resources/
├── gui/
│ ├── skills_gui.yml
│ └── trigger_select_gui.yml
├── data/
└── lang/功能页面
| 页面 | 内容 |
|---|---|
| 命令与权限 | GUI、施法模式、等级管理、槽位清理和调试命令。 |
| 技能定义 | 主动/被动技能、资源消耗、升级和配置字段。 |
| 触发器 | 主动触发器、被动触发器、冲突和连击配置。 |
| 技能参数 | 等级参数、变量和运行时解析。 |
| 原生脚本系统 | 脚本模式、阶段、动作、限制和目标解析。 |
| 技能状态栏 | Action Bar 模板、刷新间隔和施法模式提示。 |
| 占位符 | PlaceholderAPI 输出。 |
| API | 技能 API 与脚本动作扩展。 |
技能类型
主动技能
主动技能通常由玩家手动释放,例如通过技能槽、命令、GUI 或施法模式。主动技能常见配置:
- MythicMobs 技能 ID。
- 冷却时间。
- 全局冷却。
- 资源消耗。
- 条件检查。
- 技能等级和参数。
被动技能
被动技能由事件触发,例如攻击、受击、击杀、移动、格挡等。被动技能需要配置触发器和冲突处理方式。
施法模式
施法模式用于让玩家在特定状态下选择或释放技能。当前服务端无法原生监听客户端 G 键这类本地按键,因此技能触发通常依赖服务端可见行为,例如命令、GUI、F 键交换手、交互事件等。
资源系统
技能可以消耗或检查多种资源:
ea-resource:通过 EmakiAttribute Bridge 消耗 Attribute 资源。attribute-check:检查某个属性是否达到要求。local-resource:使用 EmakiSkills 本地资源定义。
典型释放流程
- 玩家触发主动或被动技能。
- Skills 检查玩家是否拥有该技能。
- 检查技能等级、槽位、触发器和条件。
- 检查冷却和全局冷却。
- 检查并消耗资源。
- 调用 MythicMobs 技能。
- 写入冷却、统计或升级进度。
- 向玩家发送反馈。