| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- package msg
- import (
- "rocommon"
- "rocommon/util"
- "roserver/baseserver/model"
- model2 "roserver/battleboss/model"
- "roserver/serverproto"
- )
- func init() {
- //玩家下线处理/主动离开boss场景
- serverproto.Handle_BATTLEBOSS_SSPlayerOfflineNtf = model.HandleBackendMessage(func(ev rocommon.ProcEvent, cliId model.ClientID) {
- msg := ev.Msg().(*serverproto.SSPlayerOfflineNtf)
- util.InfoF("receive SSPlayerOfflineNtf msg:%v", msg)
- model2.AoiLineMag.PlayerOffline(msg.Uid)
- })
- //挑战召唤物
- serverproto.Handle_BATTLEBOSS_CSPlayerChallengeSummonReq = model.HandleBackendMessage(func(ev rocommon.ProcEvent, cliId model.ClientID) {
- msg := ev.Msg().(*serverproto.CSPlayerChallengeSummonReq)
- util.InfoF("receive CSPlayerChallengeSummonReq msg:%v", msg)
- ret := model2.AoiLineMag.PlayerChallengeSummonBoss(msg.Uid, msg.ChallengeBossUid, cliId, msg.FightInfo)
- ackMsg := &serverproto.SCPlayerChallengeSummonAck{
- Error: int32(ret),
- BossInfo: model2.AoiLineMag.GetWorldBossInfo(msg.ChallengeBossUid),
- }
- //删除boss使用
- if ret == serverproto.ErrorCode_ERROR_AOI_BOSS_NOT_FOUND {
- ackMsg.BossInfo = &serverproto.WorldBossContentInfo{
- BossId: int32(msg.ChallengeBossUid),
- }
- //更新boss信息
- } else if ret == serverproto.ErrorCode_ERROR_AOI_BOSS_CHALLENGE_NUM_LIMIT {
- ackMsg.BossInfo = model2.AoiLineMag.GetWorldBossInfo(msg.ChallengeBossUid)
- }
- model.ServiceReplay(ev, ackMsg)
- })
- //血量上报
- serverproto.Handle_BATTLEBOSS_CSPlayerChallengeHpReq = model.HandleBackendMessage(func(ev rocommon.ProcEvent, cliId model.ClientID) {
- msg := ev.Msg().(*serverproto.CSPlayerChallengeHpReq)
- util.InfoF("receive CSPlayerChallengeHpReq msg:%v %v", msg, cliId.SessID)
- model2.AoiLineMag.DoSummonHp(cliId.SessID, msg.ActionUid, msg.DamageHp)
- })
- //获取WorldBoss列表
- serverproto.Handle_BATTLEBOSS_CSPlayerWorldBossListReq = model.HandleBackendMessage(func(ev rocommon.ProcEvent, cliId model.ClientID) {
- msg := ev.Msg().(*serverproto.CSPlayerWorldBossListReq)
- util.DebugF("receive CSPlayerWorldBossListReq msg:%v %v", msg, cliId.SessID)
- ackMsg := model2.AoiLineMag.GetWorldBossList()
- model.ServiceReplay(ev, ackMsg)
- })
- }
|