message controller

This commit is contained in:
hahwu 2025-12-17 20:11:28 +08:00
parent eaaad55a10
commit f64d18de82
2 changed files with 26 additions and 10 deletions

View File

@ -2,7 +2,9 @@ package game
import ( import (
"fmt" "fmt"
mergeCluster "server/cluster"
"server/game/mod/msg" "server/game/mod/msg"
GoUtil "server/game_util"
"server/pkg/github.com/name5566/leaf/log" "server/pkg/github.com/name5566/leaf/log"
) )
@ -34,3 +36,16 @@ func (m *MessageMgr) Handle(msg *msg.Msg) (interface{}, error) {
log.Error("server mod key:%s handle not exist handle type:%d", m.key, msg.Type) log.Error("server mod key:%s handle not exist handle type:%d", m.key, msg.Type)
return nil, fmt.Errorf("server mod handler err") return nil, fmt.Errorf("server mod handler err")
} }
func SendMessage(m1 *msg.Msg) error {
if m1.SendT == 0 {
m1.SendT = GoUtil.Now()
}
m := m1.Clone()
err := mergeCluster.SendServerMsg(m, 1)
if err != nil { // 区服不在线
G_GameLogicPtr.FriendMgrSend(m)
return err
}
return nil
}

View File

@ -3,16 +3,17 @@ package msg
import "server/game/mod/item" import "server/game/mod/item"
type Msg struct { type Msg struct {
Type int // 消息类型 Type int // 消息类型
To int // 接收者 To int // 接收者
From int // 发送者 From int // 发送者
Item []*item.Item // 物品 Item []*item.Item // 物品
SendT int64 // 发送时间 SendT int64 // 发送时间
End int64 // 过期时间 End int64 // 过期时间
Extra interface{} //额外信息 Extra interface{} //额外信息
Id int64 Id int64
UniKey string // 回调监听唯一键值 UniKey string // 回调监听唯一键值
H int //处理类型 H int //处理类型
HandleType int //处理类型
} }
var MSG_ZERO_UPDATE = &Msg{Type: SERVER_ZERO_UPDATE} var MSG_ZERO_UPDATE = &Msg{Type: SERVER_ZERO_UPDATE}