xinian
|
875ad668aa
|
feat: 实现战斗效果逻辑和接口重构
ci/woodpecker/push/my-first-workflow Pipeline failed
|
2026-03-28 21:57:22 +08:00 |
|
昔念
|
5e007894ea
|
```
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat(fight): 添加技能实体空值检查
为Effect93的Skill_Use方法添加空值检查,当技能实体为空时直接返回true,
避免潜在的空指针引用错误
```
|
2026-03-12 01:17:02 +08:00 |
|
昔念
|
7f3bfff542
|
```
ci/woodpecker/push/my-first-workflow Pipeline failed
feat(fight): 技能效果93功能优化
- 移除alpacadecimal依赖包导入
- 简化Effect93初始化代码
- 重命名OnSkill方法为Skill_Use以提高语义清晰度
- 直接使用Args()[1]替换SideEffectArgs避免额外参数传递
```
|
2026-03-12 01:16:26 +08:00 |
|
|
|
0f524aab85
|
```
fix(fight): 修复战斗命中判断逻辑并移除冗余命中检查
- 修复 NewSel32 中的命中判断,将 Side 字段改为 Hit 字段
- 移除 EffectAttackMiss 中的冗余命中判断逻辑
- 移除 EffectDefeatTrigger 中的重复命中检查
- 移除 EffectPhysicalAttackAddStatus 中的冗余命中判断
- 移除多个效果文件中的重复命中检查逻辑
- 修正 Effect136 中的命中处理逻辑,确保在技能命中时正确触发
- 移除其他多个效果中的重复命中检查代码
```
|
2026-01-04 21:41:10 +08:00 |
|
|
|
91690658b5
|
feat(boss-effect): 统一处理参数类型转换,提升数值比较与运算准确性
对多个 boss 技能效果文件中的参数调用进行了统一调整,将原先直接使用 `e.Args()[index]` 的地方,
改为通过 `e.Args()[index].IntPart()` 或 `e.Args()[index]` 进行类型转换后再参与逻辑判断或数值计算。
同时修正了部分 HP 比较方式,由整型比较转为 decimal
|
2025-12-06 15:11:42 +08:00 |
|
|
|
43813932c9
|
```
build(go): 升级 Go 版本至 1.20 并更新依赖包
将项目 Go 版本从 1.18 升级至 1.20,并同步更新了相关模块依赖。
同时替换 decimal 库为 alpacadecimal,以提升数值计算精度和性能。
- 升级 Go 模块版本
- 替换 github.com/govalues/decimal 为 github.com/alpacahq/alpacadecimal
- 更新多个间接依赖包版本
- 调整相关代码中 decimal
|
2025-12-05 00:24:02 +08:00 |
|
|
|
022dc12461
|
refactor(decimal): 替换shopspring/decimal为govalues/decimal库
|
2025-12-04 14:28:42 +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 |
|
|
|
c4d0119129
|
```
refactor(fight): 重构击败触发效果机制,优化代码结构
将 EffectDefeatTrigger 中的回调函数模式改为基于 effectID 的 switch-case 实现,
移除冗余的 defeatTriggerFunc 类型定义。统一通过 triggerByID 方法根据 ID 分发执行具体行为,
提高可维护性和扩展性。
同时更新 AddEffect 方法签名以支持传入主动方输入上下文,增强效果添加时的控制逻辑。
修复部分效果在添加状态时未正确传递施加者信息的问题。
此外,清理了部分注释和无用代码,使逻辑更清晰。
```
|
2025-11-14 03:21:00 +08:00 |
|