Commit Graph

650 Commits

Author SHA1 Message Date
1
be32e4dba7 ``refactor(pet): 重构宠物经验添加逻辑,简化升级流程并修复经验池计算`` 2025-10-17 23:09:26 +00:00
1
3597f22667 ``refactor(pet): 优化宠物经验计算逻辑,使用NextLvExp替代临时计算`` 2025-10-17 21:40:51 +00:00
1
31c7687036 ``refactor(pet): 提取宠物基础属性计算逻辑到GetBasic方法,优化经验计算流程`` 2025-10-17 21:38:24 +00:00
1
eb3d5f05a1 ``feat(chat): 新增聊天模块基础结构,定义ChatInboundInfo消息结构体`` 2025-10-17 20:33:02 +00:00
1
08fcc72b6d ``feat(socket): 完善踢人流程日志记录,添加CloseChan确保数据保存完成`` 2025-10-16 18:59:38 +00:00
1
d32be53e70 1 2025-10-16 15:26:16 +00:00
42bb66f677 ```
feat(socket): 调整踢人逻辑以支持错误返回

将 KickPlayer 方法的返回值从 void 改为 error,
并在 KickPerson 中正确处理该错误返回。

fix(controller): 登录时增加延迟以确保踢人操作完成

在登录流程中添加 3 秒延迟,避免用户尚未被踢出就重新上线的问题。

feat(task): 完善任务缓冲获取逻辑

初始化 GetTaskBufOutboundInfo 时直接赋值 TaskId,
并移除后续重复赋值操作,提升代码可读性。

refactor(player): 优化玩家踢出方法结构

清理
2025-10-16 12:16:03 +08:00
1
ebe50f18a9 ``fix(user): 修复会话检查逻辑,添加会话删除操作`` 2025-10-15 16:24:52 +00:00
1
241cef544c `` refactor(fight): 优化效果添加逻辑,区分主动方和被动方处理并添加注释说明`` 2025-10-15 14:54:59 +00:00
1
cb1abe69b3 `` refactor(fight): 重构状态效果处理逻辑,统一使用Skill_Hit_Pre方法并修复回合开始触发时机``
待实现寄生种子
2025-10-15 14:24:46 +00:00
1
fccdda3c9d ``` fix(player): 优化战斗结束处理逻辑,避免线程阻塞并修复格式问题 2025-10-14 15:12:08 +00:00
1
fead9ed6b5 ``` refactor(player): 移除登录等待机制,前端是登录后才进入地图的,及相关同步逻辑 2025-10-14 14:36:39 +00:00
68d1a1355e ```
fix(controller): 优化数据发送逻辑,避免并发写冲突

将原先直接操作连接上下文并加锁的写法,
改为通过 player 实例封装的 SendPack 方法发送数据,
提高代码可维护性和安全性。

同时调整了 service 层踢出玩家时锁的获取顺序,
确保在关闭连接前
2025-10-14 14:25:57 +08:00
600fc29cbd ```
refactor(socket): 统一使用 gnet.Conn 替代自定义 Conn 结构体

- 将 logic/controller 和 logic/service/player 中的 *player.Conn 替换为 gnet.Conn
- 移除 player.Conn 结构体及相关封装逻辑
- 调整 SendPack 方法至 Player 实体,直接操作 gnet.Conn 发送数据
- 增加 Mu 锁保护并发写入,确保 WebSocket 和 TCP 连接安全性
- 更新 ServerEvent.go 中跨域标记设置位置
```
2025-10-14 03:07:55 +08:00
1cbdb8f22a 1 2025-10-14 02:23:00 +08: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
eff23d5bd0 fix(login): 深拷贝用户信息以避免数据竞争
在登录逻辑中,使用 `copier.CopyWithOption` 进行深拷贝,确保发送给其他玩家的
玩家信息不会因为引用同一对象而导致数据异常。同时修正了部分字段注释和默认值说明。

feat(maps): 更新地图角色信息结构体字段描述

更新 `OutInfo` 结构体中的 `Action`、`Direction` 和 `ChangeShape` 字段的注释,
使其更准确地反映其用途和含义,便于后续维护与开发理解。

fix(player): 完善登录位置判断条件

在玩家完成登录时,除了判断 `MapID > 10000` 外,增加对 `MapID == 0` 的处理,
确保角色能正确被传送到默认地图。

refactor(walk): 移除无用上下文导入并优化日志记录

移除了未使用的 `context` 包导入,并调整了行走逻辑中的赋值顺序,使代码更清晰。
同时注释掉不再需要的调试日志输出语句。
2025-10-13 23:38:48 +08:00
5e53b9caaa ```
feat(pet): 宠物治疗逻辑重构并新增治愈方法

将原有的宠物治疗逻辑提取为 PetInfo.Cure() 方法,统一处理血量和技能PP恢复。
同时优化经验分配逻辑,确保升级后正确扣除经验池并处理满级情况。

```
2025-10-13 19:46:19 +08:00
79213c67d6 ```
fix(socket): 修复TCP连接处理中逻辑取反错误

修复了`handleTcp`函数中对`s.discorse`的判断条件错误,导致CORS配置未正确应用的问题。

feat(player): 增加地图切换标记支持

在`Player`结构体中新增`Changemap`字段,用于标识玩家是否切换过地图,并在相关业务逻辑中进行设置和判断。

feat(pet): 重构精灵生成与经验处理逻辑

将`GenPetInfo`方法从model包迁移至player包,增加个体值、性格、特性等随机生成逻辑,优化技能学习处理方式。

refactor(service): 优化定时任务与连接管理

使用`cool.Cron`替代原生ticker实现刷怪定时任务,优化连接获取方式,确保并发安全。

refactor(model): 移除冗余代码并优化结构

从`pet.go`中移除已迁移至`player`包的函数定义,精简模型结构,提升模块清晰度。

refactor(config): 更新部门及字典名称配置

将`base_sys_department.json`和
2025-10-13 18:51:41 +08:00
b258a81bb8 1 2025-10-11 01:01:36 +08:00
6c9ee0c73a fix(player): 移除GetAction方法中的冗余return语句
移除了Player结构体中GetAction方法内不必要的return语句,
该语句在方法末尾没有实际作用,清理后使代码更加简洁。
2025-10-10 23:38:43 +08:00
646eeeaa2b fix(space): 修复地图ID判断逻辑并优化空间初始化流程
移除未使用的地图ID字段,调整GetSpace函数中关于玩家地图的判断条件,
确保能正确加载星球配置并初始化Space实例。同时清理冗余代码,
提升逻辑可读性与执行效率。
2025-10-10 23:16:45 +08:00
a1f6ce956e ```
feat(build): 添加 linux amd64 平台的逻辑编译脚本

在 build.bat 中新增 gox 编译命令,用于构建 linux amd64
2025-10-10 23:00:07 +08:00
13b37b432a ```
refactor(controller): 替换用户遍历逻辑为迭代回调方式

将多个控制器中使用的 `Items()` 方法遍历用户列表的方式,
统一修改为通过 `IterCb()` 回调函数方式进行处理,
提升代码一致性与可维护性。

同时引入 `blazing/logic/service/common` 包以支持 PlayerI 接口调用。
此外,移除了未使用的 `model.Pos` 类型及相关注释,精简结构体定义。
```
2025-10-10 20:46:16 +08:00
ed02b35142 111 2025-10-10 20:33:57 +08:00
1
df6606b021 修改底层map 2025-10-10 04:49:23 +00:00
1
ac671408f7 修改地图结构 2025-10-10 04:31:52 +00:00
1
6b06c580ff 修改底层map 2025-10-10 04:26:07 +00:00
1
4f9b33e85a 修改 2025-10-10 03:06:23 +00:00
1
4cb7b2d739 修改 2025-10-10 02:57:20 +00:00
1
0c07da5d1b 修复崩溃 2025-10-10 02:10:25 +00:00
618b90af18 feat(task): 增加每日任务奖励经验值至20000
将每日任务中多个精灵任务(毛毛、比比鼠、幽浮、利牙鱼等)的完成奖励从
2000点经验调整为20000点经验,以提升玩家任务收益。

refactor(fight): 使用枚举类型优化战斗结束原因字段

将 FightOverInfo 结构体中的 Reason 字段由 uint32 类型改为
EnumBattleOverReason 枚举类型,提高代码可读性和类型安全性。

同时修复了战斗结束时逃跑原因未正确传递的问题。
2025-10-10 01:31:02 +08:00
aae7074902 fix(fightc): 调整控制台输出角色标识为房主与挑战者
将原先“先手”、“后手”的输出信息修改为“房主”和“挑战者”,使日志更清晰地反映玩家身份。

重构技能解析逻辑,确保在不同攻击行为下正确解析并执行技能效果。
优化了技能优先级比较的执行顺序,提升代码可读性与逻辑准确性。
2025-10-10 00:44:45 +08:00
d4781bf4a4 feat(socket): 添加全局 panic 恢复机制
refactor(socket): 调整 defer recover 位置以优化错误捕获逻辑

feat(logic): 为服务器启动函数添加 defer recover
2025-10-10 00:40:32 +08:00
3639d18d60 fix(socket): 调整 ServerEvent.go 中的格式和导入包
- 添加 fmt 包的导入
- 调整 handleTcp 和 parser 方法中的代码格式
- 移除多余的空行

refactor(logic): 移除 SocketHandler_Tomee.go 中的调试打印

- 删除 Handle 方法中注释掉的 fmt.Println 语句
2025-10-09 21:25:41 +08:00
15bbffd3f5 fix(player): 添加空指针检查避免崩溃
在 LeaveMap 函数中添加对参数 c 的空指针检查,防止当传入 nil 时程序崩溃。此修复确保了玩家离开地图时的安全性检查。
2025-10-08 23:10:06 +08:00
a22287d987 ```
fix(network): 修复 rpc 和 websocket 地址拼接缺少冒号的问题

修复了 jsonrpc 服务启动时监听地址缺少冒号导致解析错误的问题,
同时修正 websocket 客户端连接地址的拼接逻辑。此外,注释掉了一处日志输出,
并调整了端口检测函数的参数类型以匹配实际配置结构。

```
2025-10-08 17:16:54 +08:00
da06241c06 Merge branch 'main' of github.com:72wo/blazing 2025-10-08 16:54:31 +08:00
485b22a3f7 ```
feat(config): 添加RPC端口和游戏端口配置项

在配置结构体中新增了RPC端口和游戏端口字段,并更新了配置文件以支持多端口监听。同时,
调整了服务器端口选择逻辑,优先使用默认端口,不再生成随机端口。

refactor(server): 移除随机端口生成逻辑

删除了随机端口生成及相关依赖,端口选择改为从预定义列表中查找可用端口,提高端口分配的
可控性和稳定性。

fix(fight): 注释掉未实现的panic语句

为避免程序运行时因未实现逻辑导致崩溃,注释掉了Turn_Start和Fight_Start中的panic调用,
并添加了相关注释说明后续需实现的内容。

chore(config): 更新默认配置参数

更新了服务器地址、端口、数据库连接信息及Redis配置,确保开发环境配置正确。
```
2025-10-08 16:54:03 +08:00
1
ac2b1101ef 30s无响应放弃出手 2025-10-07 08:39:18 +00:00
1
63b7699c56 修改底层连接,防止无限升级协议 2025-10-06 05:30:48 +00:00
864078f577 ```
feat(fight): 优化回合技能处理逻辑并修复技能备份问题

重构 enterturn 函数中技能备份与恢复逻辑,确保每个攻击动作的技能
状态能正确还原。同时调整战斗技能创建流程,移除无效技能ID判断,
增强日志记录,提升代码可维护性与健壮性。

fix(socket): 移除 syslog 前缀,统一服务器启动日志格式
```
2025-10-05 23:51:37 +08:00
1
b93a4dd1a2 技能实现 2025-10-05 07:13:43 +00:00
1
4e2073e185 修复rpc问题 2025-10-05 02:00:00 +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