refactor(common): 重构 common 模块

- 移除 global.go 文件
- 更新 player.go 中的玩家数据存储方式
- 删除 session.go 文件
- 调整 rpc.go 中的 RPC 客户端方法
- 更新 ServerEvent.go 中的会话管理
- 调整 controller 中的 Maincontroller 结构
- 更新 login.go 中的用户登录逻辑
- 调整 service 中的玩家数据获取方式
- 更新 admin/login.go 和 login.go 中的会话管理
This commit is contained in:
2025-07-15 12:14:17 +08:00
parent 43a726006c
commit 7a87bfa089
13 changed files with 208 additions and 80 deletions

View File

@@ -1,7 +1,6 @@
package controller
import (
"blazing/common/core"
"blazing/common/data/entity"
"blazing/common/socket/handler"
"blazing/cool"
@@ -23,14 +22,11 @@ import (
var Maincontroller = NewController() //注入service
// 分发cmd逻辑实现Controller
type Controller struct {
//connected int64 //统计连接数
Port uint32
RPCClient struct {
Kick func(int32) error
RegisterLogic func(int32) error
UserLogin func(int32, int32) error
UserLogout func(int32, int32) error
}
}
@@ -110,7 +106,7 @@ func init() { //默认初始化扫描
}
glog.Debug(context.Background(), "注册方法", func_cmd, method.Name)
// fmt.Println(methodValue.Interface().(func(gnet.Conn, handler.TomeeHeader)))
_, ok := core.Maincmdcache.LoadOrStore(func_cmd, methodValue) //TODO 待实现对不同用户初始化方法以取消全局cmdcache
_, ok := cool.CmdCache.LoadOrStore(func_cmd, methodValue) //TODO 待实现对不同用户初始化方法以取消全局cmdcache
if ok { //方法已存在init
glog.Error(context.Background(), "方法已存在init,不会初始化后面的方法", func_cmd)
@@ -163,7 +159,7 @@ func getcmd(t reflect.Type) uint32 {
// 遍历结构体方法并执行RECV_cmd
func Recv(c gnet.Conn, data handler.TomeeHeader) {
tt, ok := core.Maincmdcache.Load(data.CMD)
tt, ok := cool.CmdCache.Load(data.CMD)
if !ok {
glog.Error(context.Background(), data.CMD, "cmd未注册")

View File

@@ -1,6 +1,7 @@
package controller
import (
"blazing/common/data/cache"
"blazing/logic/service"
"blazing/logic/service/login"
"encoding/hex"
@@ -15,9 +16,9 @@ func (h *Controller) Login(data login.LoginSidInfo, c gnet.Conn) []byte { //这
if tt := data.CheakSession(); tt { //说明sid正确
h.RPCClient.Kick(int32(data.Head.UserID)) //先踢人
h.RPCClient.UserLogin(int32(h.Port), int32(data.Head.UserID)) //初始化用户登录
// h.RPCClient.UserLogin(int32(h.Port), int32(data.Head.UserID)) //初始化用户登录
service.SetPlayer(c, data.Head.UserID)
cache.NewSessionManager().SetUserOnline(data.Head.UserID, h.Port) //设置用户登录服务器
}
t1, _ := hex.DecodeString("0000045D37000003E9000186A600000000000186A6683F89CF6E69656F0000000000000000000000000008000F00000000000000000000000000000000000000000000000000000001000001DB0000018B000000000000A8C000000000000000000000000000000000000000080001388000000001000000017FFFFFFF00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030000000000000000000000000000000000000064000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000001FFFFFFFF000000004E4F4E4F0000000000000000000000000000000000000001000000010000000100000001000000010000000100000001000000000003030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030000000100000064000000000000000000000000000000000000001F000000000000006400000000000093F4000093F4000000D5000000F7000000AD00000088000000920000008C0000009C00000000000000000000000000000000000000000000000000000004000027900000001B00004E6200000014000028380000002800004E3E0000002368493DC60000000000000000000000000000000000000000000100000000000000A937000007D1000186A600000000000186A66E69656F00000000000000000000000000000000000000000000000F0000000000000000000001DB0000018B0000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FFFFFFFF0000000000000001000000000000000000000000000000000000000000000000000000000000000000000000")