Commit Graph

3 Commits

Author SHA1 Message Date
Serendipity f897536a45 refactor(config): 更新时间限制为30分钟并调整配置文件存储格式
refactor(globals): 移除不必要的GUI运行状态标志
refactor(gui): 更新注释以反映使用IUP库
refactor(ai): 修改威胁检测逻辑以提升威胁等级
refactor(config): 修改加载和保存配置的时间限制逻辑
refactor(network): 更新默认网络端口常量
refactor(record): 移除冗余注释并增强复盘步骤的合法性检查
2026-05-02 12:24:27 +08:00
Serendipity 88f12bcfea feat(network): 集成ENet库并实现局域网联机对战功能
- 添加ENet库作为网络通信基础,替换原有的原生Socket实现
- 扩展游戏模式支持局域网联机对战(PvP网络模式)
- 重构网络状态结构以适配ENet的Host/Peer模型
- 在图形界面中添加网络对战菜单,支持创建房间和加入房间
- 实现网络消息的发送与接收,包括落子、断开连接等消息类型
- 为网络对战添加定时器轮询机制,实时处理网络事件
- 更新构建系统以编译和链接ENet库
2026-03-17 17:57:04 +08:00
Serendipity 0c9cfba81b refactor(gui): 拆分大型 GUI 模块为多个功能文件
将单一的 gui.c 文件拆分为 gui_core.c、gui_draw.c、gui_game.c 和 gui_replay.c,并引入 gui_internal.h 作为内部头文件。更新 Makefile 以包含新的源文件。同时修复了复盘模式中主菜单的隐藏时机,并改进了记录文件的加载逻辑以更安全地处理 CSV 解析。

- 提取核心 GUI 初始化、事件循环和坐标转换到 gui_core.c
- 分离绘图功能(棋盘、棋子)到 gui_draw.c
- 将游戏逻辑(PvP/PvE)移动到 gui_game.c
- 独立复盘功能到 gui_replay.c,优化文件选择流程
- 修复 btn_replay_cb 中过早隐藏主菜单的问题
- 增强 load_game_from_file 的健壮性,使用 sscanf 替代 fscanf 并改进行处理
2026-03-17 17:13:46 +08:00