代码拉取完成,页面将自动刷新
package entity
import (
"gitee.com/night-tc/gobige/global"
"gitee.com/night-tc/gobige/logger"
"gitee.com/night-tc/gobige/msgdef/protomsg"
)
type EntitiesMsgProc struct {
IEntities
}
func (es *EntitiesMsgProc) MsgProc_CreateEntityReqSrv(msg *protomsg.CreateEntityReqSrv) {
es.CreateEntity(msg.EntityType, msg.EntityID, msg.DBID, false)
msgRet := &protomsg.CreateEntityRetSrv{
CreateEntityID: msg.EntityID,
CallbackID: 0,
ResultMsg: &protomsg.CodeRet{
Code: 0,
CodeMessage: "",
},
}
if err := global.GetSrvInst().PostMsgToEntity(msg.SrcSrvID, msg.SrcSpaceID, msg.SrcEntityID, msgRet); err != nil {
logger.Error(err)
}
}
func (es *EntitiesMsgProc) MsgProc_CreateEntityRetSrv(msg *protomsg.CreateEntityRetSrv) {
//其实不需要做什么
}
func (es *EntitiesMsgProc) MsgProc_DestroyEntityReqSrv(msg *protomsg.DestroyEntityReqSrv) {
//删成员
es.DestroyEntity(msg.EntityID)
msgRet := &protomsg.DestroyEntityRetSrv{
DestroyEntityID: msg.EntityID,
CallbackID: msg.CallbackID,
ResultMsg: &protomsg.CodeRet{
Code: 0,
CodeMessage: "",
},
}
if err := global.GetSrvInst().PostMsgToEntity(msg.SrcSrvID, msg.SrcSpaceID, msg.SrcEntityID, msgRet); err != nil {
logger.Error(err)
}
}
func (es *EntitiesMsgProc) MsgPorc_DestroyEntityRetSrv(msg *protomsg.DestroyEntityRetSrv) {
//删成功后的回复
emd := es.GetEntity(msg.DestroyEntityID)
if emd == nil {
return
}
//需要刷一下entity在redis里的路由信息
}
// // MsgProc_EntityMsgTransport Entity之间转发消息
// func (es *EntitiesMsgProc) MsgProc_EntityMsgTransport(content msgdef.IMsg) {
// msg := content.(*msgdef.EntityMsgTransport)
// ie := es.GetEntity(msg.EntityID)
// if ie == nil {
// return
// }
// es.sendEntityMsg(ie, msg)
// }
// // MsgProc_CreateEntityReq 请求创建Entity
// func (es *EntitiesMsgProc) MsgProc_CreateEntityReq(content msgdef.IMsg) {
// msg := content.(*msgdef.CreateEntityReq)
// params := serializer.UnSerialize(msg.InitParam)
// if len(params) != 1 {
// logger.Error("Init param error ", params)
// return
// }
// es.CreateEntity(msg.EntityType, msg.EntityID, msg.DBID, false, params...)
// msgRet := &msgdef.CreateEntityRet{
// EntityID: msg.EntityID,
// SrvType: global.GetCfgInst().GetSrvType(),
// SrvID: uint64(global.GetCfgInst().GetServerID()),
// CallbackID: 0,
// ErrorStr: "",
// }
// if err := global.GetSrvInst().PostMsgToSpace(msg.SrcSrvID, 0, msgRet); err != nil {
// logger.Error(err)
// }
// }
// // MsgProc_CreateEntityRet 请求创建Entity返回
// func (es *EntitiesMsgProc) MsgProc_CreateEntityRet(content msgdef.IMsg) {
// msg := content.(*msgdef.CreateEntityRet)
// e := es.GetEntity(msg.EntityID)
// if e == nil {
// return
// }
// //应该不需要
// // e.GetEntitySrvID(msg.SrvType)
// // if es.GetTypeIsInRegMap(msg.SrvType) {
// // es.RegEntityGroup(strconv.FormatUint(msg.SrvID, 10), e)
// // }
// }
// // MsgProc_DestroyEntityReq 请求删除Entity
// func (es *EntitiesMsgProc) MsgProc_DestroyEntityReq(content msgdef.IMsg) {
// msg := content.(*msgdef.DestroyEntityReq)
// es.DestroyEntity(msg.EntityID)
// msgRet := &msgdef.DestroyEntityRet{
// EntityID: msg.EntityID,
// SrvType: global.GetCfgInst().GetSrvType(),
// SrvID: uint64(global.GetCfgInst().GetServerID()),
// CallbackID: 0,
// ErrorStr: "",
// TarSrvID: msg.TarSrvID,
// }
// if err := global.GetSrvInst().PostMsgToSpace(msg.SrcSrvID, 0, msgRet); err != nil {
// logger.Error(err)
// }
// }
// // DestroyEntityRet 请求删除Entity返回
// func (es *EntitiesMsgProc) MsgProc_DestroyEntityRet(content msgdef.IMsg) {
// msg := content.(*msgdef.DestroyEntityRet)
// e := es.GetEntity(msg.EntityID)
// if e == nil {
// return
// }
// // if es.GetTypeIsInRegMap(msg.SrvType) {
// // es.UnRegEntityGroup(strconv.FormatUint(msg.SrvID, 10), e)
// // }
// if msg.TarSrvID != 0 {
// // 创建tar中的entity
// msgRt := &msgdef.CreateEntityReq{
// EntityType: e.GetType(),
// EntityID: msg.EntityID,
// SpaceID: 0,
// // InitParam: serializer.Serialize(e.GetInitParam()),
// DBID: e.GetDBID(),
// SrcSrvType: global.GetCfgInst().GetSrvType(),
// SrcSrvID: uint64(global.GetCfgInst().GetServerID()),
// CallbackID: 0,
// }
// if err := global.GetSrvInst().PostMsgToSpace(msg.TarSrvID, 0, msgRt); err != nil {
// logger.Error(err)
// return
// }
// }
// }
// // 发消息
// func (es *EntitiesMsgProc) MsgProc_SrvMsgTransport(content msgdef.IMsg) {
// msg := content.(*msgdef.SrvMsgTransport)
// innerMsg, err := sess.DecodeMsg(msg.MsgContent[3], msg.MsgContent[4:])
// if err != nil {
// logger.Error(err, "msg", sess.GetMsgID(msg.MsgContent[4:]))
// return
// }
// es.FireMsg(innerMsg.Name(), innerMsg)
// }
// // 把分组消息投递到一个服务器里
// func (es *EntitiesMsgProc) MsgProc_SrvGroupMsgTransport(content msgdef.IMsg) {
// msg := content.(*msgdef.SrvGroupMsgTransport)
// es.RangeByGroup(msg.Group, func(k, v any) bool {
// e := v.(IEntity)
// if e.GetEntityState() != Entity_State_Loop {
// return true
// }
// es.sendEntityMsg(e, msg)
// return true
// })
// }
// // 发消息给对应的IEntity
// func (es *EntitiesMsgProc) sendEntityMsg(e IEntity, msg msgdef.ITransportMsg) {
// if msg.GetSrvType() == global.ServerTypeClient {
// if sess := e.(IEntityReal).GetClientSess(); sess != nil {
// sess.SendBuf(msg.GetMsgContent())
// }
// } else {
// innerMsg, err := sess.DecodeMsg(msg.GetMsgContent()[3], msg.GetMsgContent()[4:])
// if err != nil {
// logger.Error(" Decode innerMsg failed", err, msg)
// return
// }
// if !global.GetSrvInst().IsSrvValid() {
// global.GetSrvInst().HandlerSrvInvalid(e.GetID())
// } else {
// e.FireMsg(innerMsg.Name(), innerMsg)
// }
// }
// }
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。