1个不稳定版本
0.2.3 | 2023年8月18日 |
---|
#1164 in 游戏开发
43KB
145 行
基于YML的对话结构
示例
如果您想在家中编译代码,请在此处下载资源:下载资源:disroot的云,克隆仓库,在仓库根目录中提取资源,然后运行 cargo run --example complete_example
。
路线图
- 完整的API,用于将对话系统实现到(bevy游戏或任何)应用程序中
- 用法
- 自定义(反)序列化实现。字段
content:
被解释为monolog:
或choices:
- 泛型类型 用于
Condition
- 泛型类型 用于DialogNode上的
extra
字段 - 动态宏
- 自定义(反)序列化实现。字段
- 排除Bevy依赖项
- 遵循Rust API指南的所有准则
- 文档
- 示例使用
?
,而不是try!
,也不是unwrap
(《C-QUESTION-MARK》) - 包级别的文档详尽,包括示例(《C-CRATE-DOC》)
- 创建一个示例
- 示例使用
- 互操作性
- 类型积极实现常见特质
- ...
- 未来兼容性(包可以自由改进,而不会破坏用户的代码)
- 密封特质防止下游实现(《C-SEALED》)
- 结构体有私有字段(《C-STRUCT-PRIVATE》)
- Newtype封装实现细节(《C-NEWTYPE-HIDE》)
- 数据结构不重复派生特质界限(《C-STRUCT-BOUNDS》)
- 文档
- 用法
贡献
发布格式基于 Keep a Changelog,本项目遵循 语义化版本控制。
本项目还遵循 成功的 Git 分支模型。
我们必须尊重所有 Rust API 规范。对于 lore,遵循所有 Bevy 插件指南。
在提交前运行 cargo clippy
,cargo doc
。
许可证
本项目是免费、开源和许可的!
此存储库中的所有代码都采用以下两种许可证之一进行双许可:
- MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
- Apache 许可证,版本 2.0 (LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
了解更多包含两者的良好理由 在这里。
灵感
我开始将其编码为树状结构对话,但基于图的对话更适合。也许在这次迁移之后,这个 crate 就不再需要了,只会做开发日志。(并解放这个名称 :)
命名
根据这个 讨论,这不是一个简单的问题。
- yml-dialog
- dialog-structure
- md-to-dialog-tree
- fto-dialog
- bevy_dialog
- bevy_dialog_system
- bevy_fto_dialog / bevy_fob_dialog
依赖
~0.4–1MB
~22K SLoC