message controller
This commit is contained in:
parent
eaaad55a10
commit
f64d18de82
@ -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
|
||||||
|
}
|
||||||
|
|||||||
@ -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}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user