| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- package msg
- import (
- "rocommon"
- "rocommon/util"
- "roserver/baseserver/model"
- model3 "roserver/server_aoi/model"
- "roserver/serverproto"
- )
- func init() {
- //角色进入地图(消息来自game)
- serverproto.Handle_AOI_SSPlayerEnterMapReq = model.HandleBackendMessage(func(ev rocommon.ProcEvent, cliId model.ClientID) {
- msg := ev.Msg().(*serverproto.SSPlayerEnterMapReq)
- tmpEv := ev.(*model.RecvServiceMsgEvent)
- if tmpEv == nil {
- return
- }
- util.InfoF("receive SSPlayerEnterMapReq msg=%v master=%v", msg, tmpEv.IsMaster)
- //msg.MapType == 0表示主城
- aoiMap := model3.RoleMapMag.GetAoiMap(msg.MapType, msg.GuildId)
- if aoiMap != nil {
- aoiMap.PlayerEnterMap(msg.Pos, msg.ShowInfo.Uid,
- &model.ClientID{
- SessID: msg.ClientId,
- ServiceID: msg.ServiceNode, //这边需要看一下是否有错,消息来自game
- }, int32(model3.UnityType_Player), msg.ShowInfo, tmpEv.IsMaster)
- } else {
- util.InfoF("uid=%v SSPlayerEnterMapReq aoi map err=aoi map not find", msg.ShowInfo.Uid)
- }
- })
- //角色离开地图
- serverproto.Handle_AOI_SSPlayerLeaveMapNtf = model.HandleBackendMessage(func(ev rocommon.ProcEvent, cliId model.ClientID) {
- msg := ev.Msg().(*serverproto.SSPlayerLeaveMapNtf)
- tmpEv := ev.(*model.RecvServiceMsgEvent)
- if tmpEv == nil {
- return
- }
- util.InfoF("receive SSPlayerLeaveMapNtf msg=%v master=%v", msg, tmpEv.IsMaster)
- if cliId.SessID == 0 {
- aoiMap := model3.RoleMapMag.GetAoiMap(0, 0)
- if aoiMap != nil {
- aoiMap.NpcLeave(msg.Uid)
- }
- } else {
- model3.RoleMapMag.Leave(cliId.SessID, cliId.ServiceID)
- }
- })
- //移动
- serverproto.Handle_AOI_CSPlayerMoveReq = model.HandleBackendMessage(func(ev rocommon.ProcEvent, cliId model.ClientID) {
- msg := ev.Msg().(*serverproto.CSPlayerMoveReq)
- tmpEv := ev.(*model.RecvServiceMsgEvent)
- if tmpEv == nil {
- return
- }
- //util.InfoF("receive CSPlayerMoveReq cliId=%v msg=%v master=%v", cliId.SessID, msg, tmpEv.IsMaster)
- model3.RoleMapMag.Move(msg.Pos, cliId.SessID)
- })
- //获取其他玩家角色信息
- serverproto.Handle_AOI_CSMapGetOtherPlayersInfoReq = model.HandleBackendMessage(func(ev rocommon.ProcEvent, cliId model.ClientID) {
- msg := ev.Msg().(*serverproto.CSMapGetOtherPlayersInfoReq)
- util.InfoF("receive CSMapGetOtherPlayersInfoReq msg=%v", msg)
- ntfMsg := &serverproto.SCMapOtherPlayersInfoNtf{}
- for _, value := range msg.PlayerList {
- info := &serverproto.PlayerShowInfo{Uid: value}
- ret := model3.RoleMapMag.FillAoiPlayerShowInfo(info)
- if !ret {
- continue
- }
- ntfMsg.InfoList = append(ntfMsg.InfoList, info)
- }
- if len(ntfMsg.InfoList) > 0 {
- model.ServiceReplay(ev, ntfMsg)
- }
- })
- ////移动到目标点
- //serverproto.Handle_AOI_CSPlayerMoveToReq = model.HandleBackendMessage(func(ev rocommon.ProcEvent, cliId model.ClientID) {
- // //msg := ev.Msg().(*serverproto.CSPlayerMoveToReq)
- // //baseutil.InfoF("receive CSPlayerMoveToReq msg:%v", msg)
- // //todo...
- //})
- //avatar信息同步等数据相关消息
- serverproto.Handle_AOI_SSPlayerShowChangeReq = model.HandleBackendMessage(func(ev rocommon.ProcEvent, cliId model.ClientID) {
- msg := ev.Msg().(*serverproto.SSPlayerShowChangeReq)
- util.InfoF("receive SSPlayerShowChangeReq msg:%v", msg)
- model3.RoleMapMag.MapRoleChangeShow(cliId.SessID, msg.ShowInfo)
- })
- //客户端播放动作请求(来自mapRouter)
- serverproto.Handle_AOI_CSPlayerActionReq = model.HandleBackendMessage(func(ev rocommon.ProcEvent, cliId model.ClientID) {
- msg := ev.Msg().(*serverproto.CSPlayerActionReq)
- util.InfoF("receive CSPlayerActionReq msg:%v", msg)
- model3.RoleMapMag.MapRoleDoAction(cliId.SessID, msg.Uid, msg.ActionId, msg.Pos)
- })
- }
|