Commit Graph

38 Commits

Author SHA1 Message Date
1
35935549bd refactor(effect): 重构效果节点生命周期管理及属主控制逻辑
- 将Alive()方法改为Alive(bool)可设置方法,替代NotALive()
- 将GetOwner()改为Owner(bool)可设置方法
- 修复效果初始化时默认激活状态
- 优化效果叠层和取消逻辑
- 修正超时处理日志输出
2025-11-03 14:46:33 +00:00
ea4ca98e49 fix(socket): 修复连接处理逻辑并优化数据解码流程
- 修复 `OnOpen` 中网络类型判断位置不正确的问题,提前过滤非 TCP 连接
- 移除 `OnTraffic` 中重复的网络类型判断
- 优化 `TomeeSocketCodec` 的解码逻辑,使用 `InboundBuffered` 和 `Next` 提高效率
- 调整 `ByteArray` 创建方法参数,避免可变参数带来的性能损耗
- 在 `ClientData` 中将 `IsCrossDomain` 改为 `sync.Once` 避免重复处理
- 使用 `AsyncWrite` 替代 `Write` 提升写入异步性
- 修复连接关闭流程,使用
2025-11-01 14:31:19 +08:00
e75ecd413d feat(fight): 重构战斗系统技能逻辑与精灵切换功能
- 优化技能执行流程,统一使用 SelectSkillAction 作为技能载体
- 移除冗余的技能 ID 字段,简化数据结构
- 调整命中判断和技能效果触发机制,提升准确性
- 修改精灵切换与捕获相关方法参数格式
- 更新技能列表结构为动态数组以支持灵活长度
- 完善睡眠等异常状态的处理逻辑
- 修复战斗中技能 PP 扣减及副本还原问题
- 清理无用代码,如多余的 FindWithIndex 函数定义
- 强化验证码缓存键命名规则,增强安全性
2025-10-26 20:56:03 +08:00
db3a21dd91 feat(login): 引入基于 IP 的限流中间件
新增 github.com/xiaoqidun/limit 依赖,替换原有的全局速率限制器,
实现针对客户端 IP 的细粒度限流控制。在服务启动时初始化限流器,
并在程序退出前确保后台任务正确停止。同时更新 go.work 和 login/go.sum
文件以包含新的依赖项。此外,在 logic/main.go 中添加了主玩家数据
保存逻辑以确保服务关闭时数据持久化。
2025-10-24 23:14:36 +08:00
83fb06a229 feat(utils): 重构 OrderedMap 为 OrderMap,支持排序和非阻塞遍历
- 将原有的 `OrderedMap` 替换为 `OrderMap`,基于 `map` 和 `slice` 实现,提升性能并简化逻辑
- 支持自定义 key 排序规则,若未提供则按插入顺序维护
- 提供 `Set`、`Get`、`Delete`、`Keys`、`Values` 等基本操作,均并发安全
- 引入非阻塞遍历机制(`Iter`、`Iter
2025-10-22 21:30:05 +08:00
ae88790ed3 修改range,支持技能效果
Updated comments for clarity and consistency in the OrderedMap implementation, enhancing the understanding of the data structure and its methods.
2025-10-22 00:57:25 +08:00
1
341fc4120b ``refactor(websocket): 移除未使用的os包导入并硬编码debugTrace为true`` 2025-10-16 15:26:12 +00:00
e84d55aec0 ```
feat(player): 优化玩家连接与消息发送逻辑

- 为 `Conn` 结构体新增 `Close()` 方法,并在多处替换原有的 `GetConn().Close()` 调用,
  统一通过 `MainConn` 操作以提高代码一致性。
- 在 `SendPack` 和 `GetPlayer` 等方法中增加互斥锁保护,确保对 `MainConn` 的访问是线程安全的。
- 移除冗余的 `GetConn()` 方法,直接使用 `MainConn` 提升性能并简化结构。

refactor(rpc): 临时将 RPC 客户端地址硬编码为本地地址

- 将 rpcaddr 临时设置为 "127.0.0.1",便于调试和开发环境测试。

refactor(handler): 扩展 JSON-RPC 方法过滤条件

- 增加了对 "Kick" 和 "RegisterLogic" 方法的排除,防止其被注册到 RPC 处理器中。

refactor(fight): 精简战斗服务中的判断逻辑

- 简化 `IsFirst` 函数返回表达式。
- 移除了多余的 defer 语句,提前设置 `closefight` 标志位。

refactor(pet): 改进宠物经验添加机制

- `AddPetExp` 方法新增布尔参数 `bro` 控制是否广播更新。
- 修改调用点以适配新参数,修复潜在的数据同步问题。
- 初始化宠物时禁止触发经验变更广播。

chore(build): 删除旧版二进制文件 logic1

- 清理无用的编译产物,避免混淆项目结构。
```
2025-10-14 01:26:59 +08:00
b258a81bb8 1 2025-10-11 01:01:36 +08:00
1
6b06c580ff 修改底层map 2025-10-10 04:26:07 +00:00
ed01ddedc3 踢人逻辑修改,先保存数据 2025-10-03 20:20:17 +08:00
1
2d187e4474 refactor(fight/effect): 实现Effect9的BeforeSkill逻辑,新增Min泛型函数并优化效果叠加处理 2025-09-24 22:20:59 +00: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
1
a05219c6ae refactor(pet): 重构宠物经验计算逻辑,引入种族值参数并优化进化条件判断 2025-09-22 15:47:07 +00:00
1
c0cda6fa58 refactor(global): 将DefaultGenerator移至global包并更新引用,移除utils包中的默认生成器 2025-09-22 14:48:55 +00:00
1
55ca29a22e refactor(utils): 移除第三方雪花算法依赖,实现自定义Snowflake生成器并修复cronex递归调用问题 2025-09-22 14:44:02 +00:00
1
6fb5a9d09d refactor(global): 将Cron.Start()改为go Cron.Run()并移除cronex.Start()方法 2025-09-22 06:17:39 +00:00
1
9a3ffe93d8 feat(utils): 添加cronex高性能cron库支持,包含Apache 2.0许可证和完整测试用例 2025-09-22 06:15:39 +00:00
1
6f03c2453d refactor(utils): 移除cronex子模块引用 2025-09-22 06:14:41 +00:00
1
b662457347 refactor(utils): 更新cronex子模块引用 2025-09-22 06:10:11 +00:00
1
dc46cd5b66 feat(global): 添加时间轮支持并优化玩家登录逻辑,移除冗余地图ID检查 2025-09-22 06:07:58 +00:00
1
a0441700e5 refactor(fight): 重构暴击判断逻辑并优化伤害计算,添加泛型Max函数到utils包 2025-09-10 08:05:45 +00:00
a09bc7884c feat(logic): 添加玩家改名功能并优化战斗逻辑
- 在 CreatePlayer.go 中添加 ChangePlayerName 函数,实现玩家改名功能
- 更新 FightC 类的 battleLoop 方法,增加平局条件和处理逻辑
- 优化 enterturn 方法,统一处理战斗结束逻辑
- 移除 global.go 中的 log 包引用,改为使用 glog
- 更新 go-sensitive-word 依赖版本
2025-09-10 00:41:09 +08:00
685069fded feat(cool): 添加敏感词过滤功能
- 引入 go-sensitive-word 敏感词过滤库
- 在全局初始化中加载敏感词库并配置过滤器
- 在创建玩家时应用敏感词过滤,替换不合适的昵称内容
2025-09-09 01:11:10 +08:00
b3f02b82c1 fix(common): 修复 Field_Pack 方法的逻辑
- 在 Field_Pack 方法中增加了对剩余空间的处理,确保在数据长度不足时能够正确填充
- 优化了数据拷贝的逻辑,提高了代码的效率
- 在 SocketHandler_Tomee 中启用了接收封包的日志打印,便于调试和监控
2025-09-08 01:48:47 +08:00
75e428f62e refactor(blazing): 重构任务系统并优化相关功能
- 重构了任务系统的数据结构和执行逻辑
- 优化了地图加载和怪物刷新机制
- 改进了宠物系统的基础架构
- 调整了玩家信息和背包的处理方式
- 统一了数据访问层的接口和实现
2025-08-30 21:59:52 +08:00
1
3b6e69f1f4 refactor(fight): 重构随机数生成器模块并优化战斗技能PP管理 2025-08-25 16:44:50 +00:00
10eed9418c refactor(common): 重构 Conn 实体并优化地图进入逻辑
- 优化 Conn 实体的 SendPack 方法,提高代码复用性
- 添加 goja 模块到 go.work 文件
- 重构地图进入逻辑,增加玩家广播和刷怪功能
- 调整 OutInfo 结构中的 Vip 和 Viped 字段类型
- 简化 MonsterRefresh 结构体定义
2025-08-18 00:38:14 +08:00
1
de5ee07a22 refactor(model): 重构玩家登录信息结构并优化精灵技能定义 2025-08-15 08:17:43 +00:00
1
a9dfe6aac5 "refactor(player): 添加错误检查方法并迁移任务测试代码到独立文件" 2025-08-05 23:49:31 +00:00
0f6c8d9329 refactor(sqrt_test): 重构事件测试逻辑
- 修改了事件订阅和发布机制,增加了任务完成的判断和处理
- 优化了代码结构,提高了可读性和可维护性
- 移除了不必要的
2025-08-05 17:33:38 +08:00
b6e90cf7f5 test(common): 重构 Test_event 测试函数
- 重写了 Test_event 测试函数,移除了未使用的测试代码
- 新增了基于 Task 结构的事件处理逻辑
- 实现了任务计数和完成状态的更新
- 添加了事件发布和订阅的示例代码
2025-08-05 17:01:21 +08:00
cd7583ba05 test(utils): 添加事件驱动模型测试
- 在 sqrt_test.go 中添加了 fastSqr1 测试函数,用于测试事件驱动模型
- 新增了 Event 和 Uint32AsyncEvent 类型用于测试
- 更新了 go.work、go.mod 和
2025-08-05 16:10:18 +08:00
1
3bbc786520 feat(utils): 新增快速平方根算法实现,包含卡马克算法及性能测试 2025-07-30 02:27:58 +00:00
1
43dc9394c5 "refactor(vscode): 移除项目中的VSCode特定GOROOT配置" 2025-07-25 06:22:16 +00:00
1
7a0d6d9556 feat(utils): 新增泛型SyncMap实现,支持线程安全的键值存储和操作 2025-07-25 03:15:45 +00:00
1
58e972eea3 "refactor(common): 重构序列化工具包,将serialize重命名为utils并添加bitset组件" 2025-07-25 01:29:03 +00:00