|
|
8b48ce1c06
|
```
feat(fight): 调整技能与状态效果逻辑,优化战斗流程
- 注释掉状态 ID 13 的注册,暂不启用 DrainedHP 状态
- 为 Effect10 增加输入参数设置,标记目标单位
- 重构 Effect62 实现逻辑,新增子效果 Effect62_1 支持回合触发秒杀机制
- 引入 decimal 包以支持精确伤害计算
- 修改命中判断流程,修复部分技能命中异常问题
- 增加睡眠状态对空技能的防御处理
- 优化战斗死亡判定逻辑,支持同归于尽判定及战斗结束控制
|
2025-11-08 23:20:48 +08:00 |
|
|
|
4f421842f4
|
feat(effect): 新增吸血状态并重构部分技能效果逻辑
新增 PetStatus.DrainedHP 状态用于处理寄生种子等吸血效果,
重构 Effect96 与 DrainHP、DrainedHP 类型及相关接口方法。
统一将部分状态伤害逻辑移至 DrainHP 基类中,并修复睡眠状态
|
2025-11-08 19:48:59 +08:00 |
|
|
|
b864576ca9
|
fix(task): 修复任务奖励与宠物
|
2025-11-08 18:37:11 +08:00 |
|
|
|
c916440033
|
```
feat(fight): 完善战斗系统中道具使用逻辑与血量恢复机制
- 修改 item.go 中 Item 结构体,将 Bonus 字段类型由 string
|
2025-11-08 16:38:41 +08:00 |
|
|
|
ca005bdb56
|
```
feat(logic/service/fight/input/fight.go): 更新宠物治疗时的攻击值恢复
在宠物使用治疗技能时,同步更新攻击值的恢复量,确保治疗效果正确反映到战斗属性中。
```
|
2025-11-08 02:21:30 +08:00 |
|
|
|
a42bd76517
|
```
feat(fight): 新增使用宠物物品功能
- 在Controller中新增UsePetItemInboundInfo方法,用于处理宠物物品使用请求
- 在FightI接口中添加UseItem方法定义,支持传入捕获时间和物品ID
- 修改UseItemAction结构体,增加CacthTime字段以记录宠物捕获时间
- 新增UsePetItemInboundInfo结构体,定义宠物物品使用的消息格式
- 在FightC中实现UseItem方法,将使用物品的动作发送到actionChan
```
|
2025-11-08 01:30:53 +08:00 |
|
|
|
cad3ad6913
|
```
feat(pet): 新增宠物驳船列表功能并调整数据类型
新增 Controller 方法 PetBargeList 用于处理宠物驳船列表请求,
并修改 PetBargeListInboundInfo 和 PetBargeListInfo 中部分字段的数据类型
从 uint64 调整为 uint32。同时新增 PetBargeListOutboundInfo 结构体
用于响应数据的封装。
```
|
2025-11-08 01:12:53 +08:00 |
|
|
|
28bef2cf98
|
feat(fight): 调整精灵切换逻辑与属性计算流程
移除 OnOwnerSwitchIn 和 OnOwnerSwitchOut 接口定义及调用逻辑,
简化精灵切换时的效果触发机制。
调整 PetInfo 属性计算方法中 Hp 与 MaxHp 的赋值顺序,
确保初始化时 Hp 值正确设置。
|
2025-11-08 01:07:37 +08:00 |
|
|
|
06cd6199b0
|
```
fix(fight): 修复战斗逻辑中技能解析和优先级判断的问题
调整了战斗回合开始前的技能解析逻辑,确保即使攻击被放弃也能正确施加效果。
修复了技能优先级相同时的速度比较逻辑,避免错误的角色交换。
优化了临时变量的使用,提高代码可读性。
fix(socket): 修复TCP连接处理中的类型断言问题
在处理TCP连接时增加类型断言检查,防止因上下文类型不匹配导致的panic。
fix(effect): 修正默认持续回合数的随机范围
将随机持续回合数从
|
2025-11-08 00:47:45 +08:00 |
|
|
|
0517447d9c
|
```
fix(common/rpc): 注释掉本地调试用的rpc地址配置
将原本用于本地调试的rpc地址配置注释掉,避免影响正式环境的rpc连接配置。
```
|
2025-11-07 23:22:00 +08:00 |
|
|
|
e2a184b687
|
feat(rpc): 优化客户端连接管理,使用 sync.Map 替代普通 map
将 `Clientmap` 从普通 map 改为 `sync.Map`,提升并发安全性。新增
`addClient` 和 `getClient` 方法封装存取逻辑,并在多处调用点进行了替换。
fix(fight): 修复战斗逻辑中技能ID与攻击时间字段引用错误
将 `attacker.AttackValue.SkillID` 和
`attacker.AttackValue.AttackTime` 的访问方式修正为正确的字段路径。
refactor(fight): 调整战斗结束信息处理流程
合并 `FightOverInfo` 结构到 `FightC` 中,简化广播发送逻辑,统一通过
`f.FightOverInfo` 发送战斗结果。
refactor(effect): 修改效果叠加判断逻辑并增强健壮性
更新效果节点比较方法,增加参数匹配检查以支持更精确的效果识别;同时添加
`equalInts` 工具函数用于数组内容对比。
|
2025-11-07 22:50:34 +08:00 |
|
|
|
31b8a27eeb
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-06 20:21:43 +00:00 |
|
|
|
b4e1129c56
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-06 18:24:51 +00:00 |
|
|
|
ce770e6cf1
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-06 17:25:16 +00:00 |
|
|
|
52921e36f0
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-06 14:43:26 +00:00 |
|
|
|
b8a6aacaa9
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-06 14:28:04 +00:00 |
|
|
|
0dda1f1ea7
|
Merge branch 'main' of https://github.com/72wo/blazing
|
2025-11-06 13:43:21 +00:00 |
|
|
|
e2578f6c63
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-06 13:43:16 +00:00 |
|
|
|
7ef697fa48
|
Merge branch 'main' of github.com:72wo/blazing
|
2025-11-06 12:26:29 +08:00 |
|
|
|
3bbdbf0af3
|
```
feat(common): 添加IP私有地址和环回地址判断函数
在 qqwry.go 中新增 isPrivateIP 和 isLoopbackIP 函数,用于判断 IPv4/IPv6
是否为私有地址或环回地址,并在查询 IP 时优先返回局域网和私有地址标识。
fix(base): 修正系统日志查询字段
将 base_sys_log.go 中的查询字段从 "user".name 更正为 "user".username,
确保关联查询正确显示用户名。
```
|
2025-11-06 12:26:23 +08:00 |
|
|
|
f687599d1a
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-05 22:34:03 +00:00 |
|
|
|
4263e4050c
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-05 22:18:29 +00:00 |
|
|
|
bd43c75dce
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-05 22:17:03 +00:00 |
|
|
|
5092186b4e
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-05 22:07:46 +00:00 |
|
|
|
cfde50db42
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-05 17:37:32 +00:00 |
|
|
|
3aff7f7ad6
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-05 17:19:09 +00:00 |
|
|
|
4d7064e59f
|
refactor(fight): 优化战斗逻辑代码结构,清理冗余代码
|
2025-11-05 17:06:08 +00:00 |
|
|
|
ed08006786
|
refactor(fight): 增加战斗控制器空指针检查,优化逃跑和切换精灵逻辑
|
2025-11-05 13:37:01 +00:00 |
|
|
|
e398c31834
|
refactor(fight): 修正技能攻击处理逻辑,优化暴击破防条件判断
|
2025-11-04 16:55:14 +00:00 |
|
|
|
f7b1e6ce08
|
refactor(fight): 优化状态效果获取逻辑,增加存活状态检查
|
2025-11-04 14:16:52 +00:00 |
|
|
|
603c33c832
|
refactor(logic): 优化战斗状态效果持续时间计算及清理冗余代码
|
2025-11-04 14:01:17 +00:00 |
|
|
|
699db8406b
|
```
feat(base): 添加邮箱注册码功能及用户注册接口
- 在 `sessionManager` 中新增邮件注册码缓存管理实例和相关方法
- 实现生成、保存、验证、删除邮件注册码的逻辑
- 新增 `/reg` 和 `/email` 接口用于用户注册和发送验证码
- 引入 `golang-lru` 依赖以支持限流缓存功能
- 调整包导入顺序,优化代码结构
```
|
2025-11-04 11:44:07 +08:00 |
|
|
|
689e7c51e2
|
Merge branch 'main' of github.com:72wo/blazing
|
2025-11-04 10:47:35 +08:00 |
|
|
|
4da683d5ea
|
feat(base): 添加邮件验证码发送功能并注释机器人测试代码
|
2025-11-04 02:46:28 +00:00 |
|
|
|
84875585b5
|
```
feat(logic): 重构状态效果技能的注册与触发逻辑
- 重构 Effect10 结构体,增加状态类型注释
- 重命名工厂函数 newp 为 newEffectStatus,提升可读性
- 使用 registerStatusEffects 统一注册所有状态类技能,提高扩展性
- 优化 OnSkill 方法逻辑,支持命中判定和持续回合配置
- 默认持续回合数为 1~3 随机,也可通过参数指定
```
|
2025-11-04 10:43:40 +08:00 |
|
|
|
3735309f1b
|
feat(base): 修正IP查询逻辑使用实际客户端IP而非固定测试IP
|
2025-11-03 17:23:12 +00:00 |
|
|
|
ed4d961e32
|
feat(utils): 添加QQWry IP数据库解析功能及HTTP查询服务
|
2025-11-03 16:38:53 +00:00 |
|
|
|
f61e6cc937
|
refactor(utils): 移除QQWry IP数据库子模块依赖
|
2025-11-03 16:36:03 +00:00 |
|
|
|
abaa51af38
|
feat(log): 添加QQWry IP数据库支持并实现IP地址解析功能
|
2025-11-03 16:19:24 +00:00 |
|
|
|
e86e138d94
|
refactor(rpc): 重构服务器信息获取逻辑,移除冗余锁机制并优化踢人逻辑
|
2025-11-03 15:30:41 +00:00 |
|
|
|
35935549bd
|
refactor(effect): 重构效果节点生命周期管理及属主控制逻辑
- 将Alive()方法改为Alive(bool)可设置方法,替代NotALive()
- 将GetOwner()改为Owner(bool)可设置方法
- 修复效果初始化时默认激活状态
- 优化效果叠层和取消逻辑
- 修正超时处理日志输出
|
2025-11-03 14:46:33 +00:00 |
|
|
|
1ebf500121
|
```
feat(logic): 重构状态效果技能的注册与触发逻辑
- 重构 Effect10 结构体,增加状态类型注释
- 重命名工厂函数 newp 为 newEffectStatus,提升可读性
- 使用 registerStatusEffects 统一注册所有状态类技能,提高扩展性
- 优化 OnSkill 方法逻辑,支持命中
|
2025-11-03 19:35:56 +08:00 |
|
|
|
e8776d9884
|
feat(fight): 重构状态效果处理器并激活睡眠状态清除逻辑
- 重构 Effect10 结构体及初始化逻辑,简化状态效果的注册方式
- 更新技能触发函数 OnSkill 实现,优化命中判定与持续回合计算
- 激活睡眠状态下受击清除效果的处理逻辑
- 移除未使用的 math/rand 包引用及冗余代码注释
|
2025-11-03 19:31:17 +08:00 |
|
|
|
88f4fa7c8f
|
```
feat(rpc): 更新客户端映射变量命名以符合导出规则
将 rpc.go 中的 clientmap 变量重命名为 Clientmap,使其可被其他包访问。
同时修复了拼写错误 useid1 -> userid,并在 RegisterLogic 方法中调用 Refurh 函数。
fix(socket): 移除无效的读超时设置
删除 ServerEvent.go 中 OnOpen 方法内无意义的 SetReadDeadline 调用。
refactor(controller): 调整 COMMEND_ONLINE 接口返回结构引用路径
将 getserver.go 中 COMMEND_ONLINE 方法的响应结构体引用从 user 包切换至 rpc 包,
并替换为 rpc.NewInInfo 和 rpc.GetServerInfoList1 方法。
refactor(fight): 修改技能持续回合默认值及部分逻辑注释
将 effect_10-16_94_99_114.go 中默认随机回合数由 1~3 改为 10~12。
注释掉 fightc.go 中关于睡眠状态清除的部分代码。
refactor(effect): 调整效果叠加判断条件
在 node.go 的 AddEffect 方法中调整 MaxStack 判断逻辑,
将 "<" 条件改为 "<=" 以确保最大叠层数正确处理。
feat(player): 新增 XOR 解密函数支持数据解密
在 SocketHandler_Tomee.go 中新增 XORDecrypt 函数用于解密客户端数据,
并在 OnEvent 方法中对 header.Data 使用该函数进行解密。
refactor(user): 删除冗余结构定义并迁移至 rpc 包
移除 user/CommendSvrInfo.go 中的结构体定义及相关方法实现,
相关功能已迁移到 rpc 包中统一管理。
```
|
2025-11-03 19:25:49 +08:00 |
|
|
|
9b73de4faf
|
```
feat(rpc): 更新客户端映射变量命名以符合导出规则
将 rpc.go 中的 clientmap 变量重命名为 Clientmap,使其可被其他包访问。
同时修复了拼写错误 useid1 -> userid,并在 RegisterLogic 方法中调用 Refurh 函数。
fix
|
2025-11-03 19:14:34 +08:00 |
|
|
|
9a802ce948
|
```
fix(socket): 调整连接读超时与数据包解析逻辑
- 在 `OnOpen` 中为连接设置 3 秒读超时
- 简化 `handleTcp` 中不完整数据包的处理流程,移除手动唤醒逻辑
- 修改 `SocketCodec_Tomee.go` 中最大包体长度限制从 10MB 降至 10KB
- 修复 `Decode` 方法中未处理 `c.Next` 错误的问题
- 更新 .gitignore 忽略重复的 logic/logic1 文件路径
```
|
2025-11-03 05:46:13 +08:00 |
|
|
|
f9279e75fa
|
fix(fightc): 修复睡眠状态清除逻辑
在处理技能攻击时,只有当技能类型不是状态类技能时,
才会清除目标的睡眠状态效果。这样避免了状态类技能
误清除睡眠效果的问题。
|
2025-11-03 04:17:41 +08:00 |
|
|
|
09612067d8
|
```
refactor(socket): 优化消息处理逻辑,避免顺序执行问题
将消息处理的循环从协程外部移入协程内部,确保每个消息在独立的 goroutine 中处理,
避免因并发导致的消息顺序错乱问题。同时移除了多余的空行,使代码更简洁。
fix(controller): 为低 ID 用户设置 VIP 标志
在 COMMEND_ONLINE 接口逻辑中,新增对 UserID 小于 10000 的用户设置 IsVip = 1,
用于标识测试或特殊用户身份。
refactor(fight): 重构状态类技能效果注册与触发逻辑
- 使用 map 统一管理技能 ID 与状态类型映射关系,简化注册流程
- 重命名工厂函数 newp 为 newEffectStatus,提升可读性
- 增加命中判断和持续回合数随机逻辑,提高技能触发的灵活性
- 支持通过 SideEffectArgs 配置持续时间,默认 1~3 回合
refactor(fight): 重构能力操作类效果(Effect3)
- 重命名字段 Rev、Etype 为 Reverse、OpType 提高语义清晰度
- 优化结构体初始化方式,使用匿名结构体数组进行批量注册
- 明确能力变化作用对象(自身/对手)逻辑,增强可维护性
refactor(fight): 重构能力值变化效果(Effect4/5)
- 重命名构造函数 NewEffectStat 为 newEffectStat,符合 Go 命名规范
- 优化参数解析逻辑,防止 SideEffectArgs 越界访问
- 统一处理加减类型判断和属性变更逻辑,减少重复代码
refactor(fight): 重构技能威力翻倍条件判断逻辑
- 引入全局函数注册表 statusFuncRegistry 管理所有状态判断逻辑
- Effect96 改为通过 StatusID 查找对应函数,提升扩展性
- 合并多个相似效果注册逻辑,统一初始化入口
refactor(fight): 优化状态效果获取逻辑
- 修改 GetEffect 方法返回单个 Effect 而非数组,简化调用逻辑
- 在 fightc.go 中更新状态持续时间获取方式
- 修复部分未使用的代码注释,提高代码整洁度
fix(fight): 限制治疗后血量不超过最大值
在 Heal 方法中增加血量上限判断,防止因治疗导致当前血量超出最大值。
refactor(fight): 移除调试日志打印
删除 loop.go 中多余的 fmt.Println 日志输出语句,避免影响性能和日志干扰。
refactor(fight): 优化精灵切换相关逻辑
- 移除未实现的 panic 抛出,避免运行时异常
- 注释掉不必要的下场清除 effect 逻辑,待后续确认是否需要恢复
feat(nono): 移除 PetCureInboundInfo 中的 Type 字段
该字段原用于控制飞行模式开关,现已移除,后续功能将通过其他方式实现。
feat(player): 新增 SaveDone channel 支持保存完成通知
在 ClientData 结构体中添加 SaveDone channel,用于异步通知保存操作完成状态。
fix(user): 设置推荐服务器在线人数默认值
当 ServerInfo.OnlineID == 2 时,强制设置 UserCnt = 300 并使用测试 IP,
便于客户端识别测试服节点。
```
|
2025-11-03 04:16:30 +08:00 |
|
|
|
30ed47a30c
|
```
refactor(socket): 优化消息处理逻辑,避免顺序执行问题
将消息处理的循环从协程外部移入协程内部,确保每个消息在独立的 goroutine 中处理,
避免因并发导致的消息顺序错乱问题。同时移除了多余的空行,使代码更简洁。
fix(controller): 为低 ID 用户设置 VIP 标志
在 COMMEND_ONLINE 接口逻辑中,新增对 UserID 小于 10000 的用户设置 IsVip = 1,
用于标识测试或特殊用户身份。
ref
|
2025-11-03 03:59:59 +08:00 |
|
|
|
7a8be1c23a
|
feat(element): 优化元素计算器并发安全与缓存机制
- 使用 sync.Map 替代 map+锁,提升并发读写性能
- 预加载所有元素组合,避免运行时重复创建
- 攻击系数计算结果加入缓存,提高查询效率
- 完善缓存键命名与错误处理机制
- 调整元素组合字符串展示格式,增强可读性
fix(item): 修复购买物品时价格为0仍扣除金币的问题
- 在购买逻辑中增加对物品价格是否为0的判断
- 防止免费物品被误扣金币
|
2025-11-02 23:52:06 +08:00 |
|