Commit Graph

420 Commits

Author SHA1 Message Date
1
22c167df14 cicd修改 2025-10-05 07:42:33 +00:00
1
dc6a003cbc cicd 2025-10-05 07:35:26 +00:00
1
315134c9b5 测试CICD 2025-10-05 07:29:35 +00:00
1
b93a4dd1a2 技能实现 2025-10-05 07:13:43 +00:00
1
4e2073e185 修复rpc问题 2025-10-05 02:00:00 +00:00
1
a8098481d5 修改logic 长时间后无法登录问题 2025-10-05 01:47:45 +00:00
f847386b7c feat(fight): 优化技能命中逻辑与效果触发流程
重构了技能攻击处理逻辑,调整了命中判断和效果应用的顺序。
新增 `Calculate_Pre` 接口方法用于实现无视类效果。
修复技能是否命中的判断逻辑,确保效果命中状态正确传递。
清理上回合缓存的效果数据,保证每回合初始状态干净。
统一使用 `IsFirst` 方法判断先后手,提升代码一致性。
完善玩家离线时的数据保存顺序,避免重复操作。
更新依赖模块版本信息。
2025-10-05 00:29:22 +08:00
ed01ddedc3 踢人逻辑修改,先保存数据 2025-10-03 20:20:17 +08:00
1
5627458311 修改战斗 2025-09-30 10:40:36 +00:00
1
23fdd9e968 Merge branch 'main' of https://github.com/72wo/blazing 2025-09-30 10:34:41 +00:00
3aa0362cfe 1提交 2025-09-30 18:32:15 +08:00
91d0d29ec9 战斗修改 2025-09-29 02:40:35 +08:00
7df70f2375 feat(logic/service/fight/input): 移除伤害结算后触发接口
从 Effect 接口定义中移除了 Damage_Post 方法声明。该方法原计划用于处理
伤害结算后触发的逻辑(如血量扣除后触发的克制等重写伤害),但目前暂不
实现此功能节点。
2025-09-29 02:40:24 +08:00
1
f422604526 refactor(fight): 调整技能效果解析位置,确保在技能使用条件判断后执行 2025-09-28 12:45:04 +00:00
1
f08a5c4ef0 refactor(fight/input): 移除Damage_Post相关逻辑,清理伤害结算后触发代码 2025-09-28 09:31:08 +00:00
1
1655005741 refactor(fight/input): 重构Effect执行逻辑,修复Exec方法返回值问题 2025-09-28 08:59:28 +00:00
1
00144109dd 1 2025-09-28 08:13:42 +00:00
ed320300db Merge branch 'main' of github.com:72wo/blazing 2025-09-28 01:58:48 +08:00
6eb244b73f ```
feat(rpc): 优化 RPC 客户端地址配置逻辑

- 将 RPC 地址从硬编码改为通过 service 动态获取
- 修改端口常量名称 rpcaddr 为 rpcport,提升语义清晰度
- 调整客户端连接逻辑以支持动态 IP 和端口拼接

fix(fight): 修复技能命中与闪避逻辑执行顺序

- 调整战斗中技能攻击流程,确保命中率和闪避计算正确应用
- 更新 effect 接口定义,增强技能使用前后的控制节点
- 增加伤害计算过程中的多阶段触发机制(加法、乘法、减法等)

feat(config): 更新数据库及 Redis 配置信息

- 修改 PostgreSQL 用户名、密码和数据库名
- 更新 Redis 访问密码
- 调整服务器 IP 获取方式,区分测试环境与生产环境

chore(vscode): 优化调试配置 console 输出设置

- 在 launch.json 中为调试配置增加 integratedTerminal 控制台选项
- 统一逻辑服务启动参数格式

chore(gitignore): 忽略特定平台编译产物

- 添加针对 Linux 平台的 logic 和 login 模块编译文件忽略规则
```
2025-09-28 01:58:42 +08:00
1
290e678559 refactor(socket): 优化TCP连接处理逻辑,新增错误连接计数并调整返回值处理 2025-09-27 17:35:12 +00:00
1
d7712ef70f refactor(config): 更新数据库和Redis配置,修改主机地址和密码 2025-09-26 21:21:13 +00:00
1
08d8ab3ed9 refactor(fight/effect): 重构技能效果处理逻辑,统一使用DamageZone结构管理伤害值,新增Effect20疲惫效果和先/后手威力翻倍效果 2025-09-26 21:15:58 +00:00
1
d46849a020 refactor(fight/effect): 重构能力操作类型枚举命名,统一使用大写形式(ADD/SUB/COPY/RESET)并更新相关调用点 2025-09-26 18:39:59 +00:00
c52c409ffc feat(player): 新增玩家累计经验查询接口
新增 PlayerExp 控制器方法,用于返回玩家的累计经验值。同时调整了经验池字段类型为 uint32 并修复相关使用逻辑。

feat(pet): 实现宠物经验增加与升级逻辑

在 Player 结构体中新增 AddPetExp 方法,支持宠物经验增长、自动升级及进化判断。升级后会重新计算面板属性并推送更新包。

feat(fight): 重构战斗伤害计算与效果系统

引入 DamageZone 和 EnumDamageType 类型,统一红伤处理流程;移除旧有的 Pet/Skill/Prop 属性获取临时修改机制,改为直接访问真实属性。更新多个技能效果实现以适配新结构。

refactor(effect): 优化技能效果初始化和生命周期方法

统一技能效果初始化方式,明确各阶段回调函数职责,如 PreActionStart、PreAttacked 等。删除已废弃的属性修改钩子函数,并更新状态类效果实现。

refactor(input): 移除 deepcopy 依赖并替换为 go-deepcopy

将原先使用的 mohae/deepcopy 替换为 barkimedes/go-deepcopy,用于战斗节点中的 effect 拷贝逻辑,提升性能和安全性。

refactor(model): 调整玩家信息字段类型

将 PlayerInfo 中的 GoldBean 字段由 int32 改为 uint32,ExpPool 字段由 int64 改为 uint32,确保数据类型一致性与合理性。

feat(nono): 增加 Nono 跟随/收回协议结构定义

新增 NonoFollowOrHomeInInfo 和 NonoFollowOutInfo 结构体,用于处理 Nono 宠物的跟随与收回操作指令。

chore(deps): 添加 go-deepcopy 依赖

在 go.mod 中引入 github.com/barkimedes/go-deepcopy 依赖库,用于替代原有的 deepcopy 工具。
2025-09-26 13:33:55 +08:00
1
728f3a52d6 refactor(fight/effect): 重构伤害处理逻辑,统一使用DamageZone管理伤害值并优化Effect接口,移除过时方法 2025-09-26 02:09:33 +00:00
1
6a3a8ba20f refactor(fight/effect): 重构伤害计算逻辑,移除Effect0中的最大伤害限制并优化伤害传递机制,新增BeforeAttacked触发点 2025-09-25 20:34:33 +00:00
1
a2aaf7fff8 refactor(fight/effect): 重构技能命中处理逻辑,统一使用OnHit/OnMiss接口并新增Effect85偷取强化效果 2025-09-25 18:13:16 +00:00
1
b62f956371 refactor(fight/effect): 重构属性操作逻辑,新增AbilityOpType枚举并优化SetProp方法,支持多种能力操作类型 2025-09-25 17:15:06 +00:00
1
3f37ce63de refactor(fight): 重构战斗模式与状态枚举,新增加载进度功能并优化战斗初始化逻辑 2025-09-25 14:51:11 +00:00
1
1f73310bf0 Merge branch 'main' of https://github.com/72wo/blazing 2025-09-25 14:08:40 +00:00
1
d28661e752 refactor(service/user): 将用户服务注册相关功能从reg.go迁移至info.go 2025-09-25 14:08:35 +00:00
07c08b767b feat(fight): 重构技能和受击触发逻辑,统一命名规范
- 将 `OnHit`、`AfterHit` 等方法重命名为 `AfterSkill` 和 `Attacked`,统一触发时机命名
- 调整 `BeforeSkill` 与 `PreSkill` 的职责,明确技能前处理逻辑
- 修改 `UseSkill` 为 `CanSkill`,增强语义清晰度
- 补充精灵切换时的触发方法 `OnSwitchOut` 与 `OnOwnerSwitchIn`
- 修复战斗中属性拷贝逻辑及状态持续回合计算的安全检查
- 增加捕获精灵后的日志输出,便于调试追踪
- 完善默认伤害效果节点的初始化逻辑
2025-09-25 13:07:56 +08:00
1
d9d47b8d21 refactor(fight/effect): 封装Effect2的BeforeSkill逻辑到Prop回调中,确保正确获取敌方防御属性 2025-09-24 23:14:27 +00:00
1
e7ac3991c3 refactor(fight/effect): 修正Effect2初始化错误,将误用的Effect9改为Effect2 2025-09-24 22:30:58 +00:00
1
be61dd253d refactor(fight/effect): 实现Effect2的BeforeSkill逻辑,当对方体力低于1/2时技能威力加倍 2025-09-24 22:29:19 +00:00
1
2d187e4474 refactor(fight/effect): 实现Effect9的BeforeSkill逻辑,新增Min泛型函数并优化效果叠加处理 2025-09-24 22:20:59 +00:00
1
1bccc4a2da refactor(fight/effect): 实现伤害计算加区和乘区逻辑,优化精灵切换效果清除机制 2025-09-24 21:39:57 +00:00
1
a4b2e5da9e refactor(fight/effect): 重构技能威力计算逻辑,优化暴击判定方式并新增BeforeSkill接口 2025-09-24 20:51:42 +00:00
1
726a2d6cb5 refactor(fight/effect): 实现精灵切换相关触发接口并优化效果持续时间处理 2025-09-24 20:17:44 +00:00
1
5a8d84ed40 refactor(fight/effect): 重构效果触发时机处理,统一命中前/后接口并移除冗余方法 2025-09-24 20:01:12 +00:00
1
3314c11b48 refactor(fight/effect): 重构效果命中处理逻辑,统一Hit接口并优化效果触发时机 2025-09-24 19:47:01 +00:00
1
29d485fde5 refactor(fight/effect): 重构效果触发机制,统一OnHit接口并优化伤害结算流程 2025-09-24 18:53:54 +00:00
1
266a328159 refactor(fight/effect): 统一效果初始化接口,重构效果类型管理并优化参数传递逻辑 2025-09-24 16:36:32 +00:00
e909200799 fix(logic/service/fight/input/nodemanger.go): 修正技能、属性、伤害和状态效果的ID偏移量计算
移除了多余的 `-1` 操作,使ID映射逻辑更加准确。
涉及的函数包括:InitSkillEffect、InitPropEffect、InitDamageEffect 和 InitStatusEffect。
2025-09-24 19:56:22 +08:00
805fe8ec8d fix(fight): 修复技能效果获取逻辑并调整伤害计算方式
-
2025-09-24 19:46:42 +08:00
9b078d7820 fix(fight): 修复技能效果添加逻辑并优化效果管理
- 修改 `AddEffect` 方法,使用 `EffectID` 包装技能效果,并避免重复添加
- 将 `Effects` 类型从 `[]Effect` 改为 `*utils.OrderedMap[int, Effect]` 以提升查找和管理效率
- 移除 `Effect` 接口中的 `ID()` 方法,改由 `EffectID` 结构体维护
- 增加 `GetSkillEffect` 和 `GetDamageEffect` 方法返回带 ID 的效果结构
- 更新 `CancelTurn` 和 `Exec` 方法以适配新的数据结构
- 初始化 `Effects` 为 `OrderedMap` 实例,确保容器正确创建
2025-09-24 19:22:46 +08:00
0a1da7d035 ```
refactor(effectarg): 移动EffectArgs初始化逻辑

将EffectArgs的初始化从effectarg.go中的init函数移动到file.go的initfile函数中,
确保在使用前正确加载配置并初始化映射。

refactor(login): 更新Login方法中的Person调用

修改Login方法中对Person函数的调用,传递UserID参数以获取正确的用户信息。

refactor(user): 统一使用Person方法替代PersonOther

在UserSimInfo和UserMoreInfo方法中,将原先调用的PersonOther方法统一替换为
Person方法,保持代码一致性。

refactor(effect_damage): 简化属性获取和伤害计算逻辑

移除deepcopy相关逻辑,简化Effect0的OnSkill方法中的属性获取和伤害计算流程,
直接通过输入参数进行计算。

refactor(fightc): 优化玩家输入处理和战斗逻辑

更新GetInputByPlayer方法中的玩家判断逻辑,使用UserID比较代替对象比较;
在initplayer中添加InitAttackValue调用;
修复battleLoop中打印语句的格式问题;
调整技能攻击处理流程,增加SkillUseEnd回调调用。

refactor(attr): 改进属性获取方法和伤害计算逻辑

将GetProp方法重命名为Prop,并支持传入对方输入参数;
更新CalculatePower方法签名,使用Input类型代替BattlePetEntity;
在属性获取和伤害计算中正确处理双方属性影响。

refactor(playeraction): 简化技能使用逻辑

简化UseSkill方法中获取当前宠物信息的逻辑,去除冗余的条件判断;
在找到对应技能后添加break语句,提高执行效率。

refactor(reg): 更新Person方法实现

合并Person和PersonOther方法为统一的Person方法;
在数据库查询失败时添加错误处理,避免潜在的空指针异常。
```
2025-09-24 12:40:13 +08:00
1
096828646f refactor(fight/input): 优化GetProp方法属性处理逻辑,调整AfterAttr执行条件并修复注释格式 2025-09-24 00:05:28 +00:00
1
06ea93a317 refactor(fight/effect): 重构属性获取逻辑,将深拷贝恢复机制移至GetProp回调并优化OnSkill伤害计算流程 2025-09-23 23:48:22 +00:00
1
c42199a578 refactor(fight/effect): 将属性处理逻辑提取至Input.GetProp方法,优化OnSkill方法并移除冗余代码 2025-09-23 23:35:53 +00:00