mirror of
https://github.com/raphaelcheung/zircon-legend-server.git
synced 2026-10-17 05:20:52 +08:00
c750f57a0e
问题: 服务器只在启动时把 datas/Database/System.db 读入 DbSystemFile / DbSystemFileHash,用于和客户端比对并下发。运行中通过后台或 GM 修改装备、物品等系统数据并保存后,磁盘文件已更新,但这两个内存缓存不会刷新,客户端登录时仍按“启动时的旧哈希”判断为已最新,导致一直同步不到更新,只有重启服务器才生效。 修复: - SEnvir 新增 DbSystemFileTime 与 RefreshDbSystemFileIfChanged(),按文件最后写入时间判断,文件变更时重新读取 DbSystemFile 并重算哈希; - SConnection.Process(C.CheckClientDb) 在比对哈希前调用该刷新,使后台保存后客户端下次登录即可检测到变化并下载新的 System.db。 Signed-off-by: 秦凡东 <shell_way@foxmail.com>