diff --git a/docs/01-项目入门/项目设置指南.md b/docs/01-项目入门/项目设置指南.md index a0f99a7..9f5ce3a 100644 --- a/docs/01-项目入门/项目设置指南.md +++ b/docs/01-项目入门/项目设置指南.md @@ -1,28 +1,142 @@ # 项目设置指南 -## AutoLoad 配置 +本文档指导你完成WhaleTown项目的Godot编辑器配置,确保开发环境正确设置。 -在 Godot 编辑器中设置 NetworkManager 为全局单例: +## 🎯 AutoLoad 配置 -1. 打开 `Project` → `Project Settings` +项目已经预配置了以下AutoLoad单例,你可以验证配置是否正确: + +### 1. 打开项目设置 +1. 在Godot编辑器中打开 `Project` → `Project Settings` 2. 切换到 `AutoLoad` 标签 -3. 添加新的 AutoLoad: - - **Path**: `res://core/managers/NetworkManager.gd` - - **Name**: `NetworkManager` + +### 2. 验证AutoLoad配置 +确认以下单例已正确配置: + +| 名称 | 路径 | 单例 | +|------|------|------| +| GameManager | `res://_Core/managers/GameManager.gd` | ✅ | +| SceneManager | `res://_Core/managers/SceneManager.gd` | ✅ | +| EventSystem | `res://_Core/systems/EventSystem.gd` | ✅ | +| NetworkManager | `res://_Core/managers/NetworkManager.gd` | ✅ | +| ResponseHandler | `res://_Core/managers/ResponseHandler.gd` | ✅ | + +### 3. 如果需要手动添加AutoLoad +如果某个AutoLoad缺失,可以手动添加: + +1. 点击 `Add` 按钮 +2. 设置以下信息: + - **Path**: 对应的脚本路径 + - **Name**: 单例名称 - **Singleton**: ✅ 勾选 +3. 点击 `Add` 确认 -## 验证设置 +## ⚙️ 其他重要设置 +### 主题配置 +项目使用自定义中文主题: +- **路径**: `UI/Theme/MainTheme.tres` +- **字体**: 微软雅黑 (`UI/Theme/Fonts/msyh.ttc`) + +### 主场景设置 +- **主场景**: `res://Scenes/Maps/main_scene.tscn` +- **窗口大小**: 1376x768 +- **窗口模式**: 全屏模式 + +### 渲染设置 +- **渲染器**: GL Compatibility (兼容性优先) +- **拉伸模式**: Canvas Items +- **拉伸比例**: Expand + +## 🧪 验证设置 + +### 1. 测试AutoLoad单例 在任何脚本中可以直接使用: ```gdscript func _ready(): - var request_id = NetworkManager.login("username", "password", callback) - print("请求ID: ", request_id) + # 测试GameManager + print("游戏状态: ", GameManager.get_current_state()) + + # 测试SceneManager + print("当前场景: ", SceneManager.get_current_scene_name()) + + # 测试EventSystem + EventSystem.emit_event("test_event", {"message": "Hello World"}) + + # 测试NetworkManager + var request_id = NetworkManager.login("test_user", "test_password") + print("网络请求ID: ", request_id) ``` -## 注意事项 +### 2. 检查控制台输出 +运行项目后,检查控制台是否有以下信息: +- ✅ 没有AutoLoad相关错误 +- ✅ 各个管理器初始化成功 +- ✅ 主题和字体加载正常 -- 确保 NetworkManager.gd 和 ResponseHandler.gd 文件存在 -- 重启 Godot 编辑器以确保 AutoLoad 生效 -- 检查控制台是否有错误信息 \ No newline at end of file +### 3. 测试场景切换 +```gdscript +# 测试场景管理器 +func test_scene_manager(): + # 切换到主场景 + SceneManager.change_scene("main") +``` + +## 🔧 常见问题排查 + +### 问题1: AutoLoad脚本找不到 +**症状**: 控制台显示"Cannot load script"错误 + +**解决方案**: +1. 检查脚本文件是否存在于指定路径 +2. 确认脚本文件没有语法错误 +3. 重新导入项目 (`Project` → `Reload Current Project`) + +### 问题2: 单例无法访问 +**症状**: 代码中无法访问GameManager等单例 + +**解决方案**: +1. 确认AutoLoad配置中勾选了"Singleton" +2. 重启Godot编辑器 +3. 检查脚本中是否有拼写错误 + +### 问题3: 主题显示异常 +**症状**: 界面字体或样式显示不正确 + +**解决方案**: +1. 检查 `UI/Theme/MainTheme.tres` 文件是否存在 +2. 确认字体文件 `UI/Theme/Fonts/msyh.ttc` 已正确导入 +3. 在项目设置中重新设置自定义主题 + +### 问题4: 网络请求失败 +**症状**: NetworkManager调用失败 + +**解决方案**: +1. 检查网络连接 +2. 确认API地址配置正确 +3. 查看ResponseHandler是否正常工作 + +## 📋 配置检查清单 + +完成设置后,请检查以下项目: + +- [ ] 所有AutoLoad单例配置正确 +- [ ] 主场景可以正常启动 +- [ ] 控制台没有错误信息 +- [ ] 自定义主题加载正常 +- [ ] 中文字体显示正确 +- [ ] 网络管理器可以正常调用 +- [ ] 事件系统工作正常 +- [ ] 场景管理器可以切换场景 + +## 🚀 下一步 + +配置完成后,建议继续阅读: +- [输入映射配置](输入映射配置.md) - 设置游戏控制 +- [命名规范](../02-开发规范/命名规范.md) - 学习编码规范 +- [架构与通信规范](../02-开发规范/架构与通信规范.md) - 理解项目架构 + +--- + +**💡 提示**: 如果遇到问题,可以参考 [测试指南](../03-技术实现/测试指南.md) 进行更详细的功能验证。 \ No newline at end of file