Commit Graph

74 Commits

Author SHA1 Message Date
昔念
e161e3626f ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
fix(fight): 修复单输入战斗中效果处理逻辑错误

- 在Effect201的OnSkill方法中调整了多输入战斗检查的位置,
  确保单输入战斗中的单目标效果被正确忽略

- 添加了针对单输入战斗中单目标效果的测试用例

- 移除了重复的多输入战斗检查代码

feat(fight): 添加战斗初始化时捕获标识
2026-04-13 09:59:09 +08:00
xinian
5f5634d999 perf: 优化战斗逻辑性能与内存分配 2026-04-11 09:39:00 +08:00
昔念
487ee0e726 ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat(fight): 添加旧组队协议支持并优化战斗系统

- 实现了旧组队协议相关功能,包括GroupReadyFightFinish、GroupUseSkill、
  GroupUseItem、GroupChangePet和GroupEscape方法
- 新增组队战斗相关的入站信息结构体定义
- 实现了组队BOSS战斗逻辑,添加groupBossSlotLimit常量
- 重构宠物技能设置逻辑,调整金币消耗时机
- 优化战斗循环逻辑,添加对无行动槽位的处理
- 改进AI行动逻辑,增加多位置目标选择机制
- 完善捕获系统上下文处理,修复空指针问题
- 添加战斗状态更新和数据同步机制

fix(pet-skill): 修复宠物技能设置中的金币扣除逻辑错误

- 将金币扣除逻辑移到验证之后
- 修正宠物技能数量限制检查的顺序
- 防止重复添加已有技能的情况

refactor(fight): 重构战斗系统代码结构

- 分离新旧组队协议的战斗创建逻辑
- 优化战斗输入验证和处理流程
- 改进战斗循环中的错误处理机制
```
2026-04-09 02:14:09 +08:00
xinian
ca96be3905 refactor: 统一战斗报文发送逻辑
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-04-08 12:26:37 +08:00
昔念
0051ac0be8 ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat(fight): 添加旧组队协议支持并优化战斗系统

- 实现了旧组队协议相关功能,包括GroupReadyFightFinish、GroupUseSkill、
  GroupUseItem、GroupChangePet和GroupEscape方法
- 新增组队战斗相关的入站信息结构体定义
- 实现了组队BOSS战斗逻辑,添加groupBossSlotLimit常量
- 重构宠物技能设置逻辑,调整金币消耗时机
- 优化战斗循环逻辑,添加对无行动槽位的处理
- 改进AI行动逻辑,增加多位置目标选择
2026-04-08 01:28:55 +08:00
xinian
78a68148ce chore: update fight logic and effect implementations
Some checks failed
ci/woodpecker/push/my-first-workflow Pipeline failed
2026-04-05 02:25:44 +08:00
xinian
f473c54880 feat: 支持多站位战斗控制绑定模式
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-04-05 00:03:32 +08:00
xinian
39e1d4c42f refactor: 重构战斗结构体以支持双打模式 2026-04-04 22:13:42 +08:00
xinian
3a9932e307 refactor: 重、、、、 2026-04-04 06:11:01 +08:00
xinian
28d92c1e18 refactor: 重构战斗系统支持多单位多动作 2026-04-04 05:44:02 +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
3c160ef695 feat: 新增精灵仓库管理及战斗特效逻辑 2026-04-03 00:02:51 +08:00
xinian
c19ee7de03 fix: 修复战斗动作提交逻辑 2026-04-03 00:02:34 +08:00
xinian
218e23ff81 refactor: 重构战斗系统动作提交和竞技场锁定逻辑
Some checks failed
ci/woodpecker/push/my-first-workflow Pipeline failed
2026-04-02 23:05:18 +08:00
xinian
875ad668aa feat: 实现战斗效果逻辑和接口重构
Some checks failed
ci/woodpecker/push/my-first-workflow Pipeline failed
2026-03-28 21:57:22 +08:00
xinian
0aba7e7ccb refactor: 简化战斗宠物列表处理逻辑
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-03-24 01:38:02 +08:00
xinian
4fb5653c28 refactor: 重构战斗初始化传递宠物列表
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-03-22 23:41:51 +08:00
昔念
aa6929cd50 ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
fix(fight): 修复战斗逻辑中的条件判断错误

- 修复 IsFirst 方法中的缩进问题
- 修正 IsWin 方法中的条件判断逻辑,将 !v.Alive() 改为 v.Alive()
```
2026-03-17 19:41:07 +08:00
xinian
937ddd0a97 fix: 修复宠物存活状态判定逻辑
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
移除 `NotAlive` 字段,改用 `Alive()` 方法通过 HP 判断存活状态,修正相关效果触发逻辑。
2026-03-17 13:34:50 +08:00
xinian
f35af82bec refactor: 优化先手判断逻辑,增加IsFirst接口
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-03-09 12:28:37 +08:00
昔念
90f653d3ee ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
refactor(effect): 移除未使用的element导入并优化自然敌人判断逻辑

移除了NewSeIdx_14.go中未使用的element包导入,将自然敌人判断逻辑
提取到EffectNode基类中,通过ISNaturalEnemy方法统一处理。
```
2026-03-08 22:43:51 +08:00
xinian
bbaa71f4b2 refactor: 重构宠物初始化逻辑
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
提取宠物配置初始化到ConfigBoss方法,简化initplayer代码
2026-03-07 11:30:17 +08:00
昔念
4bb7477147 ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat(fight): 添加战斗攻击值获取接口并实现战斗规则系统

添加 GetAttackValue 方法到 FightI 接口,用于获取战斗中的攻击值信息。

新增 RuleI 接口定义战斗规则契约,包括 SetArgs 和 Exec 方法。

重构战斗规则系统:
- 创建 RuleBase 基类提供通用参数存储和基础方法
- 实现 17
2026-03-07 00:26:05 +08:00
昔念
4751594ee8 ```
feat: 更新战斗系统模型结构和Redis消息处理

- 引入gredis依赖用于Redis消息处理
- 将战斗相关的枚举和结构体从info包迁移到model包
- 更新战斗结束原因、攻击值等类型的引用路径
- 添加新的zset工具包到工作区
- 修改Redis消息处理逻辑以正确解析gredis.Message类型
- 在战斗控制器中统一使用model包下的类型定义
2026-03-04 22:47:21 +08:00
昔念
dffd6a63a6 ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat(player): 优化客户端数据处理机制

重构ClientData的消息处理流程,将OnEvent方法改为非阻塞的通道投递模式,
新增MsgChan用于异步消息传递,避免eventloop阻塞问题。

fix(fight): 修复宠物闪光属性过滤条件

在initplayer方法中增加color.Alpha不为0的判断条件,确保只有有效的
闪光属性才会被添加到宠物信息中。

refactor(socket): 调整服务器事件处理逻辑

移除未使用的Lockfree库依赖,注释掉不再需要的连接关闭资源释放代码,
调整事件处理的工作池提交逻辑。

feat(rpc): 新增Redis发布功能

为RPC_player添加SendPackCmd方法,通过Redis的publish命令实现
跨服数据传输功能。
```
2026-03-04 01:30:40 +08:00
昔念
0c7fd18bc9 ```
feat(controller): 增强命令注册逻辑并修复试炼塔关卡限制

- 在命令注册时检查重复方法,如果存在则panic提示错误
- 移除CurrentFreshStage和CurrentStage的默认值设置逻辑
- 添加关卡等级验证,确保用户不能挑战超过最大关卡数的关卡
- 修复试炼之塔和勇者之塔的关卡计算逻辑

fix(item): 修复道具使用返回值类型转换问题

- 将ThreeTimes和TwoTimes字段从int32转为uint32返回
- 为能量吸收道具使用函数添加结果结构体初始化

refactor(fight): 清理战斗服务中的注释和字段定义

- 移除C2S_FRESH_CHOICE_FIGHT_LEVEL结构体中冗余的注释说明
- 统一FightOverInfo结构体的格式

fix(item): 修复宠物道具使用的条件判断

- 为道具300790添加DV值大于等于31时不能使用的限制

fix(player): 修复玩家经验加成次数的判断逻辑

- 将TwoTimes和ThreeTimes的判断从不等于0改为大于0
- 将EnergyTime的判断从不等于0改为大于0
- 统一所有次数字段的类型为int32以避免负数问题

chore(admin): 清理无用代码

- 移除未使用的context包导入
- 注释掉未完成的TimeMap接口实现
```
2026-03-03 23:40:21 +08:00
昔念
7c1540ff6d ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
refactor(common/data/xmlres): 注释掉未使用的MonsterMap配置变量

- 将MonsterMap配置变量注释掉,因为当前不再使用该配置
- 相应地注释掉了初始化代码中的MonsterMap赋值逻辑

feat(logic/controller): 统一CanFight方法返回值为ErrorCode

- 修改PlayerFightBoss等战斗控制器中的Can
2026-02-25 16:18:10 +08:00
昔念
53b18cfd0c 修复大乱斗问题
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-02-20 09:40:22 +08:00
xinian
756edc1cdd 1
Some checks failed
ci/woodpecker/push/my-first-workflow Pipeline failed
2026-02-17 22:36:18 +08:00
昔念
ffe3ff18bf 1
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-02-08 17:57:42 +08:00
xinian
70f6d62069 refactor: 将战斗初始化逻辑移动到新文件并优化AI技能选择 2026-01-29 13:59:48 +08:00
1
445aab3c22 1 2026-01-27 06:40:49 +00:00
1
7d8497250d 1 2026-01-22 16:01:52 +00:00
昔念
026689f3ed ```
feat(cache): 添加复合键缓存操作支持

添加了基于 uint32+string 组合键的缓存操作方法,包括
GetByCompoundKey、SetByCompoundKey、DelByCompoundKey 和
ContainsByCompoundKey 方法,用于处理用户ID和会话ID的组合缓存场景

fix(vscode): 添加 cSpell 配置支持 struc 词汇

refactor(session): 移除过时的会话管理方法

移除了基于单一字符串键的会话管理方法,因为已迁移到使用
复合键的缓存操作方式
```
2026-01-19 18:51:56 +08:00
e341623fc0 ```
refactor(fight): 修正战斗回调函数参数类型

- 修正所有战斗相关控制器中的回调函数参数类型
- 将 func(*info.FightOverInfo) 改为 func(info.FightOverInfo)
- 保持代码逻辑不变,仅修复类型声明

feat(pet): 实现精灵图鉴功能

- 添加精灵捕捉和击杀数量统计功能
- 实现 GetPetBargeList 接口返回图鉴列表
- 在战斗胜利后自动更新图鉴状态

refactor(fight): 优化战斗循环逻辑

- 重构
2026-01-03 02:18:31 +08:00
71fc6de652 ```
feat(fight): 添加试炼之塔和勇者之塔战斗功能

- 实现FreshChoiceFightLevel方法,支持试炼之塔(2428)和勇者之塔(2414)的关卡选择
- 添加PetTawor方法,支持宠物对战功能,处理CMD 2429和2415命令
- 集成Boss配置服务,动态获取Boss信息并设置战斗属性
- 重构Boss性别检查字段访问路径,修正战斗逻辑错误
- 移除未使用的xmlres依赖
2026-01-01 05:32:56 +08:00
149fb6fb56 ```
feat(fight): 修复战斗中先手判断逻辑

在战斗回合开始时,当先手方被控制无法行动时,
正确设置真正的先手方为当前回合的先手,
确保战斗逻辑的准确性。
```
2025-12-31 03:16:58 +08:00
1
839d02b17f "fix(logic): 修复宠物技能学习校验逻辑并移除冗余战斗效果字段" 2025-12-23 13:53:34 +00:00
1
5965c8319a feat(data): 重构颜色矩阵处理逻辑,将GlowFilter和相关功能迁移到common/data包 2025-12-21 17:18:33 +00:00
1
a5502a76bb "refactor(melee): 修改BOSS颜色字段类型并优化JSON解析处理" 2025-12-16 07:06:53 +00:00
1
49b4c8cf2a refactor(item): 统一物品操作接口并优化金币处理逻辑 2025-12-16 06:54:27 +00:00
597bd7b9d5 fix(logic/service/fight): 初始化玩家时正确设置宠物最大生命值
当宠物的 Hp 字段不为零时,现在会正确地将该值赋给宠物的 MaxHp 属性。这确保了
宠物的最大生命值得到正确初始化,避免了可能的游戏逻辑错误。
2025-12-15 15:09:06 +08:00
937f97fe83 ```
feat(go): 升级 Go 版本至 1.20

统一将所有模块的 Go 版本从 1.18 或 1.19 升级到 1.20,以使用最新的语言特性和性能改进。

feat(service): 新增乱斗服务默认宠物生成逻辑

在 fight 模块中调用新的 MELEEService.Def() 方法来生成初始对战宠物,
并根据配置
2025-12-15 14:26:24 +08:00
3f059c71fa feat(pet): 更新宠物生成逻辑以支持异色属性
- 修改 `GenPetInfo` 函数签名,将 `shinyid` 参数调整为 `[]GlowFilter` 类型,并移动其位置
- 在多个控制器中更新调用 `GenPetInfo` 的地方,适配新的参数顺序和类型
- 引入 `GlowFilter` 结构用于描述异色效果,并在 `OgrePetInfo` 中添加相关字段
- 新增 `GenerateNormalizedColorMatrix` 工具函数用于生成颜色矩阵
- 调整宠物生成时对异色信息的初始化
2025-12-14 19:23:26 +08:00
1
6b534adc07 ``` feat(fight): 新增战斗回合Hook机制,实现特定条件下强制结束战斗和随机出手逻辑 2025-12-10 18:37:32 +00:00
2633402b52 fix(fight_boss): 修复 boss 战斗中索引为 0 的异常处理逻辑
当 effect 索引为 0 时,跳过无效处理以避免潜在错误。

feat(task): 更新任务奖励与注册参数配置

- 移除任务 37 中的注释项并保留有效奖励
- 修改任务 91 注册参数为 246
- 清空任务 300 的物品奖励列表,并设置类型为 30

refactor(fight_input): 优化 meetpet 初始化条件判断

将多个判断条件拆分为独立 if 判断语句,提高代码可读性。

refactor(effect_service): 移除 Scan 错误检查冗余逻辑

简化数据库查询后的错误处理流程,提升
2025-12-09 11:19:15 +08:00
35c89215f7 ```
feat(player): 重构玩家金币系统,使用BaseSysUserService管理金币

将玩家金币逻辑从PlayerInfo中移除,改为通过BaseSysUserService进行统一管理。
新增了金币的获取与设置方法,支持以分为单位的精确计算。
调整了登录时用户服务的初始化逻辑,确保User字段正确赋值。

fix(pet): 修复宠物性格道具使用逻辑错误

更新了多个性格相关道具的处理方式,包括新增的性格转换道具范围。
修正了性格随机与指定逻辑,避免越界问题并增强可维护性。

feat(fight): 战斗初始化时恢复宠物状态

在战斗初始化阶段调用宠物治愈方法,确保战斗开始前宠物处于健康状态。

feat(admin): 调整管理员会话获取接口参数类型

修改GetPerson方法传入参数为uint32类型,提高数据一致性与安全性。

refactor(model): 移除PlayerInfo中的GoldBean字段

金币字段不再存储于PlayerInfo结构体中,转而由BaseSysUser模块统一管理。
```
2025-12-06 23:59:00 +08:00
8d7d9da0bf feat(item): 新增性格道具支持与相关逻辑调整
新增对特定性格道具的支持,包括 Nature 和 NatureSet 属性解析,
并优化精灵融合、任务奖励、战斗捕捉等流程中的宠物添加方式。
同时修复部分战斗逻辑及数据结构引用问题。
2025-12-03 22:05:28 +08:00
aad1e2f44c feat(fight): 添加战斗前状态检查与经验获取限制判断
- 在挑战BOSS和野外怪物战斗前,增加 CanFight 状态检查,防止非法战斗
- 修复战斗胜利后经验与物品发放逻辑,增加 CanGetExp 判断避免重复获取
- 优化战斗中精灵切换逻辑与相关伤害效果处理,确保死亡标记正确设置
- 修正战斗轮次中被动切换行为及技能执行顺序问题
- 移除无用的管理员会话控制器和宠物融合模型代码
- 调整战斗输入结构体中的 Switch 类型为 Map 以提高查找效率
- 修复战斗中精灵存活判定条件,
2025-12-01 23:31:48 +08:00