e54d4bacaa
```
...
feat(fight): 增加战斗模式枚举并重构战斗逻辑判断
- 引入完整的 BattleMode 枚举定义,替代原有的 BattleStatus,明确区分各类战斗场景
- 在多个控制器中替换对旧 Status 字段的依赖,统一使用 Mode 判断战斗状态
- 修复部分函数调用前未检查 FightC 是否为空的问题,增加 ErrBattleEnded 错误返回
- 调整
2025-11-21 02:40:27 +08:00
9f89f9f259
```
...
fix(binary): 修复零值处理导致的结构体打包异常
在 binaryFallback 的 Sizeof 和 Pack 方法中增加对 IsZero 值的判断,
避免空值参与序列化计算引发错误。同时调整了 struc 包相关逻辑以正确
处理空值情况,并打印调试日志辅助排查。
feat(fight): 完善玩家 PVP 对战胜负统计逻辑
修正 PET_MELEE 与 PET_King 模式下胜利归属判定问题,确保只有实际胜出
者才累计胜利次数。此外优化了战斗邀请流程,移除冗余状态控制字段并增强
邀请有效性校验,提升 PvP 流程稳定性。
refactor(pack): 简化数据组包逻辑并提高兼容性
重构 TomeeHeader.Pack 方法,去除反射相关的复杂类型判断,统一使用 struc
进行编码,强化对 nil、interface{} 及多级指针的支持。另外更新了客户端发包
记录日志内容以便追踪调试。
style(code): 规范代码格式并清理无用注释和字段
删除多个文件中的无效或过时注释,如 PlayerID 字段标记废弃、无意义的日志输出等;
同步更新结构体字段命名一致性(如 NonoColor),并对部分函数参数及条件表达式做
可读性优化,整体提升代码整洁度和维护性。
```
2025-11-20 15:19:13 +08:00
c0b09c92c4
```
...
refactor(common): 统一使用 common.TomeeHeader 替代 player.TomeeHeader
将多处
2025-11-19 16:11:02 +08:00
6831861e0d
fix: 修复空提交问题
2025-11-18 22:16:55 +00:00
ec14ab11c0
feat(fight): 优化战斗逻辑与奖励事件处理
...
- 在 `fight_boss.go` 中,调整了玩家挑战 Boss 的奖励事件注册逻辑,
并在战斗结束后正确取消事件监听。
- 修改了多个技能效果文件(`effect_13.go`、`effect_38.go`、`effect_49.go`),
增强状态持续时间计算和数据安全性。
- 更新 `player/done.go` 中的 `SPT` 方法签名以返回监听器实例。
- 调整数据库操作方法,将 `Update` 替换为 `Save` 以确保数据一致性。
- 修复菜单排序语法问题,统一使用字符串形式的排序表达式。
2025-11-17 13:37:08 +08:00
8ee5508974
fix: 修复空提交问题
2025-11-16 21:54:18 +00:00
0bc7db4177
fix: 修复空提交问题
2025-11-16 21:27:48 +00:00
f01068930b
fix: 修复空提交问题
2025-11-16 21:11:44 +00:00
5dbff2411c
重构
2025-11-16 20:30:17 +00:00
0a8ef3d555
feat(fight_boss): 新增怪物ID处理逻辑,支持随机选择与过滤空值
...
新增 `processMonID` 函数用于处理 BOSS 战斗中怪物 ID 的字符串分割、
过滤空值,并在多个 ID 中随机选取一个。优化新手任务 BOSS 战逻辑,
使其更灵活地适配不同的配置输入。
---
refactor(map): 使用 ants 协程池优化地图进出逻辑并移除无用导入
将原本通过
2025-11-16 11:56:57 +08:00
7cbd3bb801
修改战斗拷贝
2025-11-15 23:02:46 +00:00
88cd1affe4
修复战斗
2025-11-15 22:17:43 +00:00
a86782b1ea
```text
...
refactor(fight): 重构战斗准备逻辑并优化战斗启动流程
将 ReadyFight 方法拆分为多个职责清晰的子方法:
- buildFightStartInfo: 构建战斗初始信息
- checkBothPlayersReady: 检查PVP双方是否就绪
- handleNPCFightSpecial: 处理NPC战斗特殊逻辑(如可捕捉标记)
- startBattle: 统一启动战斗流程
同时修复部分逻辑顺序问题,增强代码可读性和扩展性。
feat(fight): 新增精灵王挑战协议支持
增加 StartPetWarInboundInfo 结构体用于接收精灵王挑战请求,
为后续实现相关功能提供基础。
fix(effect): 修正多个技能效果数值引用错误
- effect_37: 技能威力计算使用正确参数索引
- effect_50: 固定减伤比例调整为除以2
- effect_65: 正确比较技能分类类型
- effect_68: 致死保护改为锁定剩余1点生命值
- effect_77: 回复目标由敌方改为己方
- effect_93: 固定伤害值直接取参数
refactor(effect): 移除冗余效果类文件
删除 effect_133.go 和 effect_90.go 文件,其功能已被统一条件伤害和倍率系统取代;
移除 effect_74.go、effect_75.go 中重复的状态随机施加逻辑。
refactor(effect): 更新能力操作枚举命名一致性
重命名 AbilityOpType 枚举项名称,去除前缀,提升语义清晰度:
- AbilityOpStealStrengthen → StealStrengthen
- AbilityOpReverse → Reverse
- AbilityOpBounceWeaken → BounceWeaken
chore(fight): 完善 BattlePetEntity 属性初始化逻辑
在创建 BattlePetEntity 时即设置 PType,避免后续多次查询 PetMAP;
移除 Type() 方法中的冗余配置查找逻辑。
fix(skill): 确保必中技能不参与命中率计算
在 AttackTimeC 方法中添加 return 防止必中技能继续执行命中率公式计算。
refactor(fight): 调整战斗回合结束逻辑
进入新回合时允许玩家更换精灵,并提前跳出循环防止多余处理。
style(effect): 更正拼写及变量命名风格
修改 BaseSataus.Switch 方法签名中的参数命名;
更正 Effect58 中 can 字段首字母大写;
2025-11-14 23:09:16 +08:00