refactor(socket): 移除未使用的 cmd 包
- 删除了 common/socket/cmd 目录下的 cmd.go 和 cmd_test.go 文件 - 更新了 TomeeHandler 中的 CMD 字段类型,从 EnumCommandID 改为 uint32 - 移除了 controller 中对 cmd 包的引用 - 重构了 getcmd 函数,返回类型从 EnumCommandID 改为 uint32
This commit is contained in:
@@ -1,104 +0,0 @@
|
||||
package cmd
|
||||
|
||||
import (
|
||||
"github.com/tnnmigga/enum"
|
||||
)
|
||||
|
||||
//TODO 实现自定义CMD,待删除
|
||||
|
||||
// Enum 辅助类型定义
|
||||
type EnumValue struct {
|
||||
Value EnumCommandID
|
||||
Name string
|
||||
}
|
||||
type EnumCommandID uint32
|
||||
|
||||
func Isexist(t any, value EnumCommandID) bool {
|
||||
return enum.Contains(CommandID, value)
|
||||
}
|
||||
|
||||
// CommandID 消息命令ID注册表
|
||||
var CommandID = enum.New[struct {
|
||||
// 在线相关命令
|
||||
Commend_OnLine EnumCommandID `enum:"105"` // 在线命令
|
||||
Login_In EnumCommandID `enum:"1001"` // 玩家登录
|
||||
System_Time EnumCommandID `enum:"1002"` // 返回当前时间戳
|
||||
Map_Hot EnumCommandID `enum:"1004"` // 显示地图热度(此地图内玩家数量)
|
||||
Gold_Online_Check_Remain EnumCommandID `enum:"1106"` // 返回玩家金豆数量
|
||||
|
||||
// 地图相关命令
|
||||
Enter_Map EnumCommandID `enum:"2001"` // 告知后端玩家进入新地图
|
||||
Leave_Map EnumCommandID `enum:"2002"` // 玩家离开地图
|
||||
List_Map_Player EnumCommandID `enum:"2003"` // 返回当前地图玩家列表
|
||||
Map_Ogre_List EnumCommandID `enum:"2004"` // 精灵刷新
|
||||
|
||||
// 用户信息相关命令
|
||||
Get_Sim_UserInfo EnumCommandID `enum:"2051"` // 返回邮人物简单信息
|
||||
Get_More_UserInfo EnumCommandID `enum:"2052"` // 返回人物详细信息
|
||||
Change_Nick_Name EnumCommandID `enum:"2061"` // 修改玩家名字
|
||||
|
||||
// 动作相关命令
|
||||
People_Walk EnumCommandID `enum:"2101"` // 玩家走路包
|
||||
Chat EnumCommandID `enum:"2102"` // 公屏聊天
|
||||
Aimat EnumCommandID `enum:"2104"` // 射击
|
||||
|
||||
// 精灵相关命令
|
||||
Get_Pet_Info EnumCommandID `enum:"2301"` // 获取精灵详细信息
|
||||
Get_Pet_List EnumCommandID `enum:"2303"` // 获取所有的精灵列表
|
||||
Pet_Release EnumCommandID `enum:"2304"` // 精灵加入背包或放回仓库
|
||||
Pet_Show EnumCommandID `enum:"2305"` // 展示精灵
|
||||
Pet_Cure EnumCommandID `enum:"2306"` // 恢复精灵状态,NONO恢复所有精灵
|
||||
Pet_Study_Skill EnumCommandID `enum:"2307"` // 升级学习替换技能
|
||||
Pet_Default EnumCommandID `enum:"2308"` // 设置精灵首发
|
||||
Pet_One_Cure EnumCommandID `enum:"2310"` // 恢复精灵状态,精灵恢复单只精灵
|
||||
Pet_Skill_Switch EnumCommandID `enum:"2312"` // 切换精灵技能
|
||||
Pet_Set_Exp EnumCommandID `enum:"2318"` // 分配精灵经验
|
||||
Pet_Get_Exp EnumCommandID `enum:"2319"` // 获取积累经验
|
||||
Pet_Room EnumCommandID `enum:"2325"` // 跟随精灵获取信息
|
||||
Get_Soul_Bead_List EnumCommandID `enum:"2354"` // 返回元神珠信息
|
||||
|
||||
// 战斗相关命令
|
||||
Ready_To_Fight EnumCommandID `enum:"2404"` // 客户端通知服务端可以开始战斗, 此包表示客户端可以开始战斗, 无需服务端回复此包内容
|
||||
Use_Skill EnumCommandID `enum:"2405"` // 使用技能
|
||||
Change_Pet EnumCommandID `enum:"2407"` // 切换精灵
|
||||
Fight_NPC_Monster EnumCommandID `enum:"2408"` // 与野怪对战的申请进入战斗
|
||||
Catch_Monster EnumCommandID `enum:"2409"` // 捕捉精灵
|
||||
Challenge_Boss EnumCommandID `enum:"2411"` // 与当前地图的Boss类型野怪进入战斗
|
||||
Note_ReadyTo_Fight EnumCommandID `enum:"2503"` // 通知客户端已经可以开始战斗
|
||||
Note_Start_Fight EnumCommandID `enum:"2504"` // 在客户端告知服务端可以开始战斗后, 服务端回给客户端战斗开始
|
||||
Note_Use_Skill EnumCommandID `enum:"2505"` // 通知使用技能
|
||||
Fight_Over EnumCommandID `enum:"2506"` // 战斗结束
|
||||
Note_Update_Skill EnumCommandID `enum:"2507"` // 升级获得学习技能
|
||||
Note_Update_Prop EnumCommandID `enum:"2508"` // 返回升级后的信息
|
||||
|
||||
// 装备物品相关命令
|
||||
Change_Cloth EnumCommandID `enum:"2604"` // 修改玩家装备
|
||||
Item_List EnumCommandID `enum:"2605"` // 返回玩家物品列表
|
||||
|
||||
// 奖励相关命令
|
||||
Talk_Count EnumCommandID `enum:"2701"` // 玩家领取奖励的次数(挖矿,礼包等)
|
||||
Talk_Cate EnumCommandID `enum:"2702"` // 领取奖品的内容
|
||||
Mail_Get_Unread EnumCommandID `enum:"2757"` // 返回邮件数量
|
||||
|
||||
// 系统相关命令
|
||||
System_Message EnumCommandID `enum:"8002"` // 后端主动发送面板消息
|
||||
Get_Boss_Monster EnumCommandID `enum:"8004"` // 返回战斗结束后的奖励包或主动发放奖励
|
||||
|
||||
// NONO相关命令
|
||||
Nono_Info EnumCommandID `enum:"9003"` // 通过米米号获取nono信息
|
||||
Nono_Follow_Or_Home EnumCommandID `enum:"9019"` // nono跟随或回家
|
||||
|
||||
// 特殊命令
|
||||
Get_Quadruple_Exe_Time EnumCommandID `enum:"50007"` // 返回已使用四倍剩余时间
|
||||
|
||||
// 暂未处理的包
|
||||
Item_Buy EnumCommandID `enum:"2601"` // 物品购买
|
||||
Item_Sale EnumCommandID `enum:"2602"` // 物品出售
|
||||
Friend_Add EnumCommandID `enum:"2151"` // 添加好友
|
||||
Friend_Remove EnumCommandID `enum:"2153"` // 移除好友
|
||||
Invite_To_Fight EnumCommandID `enum:"2401"` // 邀请战斗
|
||||
Escape_Fight EnumCommandID `enum:"2410"` // 逃离战斗
|
||||
Join_Game EnumCommandID `enum:"5001"` // 加入游戏
|
||||
Game_Over EnumCommandID `enum:"5002"` // 游戏结束
|
||||
Leave_Game EnumCommandID `enum:"5003"` // 离开游戏
|
||||
}]()
|
||||
@@ -1,14 +0,0 @@
|
||||
package cmd
|
||||
|
||||
import (
|
||||
"testing"
|
||||
)
|
||||
|
||||
func BenchmarkCmd(b *testing.B) {
|
||||
b.ReportAllocs()
|
||||
//写入
|
||||
for i := 0; i < b.N; i++ {
|
||||
b.Log(CommandID.Change_Cloth)
|
||||
|
||||
}
|
||||
}
|
||||
@@ -2,7 +2,7 @@ package handler
|
||||
|
||||
import (
|
||||
"blazing/common/serialize/bytearray"
|
||||
"blazing/common/socket/cmd"
|
||||
|
||||
"bytes"
|
||||
"fmt"
|
||||
"reflect"
|
||||
@@ -13,10 +13,10 @@ import (
|
||||
|
||||
// TomeeHeader 结构体字段定义
|
||||
type TomeeHeader struct {
|
||||
Len uint32 `json:"len"`
|
||||
Version string `json:"version" struc:"[1]byte"`
|
||||
CMD cmd.EnumCommandID `json:"cmdId" struc:"uint32"`
|
||||
UserID uint32 `json:"userId"`
|
||||
Len uint32 `json:"len"`
|
||||
Version string `json:"version" struc:"[1]byte"`
|
||||
CMD uint32 `json:"cmdId" struc:"uint32"`
|
||||
UserID uint32 `json:"userId"`
|
||||
//Error uint32 `json:"error" struc:"[0]pad"`
|
||||
|
||||
Result uint32 `json:"result"`
|
||||
@@ -49,8 +49,8 @@ func (h *TomeeHandler) Handle(c gnet.Conn, data []byte) { //处理接收到的
|
||||
tempdata := bytearray.CreateByteArray(data)
|
||||
header.Len, _ = tempdata.ReadUInt32()
|
||||
header.Version, _ = tempdata.ReadString(1)
|
||||
_CMD, _ := tempdata.ReadUInt32()
|
||||
header.CMD = cmd.EnumCommandID(_CMD)
|
||||
header.CMD, _ = tempdata.ReadUInt32()
|
||||
//header.CMD = cmd.EnumCommandID(_CMD)
|
||||
header.UserID, _ = tempdata.ReadUInt32()
|
||||
|
||||
header.Result, _ = tempdata.ReadUInt32()
|
||||
@@ -114,3 +114,24 @@ func (h *TomeeHeader) Pack(data any) []byte { //组包
|
||||
return by.Bytes()
|
||||
|
||||
}
|
||||
|
||||
// MergeBytes 将多个字节数组合并为一个
|
||||
func MergeBytes(arrays ...[]byte) []byte {
|
||||
// 计算所有数组的总长度
|
||||
totalLen := 0
|
||||
for _, arr := range arrays {
|
||||
totalLen += len(arr)
|
||||
}
|
||||
|
||||
// 创建结果切片
|
||||
result := make([]byte, totalLen)
|
||||
|
||||
// 逐个复制数组内容
|
||||
currentIndex := 0
|
||||
for _, arr := range arrays {
|
||||
copy(result[currentIndex:], arr)
|
||||
currentIndex += len(arr)
|
||||
}
|
||||
|
||||
return result
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user