EG/demo/脚本管理界面使用指南.md
2025-07-10 09:19:51 +08:00

205 lines
5.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 脚本管理界面使用指南
## 概述
脚本管理界面已集成到主程序中,提供了完整的脚本创建、管理、挂载和使用功能。编辑功能可以通过外部编辑器进行。
## 功能特性
### 1. 脚本系统管理
- ✅ 脚本创建和模板选择
- ✅ 脚本加载和重载
- ✅ 热重载功能(自动检测文件变化)
- ✅ 脚本挂载到游戏对象
- ✅ 脚本启用/禁用控制
### 2. 界面组件
- ✅ 脚本菜单(菜单栏)
- ✅ 脚本管理面板(右侧停靠窗口)
- ✅ 属性面板脚本信息显示
- ✅ 实时状态更新
## 使用方法
### 访问脚本功能
#### 方法1通过菜单栏
1. 点击菜单栏 → **脚本**
2. 选择相应的功能:
- **创建脚本...** - 快速创建新脚本
- **加载脚本文件...** - 从文件加载脚本
- **重载所有脚本** - 重新加载所有脚本
- **启用热重载** - 切换热重载功能
- **脚本管理器** - 打开脚本管理面板
#### 方法2通过脚本管理面板
1. 查看右侧停靠窗口
2. 点击 **脚本管理** 标签页
3. 使用面板中的各种控件
### 脚本管理面板详解
#### 脚本系统状态组
- **脚本系统状态**:显示系统是否正在运行
- **热重载状态**:显示热重载是否启用
#### 创建脚本组
1. **脚本名称**:输入新脚本的名称
2. **模板选择**:选择脚本模板
- `basic`:基础脚本模板
- `movement`:移动相关脚本模板
- `animation`:动画相关脚本模板
3. **创建脚本**:点击按钮创建脚本文件
#### 可用脚本组
- **脚本列表**:显示所有可用的脚本
- **双击脚本名称**:显示提示(将来可打开外部编辑器)
- **加载脚本**:重新加载选中的脚本
- **重载全部**:重新加载所有脚本
#### 脚本挂载组
- **选中对象显示**:显示当前选中的游戏对象
- **脚本选择**:从下拉列表选择要挂载的脚本
- **挂载按钮**:将脚本挂载到选中对象
- **已挂载脚本列表**:显示对象上的所有脚本及其状态
- ✓ 表示脚本已启用
- ✗ 表示脚本已禁用
- **卸载选中脚本**:从对象移除选中的脚本
### 属性面板脚本信息
当选择一个游戏对象时,属性面板会显示:
#### 脚本信息区域
- **已挂载脚本**:列出对象上的所有脚本
- **脚本名称**:显示每个脚本的名称和状态
- **启用/禁用按钮**:控制每个脚本的运行状态
- 绿色按钮:脚本已启用,点击禁用
- 红色按钮:脚本已禁用,点击启用
## 使用流程示例
### 创建和使用脚本的完整流程
1. **创建脚本**
```
菜单栏 → 脚本 → 创建脚本...
输入名称MyRotator
点击确定
```
2. **编辑脚本**(外部编辑器)
```
打开 scripts/MyRotator.py
编辑脚本内容
保存文件(热重载会自动检测)
```
3. **挂载脚本到对象**
```
a. 在场景中选择一个对象
b. 右侧脚本管理面板 → 脚本挂载组
c. 选择 MyRotator 脚本
d. 点击"挂载"
```
4. **管理脚本状态**
```
在属性面板中:
- 查看脚本信息
- 启用/禁用脚本
- 监控脚本运行状态
```
### 热重载功能使用
1. **启用热重载**
```
菜单栏 → 脚本 → 启用热重载 ✓
```
2. **编辑脚本文件**
```
使用任何文本编辑器修改 scripts/ 目录下的脚本
保存文件
```
3. **自动重载**
```
系统会自动检测文件变化并重新加载脚本
已挂载的脚本会自动更新
```
## 快捷操作
### 键盘快捷键
- 目前没有设置特定的快捷键,主要通过鼠标操作
### 常用操作流程
1. **快速创建脚本**:菜单 → 脚本 → 创建脚本...
2. **批量重载**:菜单 → 脚本 → 重载所有脚本
3. **脚本管理**:右侧脚本管理面板
4. **状态切换**:属性面板中的启用/禁用按钮
## 注意事项
### 脚本编辑
- 脚本编辑需要使用外部编辑器如VS Code、PyCharm等
- 脚本文件保存在 `scripts/` 目录下
- 热重载功能会监控文件变化并自动更新
### 对象选择
- 脚本挂载需要先选择游戏对象
- 在场景树(左侧面板)中点击对象进行选择
- 选中对象后脚本挂载功能才会启用
### 错误处理
- 脚本加载错误会显示在控制台
- 创建重复名称的脚本会提示错误
- 挂载/卸载操作会有成功/失败提示
## 技术特性
### 性能优化
- 使用 Panda3D 任务系统进行脚本更新
- 热重载使用文件监控,避免频繁检查
- 脚本组件化设计,便于管理
### 扩展性
- 支持多种脚本模板
- 可扩展的脚本 API
- 模块化的脚本系统架构
## 故障排除
### 常见问题
1. **脚本创建失败**
- 检查脚本名称是否合法
- 确保 scripts/ 目录存在
- 检查文件权限
2. **热重载不工作**
- 确认热重载已启用
- 检查文件监控服务是否正常
- 重启应用程序
3. **脚本挂载失败**
- 确认已选择游戏对象
- 检查脚本是否已加载
- 查看控制台错误信息
4. **脚本无法运行**
- 检查脚本语法错误
- 确认脚本已启用
- 查看脚本系统状态
### 调试建议
- 使用控制台输出查看详细错误信息
- 检查脚本文件的语法和逻辑
- 确认脚本系统正常运行
- 重载脚本或重启应用来解决问题
## 总结
脚本管理界面提供了完整的脚本生命周期管理功能,从创建、编辑、加载到挂载和运行,都可以通过直观的图形界面操作。配合热重载功能,可以实现高效的脚本开发工作流。