package realarena import ( "go_dreamfactory/comm" "go_dreamfactory/pb" ) //参数校验 func (this *apiComp) BattleExitCheck(session comm.IUserSession, req *pb.RealArenaBattleExitReq) (errdata *pb.ErrorData) { return } ///取消匹配 func (this *apiComp) BattleExit(session comm.IUserSession, req *pb.RealArenaBattleExitReq) (errdata *pb.ErrorData) { var ( room *Room ok bool err error ) if errdata = this.BattleExitCheck(session, req); errdata != nil { return } this.module.lock.RLock() room, ok = this.module.rooms[req.Roomid] this.module.lock.RUnlock() if ok { if err = room.UserOffline(session.GetUserId()); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_ReqParameterError, Message: err.Error(), } return } } else { errdata = &pb.ErrorData{ Code: pb.ErrorCode_ReqParameterError, Message: "no found room", } return } session.SendMsg(string(this.module.GetType()), "matchcancel", &pb.RealArenaMatchCancelResp{}) return }