205 lines
5.6 KiB
Markdown
205 lines
5.6 KiB
Markdown
# 脚本管理界面使用指南
|
||
|
||
## 概述
|
||
|
||
脚本管理界面已集成到主程序中,提供了完整的脚本创建、管理、挂载和使用功能。编辑功能可以通过外部编辑器进行。
|
||
|
||
## 功能特性
|
||
|
||
### 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. **脚本无法运行**
|
||
- 检查脚本语法错误
|
||
- 确认脚本已启用
|
||
- 查看脚本系统状态
|
||
|
||
### 调试建议
|
||
- 使用控制台输出查看详细错误信息
|
||
- 检查脚本文件的语法和逻辑
|
||
- 确认脚本系统正常运行
|
||
- 重载脚本或重启应用来解决问题
|
||
|
||
## 总结
|
||
|
||
脚本管理界面提供了完整的脚本生命周期管理功能,从创建、编辑、加载到挂载和运行,都可以通过直观的图形界面操作。配合热重载功能,可以实现高效的脚本开发工作流。 |