83 lines
2.8 KiB
Markdown
83 lines
2.8 KiB
Markdown
# 编辑器 Roadmap
|
||
|
||
编辑器核心定位:**图谱可视化 + 实时预览测试**。场景字段由创作者在 VS Code 中直接写 JSON,编辑器不做 GUI 表单。
|
||
|
||
---
|
||
|
||
## 已完成
|
||
|
||
| 功能 | 完成 |
|
||
|------|:--:|
|
||
| 场景节点图(Vue Flow) | ✅ |
|
||
| JSON 导入/导出 | ✅ |
|
||
| 视频预览 | ✅ |
|
||
| Pinia 状态管理(editorStore) | ✅ |
|
||
| 纯函数数据层(GraphService) | ✅ |
|
||
| 图谱/预览切换 | ✅ |
|
||
| 节点右键测试(新标签页) | ✅ |
|
||
| 节点拖拽位置记忆 | ✅ |
|
||
|
||
---
|
||
|
||
## E10: 内嵌快速测试 ✅ 部分完成
|
||
|
||
- [x] 节点右键菜单 → "从此场景开始测试"
|
||
- [x] 新标签页打开游戏
|
||
- [x] Engine 支持 `?startScene=` URL 参数
|
||
- [ ] PreviewPanel 内嵌 iframe 游戏播放器(远期)
|
||
|
||
## E11: 场景列表 + 搜索
|
||
|
||
- [ ] 左侧可折叠场景列表面板(`SceneList.vue`)
|
||
- [ ] 按名称搜索/筛选场景节点
|
||
- [ ] 点击列表项 → 画布跳转到对应节点并选中
|
||
|
||
## E12: JSON 校验器
|
||
|
||
- [ ] 导出/保存前实时检查
|
||
- [ ] 引用完整性:targetScene 指向不存在的场景 ID
|
||
- [ ] 死路检测:无 choices / 无 nextScene / 无 qte / 无 hotspots
|
||
- [ ] 变量引用:conditions 中的 variable 未在 `variables` 声明
|
||
|
||
## E13: 撤销/重做
|
||
|
||
- [ ] 操作历史栈(add/delete/update/move node & edge)
|
||
- [ ] Ctrl+Z 撤销 / Ctrl+Shift+Z 重做
|
||
|
||
## E16: NodeEditor → JSON 编辑器 ✅ 已完成
|
||
|
||
- [x] 删除现有 GUI 表单,改为 `<textarea>` + 等宽字体 + 深色背景
|
||
- [x] 初始值 `JSON.stringify(scene, null, 2)`
|
||
- [x] `@blur` → JSON.parse → `store.updateScene(id, parsed)`
|
||
- [x] 解析失败 → 红色边框 + 错误提示
|
||
|
||
## E17: AI 编码助手 — opencode + DeepSeek 集成
|
||
|
||
目标:编辑器内嵌 AI 对话面板。JSON 模式填充 textarea 供用户审查后接受;代码模式直接修改 Vue 组件/CSS,Vite HMR 实时预览。
|
||
|
||
详见 [E17_AI_ASSISTANT_PROPOSAL.md](../E17_AI_ASSISTANT_PROPOSAL.md)
|
||
|
||
- [x] `vite.config.ts` — `POST /api/ai` 中间件(spawn opencode)
|
||
- [x] `editor/composables/useAI.ts` — DeepSeek API 调用封装
|
||
- [x] `editor/components/AIPanel.vue` — AI 对话面板
|
||
- [x] `editor/components/NodeEditor.vue` — `aiResult` prop + [接受]/[撤销]
|
||
- [x] `editor/stores/editorStore.ts` — `deepseekKey` + `showAIPanel` + `aiResult`
|
||
- [x] `editor/App.vue` — "AI 助手" 按钮 + API Key 设置
|
||
|
||
**优先级建议:**
|
||
|
||
| 优先级 | 编号 | 说明 |
|
||
|:--:|------|------|
|
||
| **P0** | E17 | AI 编码助手 — DeepSeek 集成 ✅ 核心已完成 |
|
||
| **P0** | E16 | JSON 编辑器 ✅ 已完成 |
|
||
| **P0** | E10 | 内嵌快速测试 |
|
||
| **P1** | E12 | JSON 校验 |
|
||
| **P1** | E11 | 场景列表搜索 |
|
||
| **P2** | E13 | 撤销/重做 |
|
||
|
||
---
|
||
|
||
## 废弃项
|
||
|
||
E1~E9、E14 废弃。编辑器不再做 NodeEditor GUI 表单,场景字段由创作者在 JSON 中直接编写。
|