1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-05-27 22:41:56 +08:00
Commit Graph

29 Commits

Author SHA1 Message Date
fallingshrimp bd85129ecc feat: 添加水晶和钻石物品系统
- 在EntityBase中新增水晶和钻石物品类型
- 敌人在死亡时概率掉落水晶,BOSS额外掉落钻石
- 游戏结束时将水晶和钻石存入OutGameStorage
- 调整Starter面板中钻石升级成本为0
- 在UI场景中添加水晶和钻石显示节点
2026-05-04 09:15:49 +08:00
fallingshrimp e1c017bf3a feat: 添加局外养成系统和游戏结束面板改进
添加新的物品类型紫水晶和钻石
实现局外属性升级系统
改进游戏结束面板的返回和退出功能
添加新的UI组件用于显示属性和物品
更新游戏规则和存储系统以支持局外养成
2026-05-04 08:52:20 +08:00
fallingshrimp 0eabde6852 fix(Starter): 禁用单人游戏按钮防止重复点击
在开始单人游戏时禁用按钮,避免玩家重复点击导致意外行为。同时调整UI元素的水平尺寸标志以保持布局一致。
2026-05-03 20:38:34 +08:00
fallingshrimp bc89c93feb feat(UI): 添加教程开关按钮并优化面板控制逻辑
- 在Starter面板中添加新手教程开关按钮
- 为MakeFeed和SelectInitialFeed面板添加class_name
- 重构UIState中的输入处理逻辑,修复面板切换问题
2026-05-03 16:43:27 +08:00
fallingshrimp 2a602b0be2 feat(游戏模式): 添加游戏模式选择功能并优化UI状态管理
实现游戏模式选择功能,包括无尽波次、Boss Rush和割草模式
添加游戏模式与波次数据的映射关系
优化UI状态管理,新增selectingFeed状态控制UI元素显示
重构Starter面板布局,添加游戏模式选项
为EnergyBlock添加掉落物品配置
2026-05-03 16:03:02 +08:00
fallingshrimp 44699d4302 feat: 添加游戏启动界面和着色器效果
- 新增启动界面背景和logo
- 实现顶部和底部阴影着色器
- 添加难度选择滑块和角色名输入框
- 优化多人游戏按钮交互
- 修复编译提示面板的动画效果
- 更新UI主题样式
2026-05-03 12:28:38 +08:00
fallingshrimp e170dbee6d feat(UI): 添加编译提示面板并更新启动流程
在启动单机游戏时显示编译提示面板
扩展FullscreenPanelBase增加afterOpen和beforeClose钩子
添加CompilingTip面板相关资源和脚本
2026-01-25 21:18:25 +08:00
fallingshrimp 74d3e03fef feat(战斗系统): 改进敌人生成逻辑以围绕玩家位置生成
修改Wave.spawn方法以接受中心点参数,使敌人生成位置围绕玩家
在Starter和MakeFeed面板中调用spawnWave时计算玩家中心位置
重构EntityBase添加getPlayers方法获取所有玩家实体
重命名WorldManager.nextWave为doNextWave以更清晰表达意图
2025-12-14 15:01:01 +08:00
fallingshrimp 2006087495 refactor(武器系统): 重构弓箭和七魂武器逻辑及数值
调整弓箭武器的旋转偏移逻辑,将偏移计算从spawn函数移到Arrow类
修改七魂武器的属性和描述,增加治疗效果和能量转换功能
更新游戏难度范围和默认值,调整实体生命值计算方式
移除Rooster角色中的LGBT和HJM武器,替换为SevenSoul武器
2025-11-30 14:26:48 +08:00
fallingshrimp b8031d31d9 feat(游戏启动): 添加火山武器资源并实现单人游戏玩家名称设置
添加火山武器的纹理资源文件及其导入配置
在单人游戏启动时设置玩家名称到MultiplayerState
2025-11-15 17:03:15 +08:00
fallingshrimp d8fafcf52a fix(多人游戏): 修复玩家实体与UI状态同步问题
修复多人游戏中玩家实体与UI状态不同步的问题,现在当玩家名称匹配时会自动设置UIState.player
移除单机游戏中重复设置UIState.player的代码
为WorldManager添加对象解析功能以支持多人游戏中的对象传输
2025-11-15 07:33:06 +08:00
fallingshrimp 427ca484d1 refactor(网络同步): 重构实体同步逻辑和玩家生成流程
- 将EntityBase的health改为@export变量以便同步
- 添加MultiplayerSynchronizer节点处理网络同步
- 修改Wave.next()方法处理EncodedObjectAsID类型
- 添加findPlayer方法通过名称查找玩家
- 调整玩家生成流程,确保UIState.player正确设置
2025-11-14 22:44:26 +08:00
fallingshrimp 12191f4233 refactor(wave): 重构波次生成逻辑以支持多人游戏
将波次生成逻辑拆分为数据准备和实体生成两个阶段,便于多人游戏同步
修改 Wave 类以支持实例数据复制
更新相关调用点使用新的波次生成方式
2025-11-13 22:39:36 +08:00
fallingshrimp 8ed0837c9d feat(多人游戏): 实现多人游戏状态同步和单机/多人模式切换
添加多人游戏状态管理,包括连接状态和玩家名称同步
修改WorldManager和EntityBase以支持多人游戏逻辑
在Starter面板中实现单机和多人游戏启动功能
2025-11-13 22:23:39 +08:00
fallingshrimp bdc9201dba feat(多人游戏): 添加玩家名称存储并优化多人游戏逻辑
在MultiplayerState中添加playerName静态变量用于存储玩家名称
修改Starter.gd中的startMultiplayerGame方法,保存玩家名称到MultiplayerState
优化EntityBase.gd的AI逻辑,仅当玩家名称匹配时才执行AI
移除不再需要的多人游戏同步方法
2025-11-11 22:23:36 +08:00
fallingshrimp 40923cdd42 fix(多人游戏): 修复多人游戏启动权限问题
将startMultiplayerGame的RPC权限从"authority"改为"any_peer",并添加本地调用
确保所有客户端都能正确触发游戏开始
2025-11-11 22:18:54 +08:00
fallingshrimp cc37b0e011 feat(多人游戏): 实现多人游戏开始功能
添加服务器端RPC方法startMultiplayerGame,用于生成所有玩家实体并开始游戏
将开始按钮连接到RPC调用
2025-11-11 22:17:33 +08:00
fallingshrimp ebe1c4d8b3 refactor(Starter): 重命名按钮变量并调整多人游戏逻辑
将单机游戏开始按钮变量名从startBtn改为startSingleplayerBtn以提高可读性
调整多人游戏按钮禁用逻辑,仅服务器可点击开始按钮
默认隐藏玩家列表,仅在连接成功后显示
2025-11-11 22:16:40 +08:00
fallingshrimp 0bf2a76718 fix(多人游戏): 修复玩家名称冲突问题并重构加入逻辑
将玩家加入逻辑拆分为两个函数,joinPlayer处理玩家加入,mutexPlayer处理名称冲突检测。当检测到重复名称时自动生成唯一名称。同时确保名称变更后再次检查冲突。
2025-11-11 22:13:45 +08:00
fallingshrimp 46f5adf467 feat(状态机): 添加历史记录栈功能用于玩家名称输入
实现玩家名称输入的历史记录功能,使用新添加的Reference和Composables类来管理历史记录栈。当玩家修改名称时,自动更新历史记录并处理名称冲突。

修改Starter面板以使用新功能,包括名称冲突时的自动重命名和通过RPC同步名称更改。
2025-11-10 22:51:03 +08:00
fallingshrimp 30d50b2fd9 feat(多人游戏): 完善玩家列表同步功能
添加玩家加入/离开时的同步逻辑,重构玩家列表更新方式
- 新增玩家加入和离开的RPC方法
- 使用rebuildAllPlayers统一更新玩家列表
- 调整UI面板的可见性控制
2025-11-09 22:37:47 +08:00
fallingshrimp 9e78e01f08 feat(多人游戏): 添加玩家列表管理功能
- 实现玩家加入时自动添加到列表
- 添加玩家名称修改同步功能
- 重构UI结构以支持玩家列表显示
2025-11-09 17:29:57 +08:00
fallingshrimp 79bc956b71 feat(多人游戏): 实现基础多人游戏功能
- 添加玩家位置同步功能
- 实现服务器和客户端连接管理
- 添加玩家名称输入和生成逻辑
- 完善多人游戏UI界面
- 移除单机模式下的预设玩家角色
2025-11-09 17:00:39 +08:00
fallingshrimp c28d725d3e feat(多人游戏): 添加连接状态检查和断开连接功能
- 在MultiplayerState中添加isConnected方法检查连接状态
- 修改launchServer和connectClient方法以更新连接状态
- 在Starter面板中添加断开连接按钮并实现状态同步
- 更新UI显示连接状态和颜色
2025-11-09 15:24:24 +08:00
fallingshrimp 00c56484f4 feat: 为MultiplayerState添加@tool注解并更新状态显示格式
为MultiplayerState类添加@tool注解以支持编辑器功能
在Starter面板中为连接状态文本添加"状态:"前缀
2025-11-09 15:20:54 +08:00
fallingshrimp d4e5a11e3d feat(多人游戏): 添加多人游戏状态管理和服务器配置功能
- 新增 MultiplayerState 类管理连接状态和服务器操作
- 在 Starter 面板中添加服务器配置和状态显示
- 实现服务器启动和最大玩家数设置功能
2025-11-09 15:19:21 +08:00
fallingshrimp 8ece2a60a5 fix: 修复实体伤害计算和物品掉落逻辑
调整实体伤害倍数的计算公式,使用平方根来平衡增长曲线
修正物品掉落数量计算,考虑难度范围的影响
修复boss掉落和玩家死亡面板的代码缩进问题
2025-11-09 11:34:46 +08:00
fallingshrimp 5efa92f5df feat(多人游戏): 添加多人游戏功能及相关UI组件
- 在WorldManager中初始化ENetMultiplayerPeer
- 移除EntityBase中冗余的peer初始化
- 添加多人游戏面板及相关输入控件
- 更新难度显示格式为范围表示
- 为主题添加LineEdit字体大小设置
2025-11-05 22:29:11 +08:00
fallingshrimp 3171c39915 feat(UI): 添加游戏开始界面和难度选择功能
实现游戏开始界面,包含难度选择滑块和开始按钮
修改游戏规则初始难度为10并调整掉落物品数量计算
添加游戏开始条件检查,确保运行时间超过3秒且没有敌人时显示制作饲料界面
2025-09-12 22:08:55 +08:00