Commit Graph

19 Commits

Author SHA1 Message Date
xinian
0ac84a9509 新纪元 2026-04-04 06:27:15 +08:00
xinian
9c6f3988de refactor: 重构 CurrentPet 为 CurPet
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-04-04 04:34:43 +08:00
xinian
6439995434 feat: 支持多精灵战斗位操作 2026-04-04 04:28:04 +08:00
xinian
875ad668aa feat: 实现战斗效果逻辑和接口重构
Some checks failed
ci/woodpecker/push/my-first-workflow Pipeline failed
2026-03-28 21:57:22 +08:00
昔念
f091748542 ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat(fight): 优化战斗效果触发机制

- 移除 EffectDefeatTrigger 的 OnSkill 方法,简化标记逻辑
- 修复 SwitchOut 方法中的判断条件,正确检查对方精灵血量
- 移除多余的 can 字段检查,简化代码流程

feat(pet): 完善宠物购买事务处理

- 添加数据库事务支持,确保购买操作的原子性
- 增加余额检查的安全验证
- 使用原生SQL更新最大时间戳,避免
2026-03-11 22:51:52 +08:00
昔念
b48578a7ea ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat(effect): 移除能力复制操作类型参数并优化属性复制逻辑

移除了 info.AbilityOpType.COPY 操作类型的依赖,简化了能力属性复制的实现方式。
现在直接将对手的正值属性复制到己方,无需指定操作类型参数。同时修正了数组遍历方式,
使用切片语法确保正确的遍历行为。

BREAKING CHANGE: 能力复制相关方法的参数签名发生变化,移除了操作类型参数。
```
2026-03-08 23:36:16 +08:00
昔念
9315fcfa17 ```
Some checks failed
ci/woodpecker/push/my-first-workflow Pipeline failed
refactor(fight): 移除能力操作类型枚举并简化属性设置方法

移除了 info.EnumAbilityOpType 枚举类型及其相关常量定义,
重构了 SetProp 方法调用,不再传递操作类型参数,
通过检查等级正负值来判断是增加还是减少属性,
减少了代码复杂度并统一了属性变更的处理逻辑。
```
2026-03-08 23:24:18 +08:00
昔念
4751594ee8 ```
feat: 更新战斗系统模型结构和Redis消息处理

- 引入gredis依赖用于Redis消息处理
- 将战斗相关的枚举和结构体从info包迁移到model包
- 更新战斗结束原因、攻击值等类型的引用路径
- 添加新的zset工具包到工作区
- 修改Redis消息处理逻辑以正确解析gredis.Message类型
- 在战斗控制器中统一使用model包下的类型定义
2026-03-04 22:47:21 +08:00
0f524aab85 ```
fix(fight): 修复战斗命中判断逻辑并移除冗余命中检查

- 修复 NewSel32 中的命中判断,将 Side 字段改为 Hit 字段
- 移除 EffectAttackMiss 中的冗余命中判断逻辑
- 移除 EffectDefeatTrigger 中的重复命中检查
- 移除 EffectPhysicalAttackAddStatus 中的冗余命中判断
- 移除多个效果文件中的重复命中检查逻辑
- 修正 Effect136 中的命中处理逻辑,确保在技能命中时正确触发
- 移除其他多个效果中的重复命中检查代码
```
2026-01-04 21:41:10 +08:00
143e02de77 ```
feat(fight): 实现精灵切换时的出战和下场触发机制

- 新增SwitchOut接口方法用于精灵下场时触发
- 重命名Switch为SwitchIn用于精灵出战时触发
- 在战斗流程中添加精灵下场时的广播调用
- 修改EffectDefeatTrigger等效果的切换逻辑

refactor(effects): 优化战斗效果的切换处理逻辑

- 修改Effect147和Effect148的触发条件判断逻辑
-
2025-12-25 20:49:54 +08:00
1
5ca43fe21f ``` refactor(fight): 重构状态效果初始化逻辑,统一使用InitEffect方法并内置随机持续回合 2025-12-11 19:12:54 +00: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
1
022dc12461 refactor(decimal): 替换shopspring/decimal为govalues/decimal库 2025-12-04 14:28:42 +00:00
7f443736bc feat(fight): 重构战斗效果触发机制与ID管理
- 统一将 Skill_Hit_Pre 和 Skill_Hit_Pre_ex 方法重命名为 Action_start 和 Action_start_ex
- 新增 Action_end 和 Action_end_ex 接口方法,完善行动周期控制
- 修改效果ID生成逻辑,使用 EffectIDCombiner 替代简单整数运算,提升扩展性
- 调整状态类效果判断方式,通过前缀匹配识别状态类型
- 增加随机持续时间和参数设置功能,增强部分效果的表现力
- 优化战斗流程中效果执行时机,确保行为前后逻辑完整闭环
2025-11-22 00:44:42 +08:00
1
88cd1affe4 修复战斗 2025-11-15 22:17:43 +00:00
1
4a4806fd82 补全技能效果 2025-11-15 14:23:52 +00:00
c4d0119129 ```
refactor(fight): 重构击败触发效果机制,优化代码结构

将 EffectDefeatTrigger 中的回调函数模式改为基于 effectID 的 switch-case 实现,
移除冗余的 defeatTriggerFunc 类型定义。统一通过 triggerByID 方法根据 ID 分发执行具体行为,
提高可维护性和扩展性。

同时更新 AddEffect 方法签名以支持传入主动方输入上下文,增强效果添加时的控制逻辑。
修复部分效果在添加状态时未正确传递施加者信息的问题。

此外,清理了部分注释和无用代码,使逻辑更清晰。
```
2025-11-14 03:21:00 +08:00
f224bef17a feat(fight): 移除无用代码并优化技能效果逻辑
- 删除了多个未使用的技能效果文件(effect_10-16_94_99_14.go、effect_61_70_118.go、
  effect_66.go、effect_67.go、effect_78_86_106.go、effect_84_92.go、prop.go)
- 修正了部分技能效果中的错误逻辑判断和数值计算方式
- 调整了伤害计算与治疗效果的参数使用顺序,使其符合预期行为
- 注释掉调试打印语句及测试调用,减少冗余输出
- 修复了部分效果中对技能分类的错误比较条件

此次修改提升了战斗系统代码的整洁性和准确性。
2025-11-14 02:04:19 +08:00