diff --git a/modules/friend/api_cross_getassist.go b/modules/friend/api_cross_getassist.go index 20d467378..508e7bf0f 100644 --- a/modules/friend/api_cross_getassist.go +++ b/modules/friend/api_cross_getassist.go @@ -105,7 +105,9 @@ func (this *apiComp) GetAssistHero(session comm.IUserSession, req *pb.FriendGetA return } for _, v := range friends { - heros = append(heros, v.Hero) + if v.Hero != nil { + heros = append(heros, v.Hero) + } } } diff --git a/modules/friend/api_cross_refresh.go b/modules/friend/api_cross_refresh.go index da02c2dc5..d34aa43de 100644 --- a/modules/friend/api_cross_refresh.go +++ b/modules/friend/api_cross_refresh.go @@ -79,10 +79,10 @@ func (this *apiComp) RefreshAssistHero(session comm.IUserSession, req *pb.Friend list.Data[key] = names[pos] ahero = append(ahero, heros[pos]) } - - localNum, _ := this.module.modelFriend.DB.CountDocuments(core.SqlTable(this.module.modelFriend.TableName), bson.M{}) - randomIndex := comm.GetRandNum(0, int32(localNum)) - cur, err := this.module.modelFriend.DB.Find(core.SqlTable(this.module.modelFriend.TableName), bson.M{"assistHeroId": bson.M{"$ne": ""}}, options.Find().SetSkip(int64(randomIndex)).SetLimit(int64(strangerCount))) + list.Data = make(map[string]string) + //localNum, _ := this.module.modelFriend.DB.CountDocuments(core.SqlTable(this.module.modelFriend.TableName), bson.M{}) + //randomIndex := comm.GetRandNum(0, int32(localNum)) + cur, err := this.module.modelFriend.DB.Find(core.SqlTable(this.module.modelFriend.TableName), bson.M{"assistHeroId": bson.M{"$ne": ""}}, options.Find().SetSkip(0).SetLimit(int64(strangerCount))) for cur.Next(context.TODO()) { tmp := &pb.DBFriend{} if err = cur.Decode(tmp); err == nil { diff --git a/modules/friend/model_friend.go b/modules/friend/model_friend.go index 0ea7cecdf..323ca71b6 100644 --- a/modules/friend/model_friend.go +++ b/modules/friend/model_friend.go @@ -64,28 +64,26 @@ func (this *ModelFriend) GetFriend(uid string) (info *pb.DBFriend, err error) { func (this *ModelFriend) GetFriends(uids []string) (friends []*pb.DBFriend, err error) { friends = make([]*pb.DBFriend, 0) var onfound []string - if onfound, err = this.Gets(uids, &friends); err != nil { + if onfound, err = this.GetByUids(uids, &friends); err != nil { this.moduole.Errorln(err) } for _, v := range onfound { - var user *pb.DBUser - if user, err = this.moduole.ModuleUser.GetUser(v); err != nil { - this.moduole.Errorln(err) - return + + if user, e := this.moduole.ModuleUser.GetUser(v); e == nil { + info := &pb.DBFriend{ + Id: primitive.NewObjectID().Hex(), + Uid: v, + Info: comm.GetUserBaseInfo(user), + FriendIds: make([]string, 0), + ApplyIds: make([]string, 0), + BlackIds: make([]string, 0), + GetZandIds: make([]string, 0), + Record: make([]*pb.AssistRecord, 0), + Beblackids: make([]string, 0), + } + err = this.Add(v, info) + friends = append(friends, info) } - info := &pb.DBFriend{ - Id: primitive.NewObjectID().Hex(), - Uid: v, - Info: comm.GetUserBaseInfo(user), - FriendIds: make([]string, 0), - ApplyIds: make([]string, 0), - BlackIds: make([]string, 0), - GetZandIds: make([]string, 0), - Record: make([]*pb.AssistRecord, 0), - Beblackids: make([]string, 0), - } - err = this.Add(v, info) - friends = append(friends, info) } return } diff --git a/modules/hunting/api_challengeover.go b/modules/hunting/api_challengeover.go index d56eb0496..ec4345eea 100644 --- a/modules/hunting/api_challengeover.go +++ b/modules/hunting/api_challengeover.go @@ -111,7 +111,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.HuntingCha if hunting.BossTime[key] == 0 || hunting.BossTime[key] > req.Report.Costtime { hunting.BossTime[key] = req.Report.Costtime mapData["bossTime"] = hunting.BossTime // 更新时间 - this.module.CheckRank(session.GetUserId(), req.BossType, req.Difficulty, req.Report) + } // 发放通关随机奖励 user, err := this.module.ModuleUser.GetUser(session.GetUserId()) @@ -181,6 +181,27 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.HuntingCha Sell: del, Heroexp: changExp, }) + szLine := make([]*pb.LineUp, 0) + var Leadpos int32 + if req.Report != nil && req.Report.Info != nil && len(req.Report.Info.Redflist) > 0 { + Leadpos = req.Report.Info.Redflist[0].Leadpos + for _, v := range req.Report.Info.Redflist[0].Team { + if v != nil { + szLine = append(szLine, &pb.LineUp{ + Cid: v.HeroID, + Star: v.Star, + Lv: v.Lv, + }) + } + } + } + go func() { + line := &pb.LineData{ + Leadpos: Leadpos, + Line: szLine, + } + this.module.modulerank.CheckRank(session.GetUserId(), req.BossType, req.Difficulty, line, req.Report.Costtime) + }() tasks = append(tasks, comm.GetBuriedParam(comm.Rtype80, 1, req.BossType, req.Difficulty)) // 随机任务统计 // this.module.ModuleRtask.SendToRtask(session, comm.Rtype81, req.Difficulty, req.BossType) diff --git a/modules/hunting/api_ranklist.go b/modules/hunting/api_ranklist.go index 6a4905803..4b897731d 100644 --- a/modules/hunting/api_ranklist.go +++ b/modules/hunting/api_ranklist.go @@ -1,60 +1,61 @@ package hunting import ( - "context" "go_dreamfactory/comm" - "go_dreamfactory/lego/sys/redis/pipe" "go_dreamfactory/pb" - "go_dreamfactory/sys/db" - "strconv" - - "github.com/go-redis/redis/v8" ) //参数校验 func (this *apiComp) RankListCheck(session comm.IUserSession, req *pb.HuntingRankListReq) (errdata *pb.ErrorData) { - + if req.BoosType == 0 { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_ReqParameterError, + Title: pb.ErrorCode_ReqParameterError.ToString(), + } + } return } func (this *apiComp) RankList(session comm.IUserSession, req *pb.HuntingRankListReq) (errdata *pb.ErrorData) { var ( - szRank []*pb.DBHuntingRank - rd *redis.StringSliceCmd + fRank []*pb.DBHuntingRank + uids []string + err error + ranks []*pb.DBHuntingRecord + players []*pb.DBHuntingRank ) if errdata = this.RankListCheck(session, req); errdata != nil { return // 参数校验失败直接返回 } - conn, _ := db.Local() - dbModel := db.NewDBModelByExpired(comm.TableHuntingRank, conn) - if !req.Friend { - var ( - pipe *pipe.RedisPipe = conn.Redis.RedisPipe(context.TODO()) - ) - rd = pipe.ZRevRange("huntingRank"+strconv.Itoa(int(req.BoosType)), 0, comm.MaxRankList) - - if _, err := pipe.Exec(); err != nil { - this.module.Errorln(err) - return + if uids, err = this.module.modulerank.querySRankUser(int(req.BoosType)); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), } - _dataList := rd.Val() - for _, v := range _dataList { - result := &pb.DBHuntingRank{} - - if err := dbModel.Redis.HGetAll(v, result); err == nil { - szRank = append(szRank, result) - } + return + } + if ranks, err = this.module.modulerank.queryPlayers(uids); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), } - } else { - uids := this.friend.GetFriendList(session.GetUserId()) - for _, id := range uids { - rankData := this.module.modulerank.getHuntingRankListByBossType(id, req.BoosType) - if rankData != nil { - szRank = append(szRank, rankData) - } + return + } + players = make([]*pb.DBHuntingRank, len(ranks)) + for i, v := range ranks { + players[i] = &pb.DBHuntingRank{ + Uinfo: v.Uinfo, + Line: v.Data[req.BoosType].Line[v.Data[req.BoosType].Maxnandu], + Difficulty: v.Data[req.BoosType].Maxnandu, + Bosstype: req.BoosType, + Costtime: v.Data[req.BoosType].Costime[v.Data[req.BoosType].Maxnandu], } } - - session.SendMsg(string(this.module.GetType()), HuntingRankListResp, &pb.HuntingRankListResp{Ranks: szRank}) + session.SendMsg(string(this.module.GetType()), HuntingRankListResp, &pb.HuntingRankListResp{ + Ranks: players, + Franks: fRank, + }) return } diff --git a/modules/hunting/model_rank.go b/modules/hunting/model_rank.go index 82e7b106e..4ffe418c1 100644 --- a/modules/hunting/model_rank.go +++ b/modules/hunting/model_rank.go @@ -4,94 +4,184 @@ import ( "context" "go_dreamfactory/comm" "go_dreamfactory/lego/core" + "go_dreamfactory/lego/sys/mgo" "go_dreamfactory/lego/sys/redis/pipe" "go_dreamfactory/modules" "go_dreamfactory/pb" "go_dreamfactory/sys/db" + "strconv" "github.com/go-redis/redis/v8" + "go.mongodb.org/mongo-driver/bson/primitive" "go.mongodb.org/mongo-driver/mongo" "go.mongodb.org/mongo-driver/x/bsonx" ) type ModelRank struct { modules.MCompModel + moduleHunting *Hunting } func (this *ModelRank) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { - this.TableName = comm.TableHuntingRecord // 挑战记录 + this.TableName = comm.TableHuntingRank err = this.MCompModel.Init(service, module, comp, options) this.moduleHunting = module.(*Hunting) - this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{ + //创建uid索引 + this.DB.CreateIndex(core.SqlTable(comm.TableHuntingRank), mongo.IndexModel{ Keys: bsonx.Doc{{Key: "uid", Value: bsonx.Int32(1)}}, }) return } -func (this *ModelRank) getHuntingRankList(uid string) []*pb.DBHuntingRank { - ranks := make([]*pb.DBHuntingRank, 0) - err := this.GetList(uid, &ranks) - if err != nil { - return nil - } - return ranks -} - -func (this *ModelRank) getHuntingRankListByBossType(uid string, bossType int32) *pb.DBHuntingRank { - ranks := make([]*pb.DBHuntingRank, 0) - if db.IsCross() { - err := this.GetList(uid, &ranks) - if err != nil { - return nil - } - for _, v := range ranks { - if v.Bosstype == bossType { - return v - } - } - } else { - conn, err := db.Cross() - if err != nil { - return nil - } - model := db.NewDBModelByExpired(comm.TableHuntingRank, conn) - - err = model.GetList(uid, &ranks) - if err != nil { - return nil - } - for _, v := range ranks { - if v.Bosstype == bossType { - return v - } - } - } - return nil -} - -// 排行数据写跨服 -func (this *ModelRank) SetRankListData(tableName string, score int64, uid string) { +// 获取排行榜数据 +func (this *ModelRank) getHuntingRank(uid string) *pb.DBHuntingRecord { + data := &pb.DBHuntingRecord{} if !db.IsCross() { - if conn, err := db.Cross(); err == nil { - var ( - pipe *pipe.RedisPipe = conn.Redis.RedisPipe(context.TODO()) - menbers *redis.Z - ) + if conn_, err := db.Cross(); err == nil { + model := db.NewDBModelByExpired(comm.TableHuntingRank, conn_) - menbers = &redis.Z{Score: float64(score), Member: uid} + if err := model.Get(uid, data); err != nil { + return data + } + } - if cmd := pipe.ZAdd(tableName, menbers); cmd != nil { + } - dock, err1 := cmd.Result() - if err1 != nil { - this.moduleHunting.Errorln(dock, err1) + return data +} + +// 获取排行榜前50的用户名单 +func (this *ModelRank) querySRankUser(bossid int) (ranks []string, err error) { + var ( + result []string + ) + + tableName := this.TableName + strconv.Itoa(int(bossid)) + if result, err = this.Redis.ZRevRange(tableName, 0, comm.MinRankList).Result(); err != nil { + //this.module.Errorln(err) + return + } + ranks = make([]string, 0) + for i := 0; i < len(result); i += 1 { + ranks = append(ranks, result[i]) + } + return +} + +func (this *ModelRank) queryPlayers(uIds []string) (result []*pb.DBHuntingRecord, err error) { + result = make([]*pb.DBHuntingRecord, 0) + if _, err = this.GetByUids(uIds, &result); err != nil && err != mgo.MongodbNil { + //this.module.Errorln(err) + return + } + return +} + +// 记录数据存在跨服 +func (this *ModelRank) CheckRank(uid string, boosID int32, difficulty int32, line *pb.LineData, costTime int32) { + conn_, err := db.Cross() // 获取跨服数据库对象 + if err != nil { + return + } + user, err := this.moduleHunting.ModuleUser.GetUser(uid) + if err != nil { + return + } + model := db.NewDBModelByExpired(comm.TableHuntingRank, conn_) + + // 写入排行榜 + record := &pb.DBHuntingRecord{ + Data: map[int32]*pb.HuntingData{}, + } + if err = model.Get(uid, record); err == mgo.MongodbNil { + record.Id = primitive.NewObjectID().Hex() + record.Data = make(map[int32]*pb.HuntingData, 0) + record.Uid = uid + record.Uinfo = &pb.BaseUserInfo{ + Uid: uid, + Sid: user.Sid, + Name: user.Name, + Gender: user.Gender, + Skin: user.CurSkin, + Aframe: user.Curaframe, + Title: user.Curtitle, + Lv: user.Lv, + } + mpLine := make(map[int32]*pb.LineData, 0) + mpLine[difficulty] = line + tmp := make(map[int32]int32, 0) + tmp[difficulty] = costTime + + if _, ok := record.Data[boosID]; !ok { + record.Data[boosID] = &pb.HuntingData{ + Costime: tmp, + Maxnandu: difficulty, + Line: mpLine, + } + } else { + if record.Data[boosID].Maxnandu < difficulty { + record.Data[boosID].Maxnandu = difficulty + } + } + + model.Add(uid, record) + } else if err == nil { + record.Uinfo = &pb.BaseUserInfo{ + Uid: uid, + Sid: user.Sid, + Name: user.Name, + Gender: user.Gender, + Skin: user.CurSkin, + Aframe: user.Curaframe, + Title: user.Curtitle, + Lv: user.Lv, + } + update := make(map[string]interface{}, 0) + update["uinfo"] = record.Uinfo + + if _, ok := record.Data[boosID]; !ok { + tmp := make(map[int32]int32, 0) + tmp[difficulty] = costTime + mpLine := make(map[int32]*pb.LineData, 0) + mpLine[difficulty] = line + record.Data[boosID] = &pb.HuntingData{ + Costime: tmp, + Maxnandu: difficulty, + Line: mpLine, + } + } else { + if record.Data[boosID].Maxnandu < difficulty { + record.Data[boosID].Maxnandu = difficulty + } else { + if record.Data[boosID].Costime[difficulty] > costTime { // 不是新记录不写 + return } } - if _, err := pipe.Exec(); err != nil { - this.moduleHunting.Errorln(err) - return - } + } + + record.Data[boosID].Costime[difficulty] = costTime + record.Data[boosID].Line[difficulty] = line + update["data"] = record.Data + model.Change(uid, update) + } + var ( + pipe *pipe.RedisPipe = conn_.Redis.RedisPipe(context.TODO()) + menbers *redis.Z + tableName string + score int32 + ) + score = difficulty*10000 + (10000 - costTime) + tableName = this.TableName + strconv.Itoa(int(boosID)) + menbers = &redis.Z{Score: float64(score), Member: uid} + + if cmd := pipe.ZAdd(tableName, menbers); cmd != nil { + if _, err = cmd.Result(); err != nil { + this.moduleHunting.Errorln(err) } } + if _, err := pipe.Exec(); err != nil { + this.moduleHunting.Errorln(err) + return + } } diff --git a/modules/hunting/module.go b/modules/hunting/module.go index 23cd20910..f0790e6bd 100644 --- a/modules/hunting/module.go +++ b/modules/hunting/module.go @@ -1,18 +1,10 @@ package hunting import ( - "context" "go_dreamfactory/comm" "go_dreamfactory/lego/core" - "go_dreamfactory/lego/sys/redis/pipe" "go_dreamfactory/modules" "go_dreamfactory/pb" - "go_dreamfactory/sys/db" - "math" - "strconv" - - "github.com/go-redis/redis/v8" - "go.mongodb.org/mongo-driver/bson/primitive" ) type Hunting struct { @@ -76,104 +68,20 @@ func (this *Hunting) ModifyHuntingData(uid string, data map[string]interface{}) } func (this *Hunting) CheckUserBaseHuntingInfo(uid string) (data []*pb.DBHuntingRank) { - list, err := this.modelHunting.getHuntingList(uid) - if err == nil { - for k := range list.Boss { - _d := this.modulerank.getHuntingRankListByBossType(uid, k) - if _d != nil { - data = append(data, _d) - } + + if d := this.modulerank.getHuntingRank(uid); d.Id != "" { + for k, v := range d.Data { + data = append(data, &pb.DBHuntingRank{ + Uinfo: d.Uinfo, + Line: v.Line[v.Maxnandu], + Difficulty: v.Maxnandu, + Bosstype: k, + Costtime: v.Costime[v.Maxnandu], + }) } } return } -func (this *Hunting) CheckRank(uid string, boosID int32, difficulty int32, report *pb.BattleReport) { - conn_, _ := db.Cross() // 获取跨服数据库对象 - userinfo, err := this.ModuleUser.GetUser(uid) - if err != nil { - return - } - model := db.NewDBModel(comm.TableHuntingRank, conn_) - - costTime := report.Costtime - szLine := make([]*pb.LineUp, len(report.Info.Redflist[0].Team)) - Leadpos := 0 - if report != nil && report.Info != nil && len(report.Info.Redflist) > 0 { - costTime = report.Costtime - Leadpos = int(report.Info.Redflist[0].Leadpos) - for i, v := range report.Info.Redflist[0].Team { - if v != nil { - szLine[i] = &pb.LineUp{ - Cid: v.HeroID, - Star: v.Star, - Lv: v.Lv, - } - } - } - } - // 写入排行榜 - objID := "" - bFind := false - ranks := make([]*pb.DBHuntingRank, 0) - model.GetList(uid, &ranks) - for _, v := range ranks { - if v.Bosstype == boosID { - mapRankData := make(map[string]interface{}, 0) - mapRankData["difficulty"] = difficulty - mapRankData["bosstype"] = boosID - mapRankData["Leadpos"] = Leadpos - mapRankData["line"] = szLine - mapRankData["costTime"] = costTime - - model.ChangeList(uid, v.Id, mapRankData) - objID = v.Id - bFind = true - break - } - } - if !bFind { - - new := &pb.DBHuntingRank{ - Id: primitive.NewObjectID().Hex(), - Uid: uid, - Difficulty: difficulty, - Bosstype: boosID, - Nickname: userinfo.Name, - Skin: userinfo.CurSkin, - Lv: userinfo.Lv, - Leadpos: int32(Leadpos), - Line: szLine, - CostTime: costTime, - Sex: userinfo.Gender, - Title: userinfo.Curtitle, - } - objID = new.Id - model.AddList(uid, new.Id, new) - } - - var ( - pipe *pipe.RedisPipe = conn_.Redis.RedisPipe(context.TODO()) - menbers *redis.Z - tableName string - score int64 - ) - score = int64(difficulty)<<31 + int64(math.MaxInt32-costTime) - tableName = "huntingRank" + strconv.Itoa(int(boosID)) - strKey := "huntingRank:" + uid + "-" + objID - menbers = &redis.Z{Score: float64(score), Member: strKey} - - if cmd := pipe.ZAdd(tableName, menbers); cmd != nil { - - dock, err1 := cmd.Result() - if err1 != nil { - this.Errorln(dock, err1) - } - } - if _, err := pipe.Exec(); err != nil { - this.Errorln(err) - return - } -} //红点查询 func (this *Hunting) Reddot(session comm.IUserSession, rid ...comm.ReddotType) (reddot map[comm.ReddotType]*pb.ReddotItem) { diff --git a/modules/viking/api_ranklist.go b/modules/viking/api_ranklist.go index d9d8c385f..c87101e63 100644 --- a/modules/viking/api_ranklist.go +++ b/modules/viking/api_ranklist.go @@ -53,6 +53,27 @@ func (this *apiComp) RankList(session comm.IUserSession, req *pb.VikingRankListR Costtime: v.Data[req.BoosType].Costime[v.Data[req.BoosType].Maxnandu], } } + + // 获取好友数据 + uids = this.module.ModuleFriend.GetFriendList(session.GetUserId()) + if ranks, err = this.module.modulerank.queryPlayers(uids); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + fRank = make([]*pb.DBVikingRank, len(ranks)) + for i, v := range ranks { + fRank[i] = &pb.DBVikingRank{ + Uinfo: v.Uinfo, + Line: v.Data[req.BoosType].Line[v.Data[req.BoosType].Maxnandu], + Difficulty: v.Data[req.BoosType].Maxnandu, + Bosstype: req.BoosType, + Costtime: v.Data[req.BoosType].Costime[v.Data[req.BoosType].Maxnandu], + } + } session.SendMsg(string(this.module.GetType()), VikingRankListResp, &pb.VikingRankListResp{ Ranks: players, Franks: fRank, diff --git a/modules/viking/model_rank.go b/modules/viking/model_rank.go index ae3d881ee..1895d7161 100644 --- a/modules/viking/model_rank.go +++ b/modules/viking/model_rank.go @@ -71,7 +71,7 @@ func (this *ModelRank) querySRankUser(bossid int) (ranks []string, err error) { func (this *ModelRank) queryPlayers(uIds []string) (result []*pb.DBVikingRecord, err error) { result = make([]*pb.DBVikingRecord, 0) - if _, err = this.Gets(uIds, &result); err != nil && err != mgo.MongodbNil { + if _, err = this.GetByUids(uIds, &result); err != nil && err != mgo.MongodbNil { //this.module.Errorln(err) return } diff --git a/modules/viking/model_srank.go b/modules/viking/model_srank.go index 46e38f908..354aa8a14 100644 --- a/modules/viking/model_srank.go +++ b/modules/viking/model_srank.go @@ -42,7 +42,7 @@ func (this *ModelSRank) Init(service core.IService, module core.IModule, comp co func (this *ModelSRank) queryPlayers(uIds []string, conn_ *db.DBConn) (result []*pb.DBVSeasonRecord, err error) { result = make([]*pb.DBVSeasonRecord, 0) model := db.NewDBModelByExpired(comm.TableVikingSRank, conn_) - if _, err = model.Gets(uIds, &result); err != nil && err != mgo.MongodbNil { + if _, err = model.GetByUids(uIds, &result); err != nil && err != mgo.MongodbNil { //this.module.Errorln(err) return } diff --git a/pb/battle_msg.pb.go b/pb/battle_msg.pb.go index c453d1c7c..a6cd82acb 100644 --- a/pb/battle_msg.pb.go +++ b/pb/battle_msg.pb.go @@ -21,6 +21,61 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) +type LineData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Leadpos int32 `protobuf:"varint,1,opt,name=leadpos,proto3" json:"leadpos"` //队长位置 + Line []*LineUp `protobuf:"bytes,2,rep,name=line,proto3" json:"line"` // 阵容数据 +} + +func (x *LineData) Reset() { + *x = LineData{} + if protoimpl.UnsafeEnabled { + mi := &file_battle_battle_msg_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LineData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LineData) ProtoMessage() {} + +func (x *LineData) ProtoReflect() protoreflect.Message { + mi := &file_battle_battle_msg_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LineData.ProtoReflect.Descriptor instead. +func (*LineData) Descriptor() ([]byte, []int) { + return file_battle_battle_msg_proto_rawDescGZIP(), []int{0} +} + +func (x *LineData) GetLeadpos() int32 { + if x != nil { + return x.Leadpos + } + return 0 +} + +func (x *LineData) GetLine() []*LineUp { + if x != nil { + return x.Line + } + return nil +} + type LineUp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -34,7 +89,7 @@ type LineUp struct { func (x *LineUp) Reset() { *x = LineUp{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[0] + mi := &file_battle_battle_msg_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -47,7 +102,7 @@ func (x *LineUp) String() string { func (*LineUp) ProtoMessage() {} func (x *LineUp) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[0] + mi := &file_battle_battle_msg_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -60,7 +115,7 @@ func (x *LineUp) ProtoReflect() protoreflect.Message { // Deprecated: Use LineUp.ProtoReflect.Descriptor instead. func (*LineUp) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{0} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{1} } func (x *LineUp) GetCid() string { @@ -98,7 +153,7 @@ type BattleFormation struct { func (x *BattleFormation) Reset() { *x = BattleFormation{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[1] + mi := &file_battle_battle_msg_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -111,7 +166,7 @@ func (x *BattleFormation) String() string { func (*BattleFormation) ProtoMessage() {} func (x *BattleFormation) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[1] + mi := &file_battle_battle_msg_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -124,7 +179,7 @@ func (x *BattleFormation) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleFormation.ProtoReflect.Descriptor instead. func (*BattleFormation) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{1} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{2} } func (x *BattleFormation) GetLeadpos() int32 { @@ -166,7 +221,7 @@ type BattleEVEReq struct { func (x *BattleEVEReq) Reset() { *x = BattleEVEReq{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[2] + mi := &file_battle_battle_msg_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -179,7 +234,7 @@ func (x *BattleEVEReq) String() string { func (*BattleEVEReq) ProtoMessage() {} func (x *BattleEVEReq) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[2] + mi := &file_battle_battle_msg_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -192,7 +247,7 @@ func (x *BattleEVEReq) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleEVEReq.ProtoReflect.Descriptor instead. func (*BattleEVEReq) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{2} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{3} } func (x *BattleEVEReq) GetPtype() PlayType { @@ -260,7 +315,7 @@ type BattlePVEReq struct { func (x *BattlePVEReq) Reset() { *x = BattlePVEReq{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[3] + mi := &file_battle_battle_msg_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -273,7 +328,7 @@ func (x *BattlePVEReq) String() string { func (*BattlePVEReq) ProtoMessage() {} func (x *BattlePVEReq) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[3] + mi := &file_battle_battle_msg_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -286,7 +341,7 @@ func (x *BattlePVEReq) ProtoReflect() protoreflect.Message { // Deprecated: Use BattlePVEReq.ProtoReflect.Descriptor instead. func (*BattlePVEReq) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{3} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{4} } func (x *BattlePVEReq) GetPtype() PlayType { @@ -340,7 +395,7 @@ type BattleHeroPVEReq struct { func (x *BattleHeroPVEReq) Reset() { *x = BattleHeroPVEReq{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[4] + mi := &file_battle_battle_msg_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -353,7 +408,7 @@ func (x *BattleHeroPVEReq) String() string { func (*BattleHeroPVEReq) ProtoMessage() {} func (x *BattleHeroPVEReq) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[4] + mi := &file_battle_battle_msg_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -366,7 +421,7 @@ func (x *BattleHeroPVEReq) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleHeroPVEReq.ProtoReflect.Descriptor instead. func (*BattleHeroPVEReq) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{4} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{5} } func (x *BattleHeroPVEReq) GetPtype() PlayType { @@ -418,7 +473,7 @@ type PVPFormation struct { func (x *PVPFormation) Reset() { *x = PVPFormation{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[5] + mi := &file_battle_battle_msg_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -431,7 +486,7 @@ func (x *PVPFormation) String() string { func (*PVPFormation) ProtoMessage() {} func (x *PVPFormation) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[5] + mi := &file_battle_battle_msg_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -444,7 +499,7 @@ func (x *PVPFormation) ProtoReflect() protoreflect.Message { // Deprecated: Use PVPFormation.ProtoReflect.Descriptor instead. func (*PVPFormation) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{5} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{6} } func (x *PVPFormation) GetUid() string { @@ -484,7 +539,7 @@ type BattlePVPReq struct { func (x *BattlePVPReq) Reset() { *x = BattlePVPReq{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[6] + mi := &file_battle_battle_msg_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -497,7 +552,7 @@ func (x *BattlePVPReq) String() string { func (*BattlePVPReq) ProtoMessage() {} func (x *BattlePVPReq) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[6] + mi := &file_battle_battle_msg_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -510,7 +565,7 @@ func (x *BattlePVPReq) ProtoReflect() protoreflect.Message { // Deprecated: Use BattlePVPReq.ProtoReflect.Descriptor instead. func (*BattlePVPReq) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{6} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{7} } func (x *BattlePVPReq) GetPtype() PlayType { @@ -566,7 +621,7 @@ type BattleRTPVPReq struct { func (x *BattleRTPVPReq) Reset() { *x = BattleRTPVPReq{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[7] + mi := &file_battle_battle_msg_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -579,7 +634,7 @@ func (x *BattleRTPVPReq) String() string { func (*BattleRTPVPReq) ProtoMessage() {} func (x *BattleRTPVPReq) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[7] + mi := &file_battle_battle_msg_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -592,7 +647,7 @@ func (x *BattleRTPVPReq) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleRTPVPReq.ProtoReflect.Descriptor instead. func (*BattleRTPVPReq) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{7} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{8} } func (x *BattleRTPVPReq) GetPtype() PlayType { @@ -662,7 +717,7 @@ type BattleLPVEReq struct { func (x *BattleLPVEReq) Reset() { *x = BattleLPVEReq{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[8] + mi := &file_battle_battle_msg_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -675,7 +730,7 @@ func (x *BattleLPVEReq) String() string { func (*BattleLPVEReq) ProtoMessage() {} func (x *BattleLPVEReq) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[8] + mi := &file_battle_battle_msg_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -688,7 +743,7 @@ func (x *BattleLPVEReq) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleLPVEReq.ProtoReflect.Descriptor instead. func (*BattleLPVEReq) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{8} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{9} } func (x *BattleLPVEReq) GetPtype() PlayType { @@ -756,7 +811,7 @@ type BattlePVBReq struct { func (x *BattlePVBReq) Reset() { *x = BattlePVBReq{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[9] + mi := &file_battle_battle_msg_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -769,7 +824,7 @@ func (x *BattlePVBReq) String() string { func (*BattlePVBReq) ProtoMessage() {} func (x *BattlePVBReq) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[9] + mi := &file_battle_battle_msg_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -782,7 +837,7 @@ func (x *BattlePVBReq) ProtoReflect() protoreflect.Message { // Deprecated: Use BattlePVBReq.ProtoReflect.Descriptor instead. func (*BattlePVBReq) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{9} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{10} } func (x *BattlePVBReq) GetPtype() PlayType { @@ -842,7 +897,7 @@ type BattleInfo struct { func (x *BattleInfo) Reset() { *x = BattleInfo{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[10] + mi := &file_battle_battle_msg_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -855,7 +910,7 @@ func (x *BattleInfo) String() string { func (*BattleInfo) ProtoMessage() {} func (x *BattleInfo) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[10] + mi := &file_battle_battle_msg_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -868,7 +923,7 @@ func (x *BattleInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleInfo.ProtoReflect.Descriptor instead. func (*BattleInfo) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{10} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{11} } func (x *BattleInfo) GetId() string { @@ -961,7 +1016,7 @@ type BattleCmd struct { func (x *BattleCmd) Reset() { *x = BattleCmd{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[11] + mi := &file_battle_battle_msg_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -974,7 +1029,7 @@ func (x *BattleCmd) String() string { func (*BattleCmd) ProtoMessage() {} func (x *BattleCmd) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[11] + mi := &file_battle_battle_msg_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -987,7 +1042,7 @@ func (x *BattleCmd) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleCmd.ProtoReflect.Descriptor instead. func (*BattleCmd) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{11} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{12} } func (x *BattleCmd) GetCmdtype() string { @@ -1033,7 +1088,7 @@ type BattleReport struct { func (x *BattleReport) Reset() { *x = BattleReport{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[12] + mi := &file_battle_battle_msg_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1046,7 +1101,7 @@ func (x *BattleReport) String() string { func (*BattleReport) ProtoMessage() {} func (x *BattleReport) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[12] + mi := &file_battle_battle_msg_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1059,7 +1114,7 @@ func (x *BattleReport) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleReport.ProtoReflect.Descriptor instead. func (*BattleReport) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{12} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{13} } func (x *BattleReport) GetInfo() *BattleInfo { @@ -1153,7 +1208,7 @@ type BattleRpcMessage struct { func (x *BattleRpcMessage) Reset() { *x = BattleRpcMessage{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[13] + mi := &file_battle_battle_msg_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1166,7 +1221,7 @@ func (x *BattleRpcMessage) String() string { func (*BattleRpcMessage) ProtoMessage() {} func (x *BattleRpcMessage) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[13] + mi := &file_battle_battle_msg_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1179,7 +1234,7 @@ func (x *BattleRpcMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleRpcMessage.ProtoReflect.Descriptor instead. func (*BattleRpcMessage) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{13} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{14} } func (x *BattleRpcMessage) GetRid() uint64 { @@ -1215,7 +1270,7 @@ type BattleCheckResults struct { func (x *BattleCheckResults) Reset() { *x = BattleCheckResults{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[14] + mi := &file_battle_battle_msg_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1228,7 +1283,7 @@ func (x *BattleCheckResults) String() string { func (*BattleCheckResults) ProtoMessage() {} func (x *BattleCheckResults) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[14] + mi := &file_battle_battle_msg_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1241,7 +1296,7 @@ func (x *BattleCheckResults) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleCheckResults.ProtoReflect.Descriptor instead. func (*BattleCheckResults) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{14} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{15} } func (x *BattleCheckResults) GetIscheck() bool { @@ -1263,7 +1318,7 @@ type BattleGetInfoReq struct { func (x *BattleGetInfoReq) Reset() { *x = BattleGetInfoReq{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[15] + mi := &file_battle_battle_msg_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1276,7 +1331,7 @@ func (x *BattleGetInfoReq) String() string { func (*BattleGetInfoReq) ProtoMessage() {} func (x *BattleGetInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[15] + mi := &file_battle_battle_msg_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1289,7 +1344,7 @@ func (x *BattleGetInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleGetInfoReq.ProtoReflect.Descriptor instead. func (*BattleGetInfoReq) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{15} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{16} } func (x *BattleGetInfoReq) GetBattleid() string { @@ -1312,7 +1367,7 @@ type BattleGetInfoResp struct { func (x *BattleGetInfoResp) Reset() { *x = BattleGetInfoResp{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[16] + mi := &file_battle_battle_msg_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1325,7 +1380,7 @@ func (x *BattleGetInfoResp) String() string { func (*BattleGetInfoResp) ProtoMessage() {} func (x *BattleGetInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[16] + mi := &file_battle_battle_msg_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1338,7 +1393,7 @@ func (x *BattleGetInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleGetInfoResp.ProtoReflect.Descriptor instead. func (*BattleGetInfoResp) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{16} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{17} } func (x *BattleGetInfoResp) GetBattleid() string { @@ -1367,7 +1422,7 @@ type BattleCreateServerReq struct { func (x *BattleCreateServerReq) Reset() { *x = BattleCreateServerReq{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[17] + mi := &file_battle_battle_msg_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1380,7 +1435,7 @@ func (x *BattleCreateServerReq) String() string { func (*BattleCreateServerReq) ProtoMessage() {} func (x *BattleCreateServerReq) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[17] + mi := &file_battle_battle_msg_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1393,7 +1448,7 @@ func (x *BattleCreateServerReq) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleCreateServerReq.ProtoReflect.Descriptor instead. func (*BattleCreateServerReq) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{17} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{18} } func (x *BattleCreateServerReq) GetInfo() *BattleInfo { @@ -1415,7 +1470,7 @@ type BattleCreateServerResp struct { func (x *BattleCreateServerResp) Reset() { *x = BattleCreateServerResp{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[18] + mi := &file_battle_battle_msg_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1428,7 +1483,7 @@ func (x *BattleCreateServerResp) String() string { func (*BattleCreateServerResp) ProtoMessage() {} func (x *BattleCreateServerResp) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[18] + mi := &file_battle_battle_msg_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1441,7 +1496,7 @@ func (x *BattleCreateServerResp) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleCreateServerResp.ProtoReflect.Descriptor instead. func (*BattleCreateServerResp) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{18} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{19} } func (x *BattleCreateServerResp) GetIssucc() bool { @@ -1465,7 +1520,7 @@ type BattleInCmdReq struct { func (x *BattleInCmdReq) Reset() { *x = BattleInCmdReq{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[19] + mi := &file_battle_battle_msg_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1478,7 +1533,7 @@ func (x *BattleInCmdReq) String() string { func (*BattleInCmdReq) ProtoMessage() {} func (x *BattleInCmdReq) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[19] + mi := &file_battle_battle_msg_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1491,7 +1546,7 @@ func (x *BattleInCmdReq) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleInCmdReq.ProtoReflect.Descriptor instead. func (*BattleInCmdReq) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{19} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{20} } func (x *BattleInCmdReq) GetBattleid() string { @@ -1529,7 +1584,7 @@ type BattleInCmdResp struct { func (x *BattleInCmdResp) Reset() { *x = BattleInCmdResp{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[20] + mi := &file_battle_battle_msg_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1542,7 +1597,7 @@ func (x *BattleInCmdResp) String() string { func (*BattleInCmdResp) ProtoMessage() {} func (x *BattleInCmdResp) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[20] + mi := &file_battle_battle_msg_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1555,7 +1610,7 @@ func (x *BattleInCmdResp) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleInCmdResp.ProtoReflect.Descriptor instead. func (*BattleInCmdResp) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{20} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{21} } func (x *BattleInCmdResp) GetBattleid() string { @@ -1592,7 +1647,7 @@ type BattleOutCmdPush struct { func (x *BattleOutCmdPush) Reset() { *x = BattleOutCmdPush{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[21] + mi := &file_battle_battle_msg_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1605,7 +1660,7 @@ func (x *BattleOutCmdPush) String() string { func (*BattleOutCmdPush) ProtoMessage() {} func (x *BattleOutCmdPush) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[21] + mi := &file_battle_battle_msg_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1618,7 +1673,7 @@ func (x *BattleOutCmdPush) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleOutCmdPush.ProtoReflect.Descriptor instead. func (*BattleOutCmdPush) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{21} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{22} } func (x *BattleOutCmdPush) GetBattleid() string { @@ -1648,7 +1703,7 @@ type BattleFinishPush struct { func (x *BattleFinishPush) Reset() { *x = BattleFinishPush{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[22] + mi := &file_battle_battle_msg_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1661,7 +1716,7 @@ func (x *BattleFinishPush) String() string { func (*BattleFinishPush) ProtoMessage() {} func (x *BattleFinishPush) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[22] + mi := &file_battle_battle_msg_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1674,7 +1729,7 @@ func (x *BattleFinishPush) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleFinishPush.ProtoReflect.Descriptor instead. func (*BattleFinishPush) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{22} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{23} } func (x *BattleFinishPush) GetBattleid() string { @@ -1704,7 +1759,7 @@ type BattleConcedeReq struct { func (x *BattleConcedeReq) Reset() { *x = BattleConcedeReq{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[23] + mi := &file_battle_battle_msg_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1717,7 +1772,7 @@ func (x *BattleConcedeReq) String() string { func (*BattleConcedeReq) ProtoMessage() {} func (x *BattleConcedeReq) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[23] + mi := &file_battle_battle_msg_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1730,7 +1785,7 @@ func (x *BattleConcedeReq) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleConcedeReq.ProtoReflect.Descriptor instead. func (*BattleConcedeReq) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{23} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{24} } func (x *BattleConcedeReq) GetBattleid() string { @@ -1759,7 +1814,7 @@ type BattleConcedeResp struct { func (x *BattleConcedeResp) Reset() { *x = BattleConcedeResp{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[24] + mi := &file_battle_battle_msg_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1772,7 +1827,7 @@ func (x *BattleConcedeResp) String() string { func (*BattleConcedeResp) ProtoMessage() {} func (x *BattleConcedeResp) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[24] + mi := &file_battle_battle_msg_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1785,7 +1840,7 @@ func (x *BattleConcedeResp) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleConcedeResp.ProtoReflect.Descriptor instead. func (*BattleConcedeResp) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{24} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{25} } func (x *BattleConcedeResp) GetIssucc() bool { @@ -1809,7 +1864,7 @@ type BattleStateInfo struct { func (x *BattleStateInfo) Reset() { *x = BattleStateInfo{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[25] + mi := &file_battle_battle_msg_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1822,7 +1877,7 @@ func (x *BattleStateInfo) String() string { func (*BattleStateInfo) ProtoMessage() {} func (x *BattleStateInfo) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[25] + mi := &file_battle_battle_msg_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1835,7 +1890,7 @@ func (x *BattleStateInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use BattleStateInfo.ProtoReflect.Descriptor instead. func (*BattleStateInfo) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{25} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{26} } func (x *BattleStateInfo) GetInfo() *BattleInfo { @@ -1876,7 +1931,7 @@ type StroneBattleReq struct { func (x *StroneBattleReq) Reset() { *x = StroneBattleReq{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_msg_proto_msgTypes[26] + mi := &file_battle_battle_msg_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1889,7 +1944,7 @@ func (x *StroneBattleReq) String() string { func (*StroneBattleReq) ProtoMessage() {} func (x *StroneBattleReq) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_msg_proto_msgTypes[26] + mi := &file_battle_battle_msg_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1902,7 +1957,7 @@ func (x *StroneBattleReq) ProtoReflect() protoreflect.Message { // Deprecated: Use StroneBattleReq.ProtoReflect.Descriptor instead. func (*StroneBattleReq) Descriptor() ([]byte, []int) { - return file_battle_battle_msg_proto_rawDescGZIP(), []int{26} + return file_battle_battle_msg_proto_rawDescGZIP(), []int{27} } func (x *StroneBattleReq) GetDiBuff() []*DySkillData { @@ -1963,238 +2018,242 @@ var file_battle_battle_msg_proto_rawDesc = []byte{ 0x6f, 0x1a, 0x12, 0x68, 0x65, 0x72, 0x6f, 0x2f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x22, 0x3e, 0x0a, 0x06, 0x4c, 0x69, 0x6e, 0x65, 0x55, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, - 0x73, 0x74, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x74, 0x61, 0x72, - 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, - 0x22, 0x67, 0x0a, 0x0f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x16, 0x0a, - 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xeb, 0x01, 0x0a, 0x0c, 0x42, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x45, 0x56, 0x45, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, - 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, - 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x06, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x79, 0x73, 0x66, 0x6f, 0x72, 0x6d, - 0x61, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x73, 0x79, 0x73, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x61, 0x63, 0x6b, 0x75, - 0x70, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x6c, 0x65, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x62, 0x75, 0x6c, - 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xa3, 0x01, 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x50, 0x56, 0x45, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, - 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, - 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x06, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, - 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xaa, 0x01, - 0x0a, 0x10, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x56, 0x45, 0x52, - 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, - 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6c, - 0x65, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x75, 0x6c, 0x65, - 0x73, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x09, 0x72, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x50, 0x56, 0x50, 0x46, 0x6f, 0x72, 0x6d, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x72, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, - 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, - 0x05, 0x52, 0x07, 0x6d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x5b, 0x0a, 0x0c, 0x50, 0x56, - 0x50, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, - 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6c, - 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x1f, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, - 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xbb, 0x01, 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x50, 0x56, 0x50, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, - 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, - 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x09, 0x72, 0x65, 0x64, - 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x50, - 0x56, 0x50, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x72, 0x65, 0x64, - 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x2d, 0x0a, 0x0a, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6f, - 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x50, 0x56, 0x50, - 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x62, 0x75, 0x6c, 0x65, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x83, 0x02, 0x0a, 0x0e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x52, 0x54, 0x50, 0x56, 0x50, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, - 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, - 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x64, - 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, - 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x09, 0x72, 0x65, 0x64, 0x66, 0x6f, - 0x72, 0x6d, 0x61, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x72, 0x65, - 0x64, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, - 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x6c, 0x75, - 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x0b, 0x62, 0x75, 0x6c, 0x65, 0x66, - 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, - 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, - 0x62, 0x75, 0x6c, 0x65, 0x66, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xf1, 0x01, 0x0a, 0x0d, - 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4c, 0x50, 0x56, 0x45, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, + 0x22, 0x41, 0x0a, 0x08, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, + 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6c, + 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x1b, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x55, 0x70, 0x52, 0x04, 0x6c, + 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x06, 0x4c, 0x69, 0x6e, 0x65, 0x55, 0x70, 0x12, 0x10, 0x0a, + 0x03, 0x63, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, + 0x12, 0x0a, 0x04, 0x73, 0x74, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, + 0x74, 0x61, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x02, 0x6c, 0x76, 0x22, 0x67, 0x0a, 0x0f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, + 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x72, 0x69, 0x65, + 0x6e, 0x64, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, + 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xeb, 0x01, 0x0a, + 0x0c, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x45, 0x56, 0x45, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x12, 0x14, - 0x0a, 0x05, 0x73, 0x63, 0x65, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, - 0x63, 0x65, 0x6e, 0x65, 0x12, 0x28, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x26, - 0x0a, 0x0e, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x72, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x72, 0x6c, - 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x27, 0x0a, 0x08, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x65, - 0x72, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x08, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x72, 0x73, 0x22, - 0xa3, 0x01, 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x56, 0x42, 0x52, 0x65, 0x71, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x12, 0x28, + 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, + 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x79, 0x73, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x73, 0x79, 0x73, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x61, + 0x63, 0x6b, 0x75, 0x70, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, + 0x6c, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, + 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xa3, 0x01, 0x0a, 0x0c, 0x42, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x56, 0x45, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x05, 0x70, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, + 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x06, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, + 0x22, 0xaa, 0x01, 0x0a, 0x10, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x50, + 0x56, 0x45, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, + 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x09, 0x72, 0x65, 0x64, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x50, 0x56, 0x50, 0x46, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x72, 0x65, 0x64, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x5b, 0x0a, + 0x0c, 0x50, 0x56, 0x50, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, + 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x1f, 0x0a, 0x06, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, + 0x72, 0x6f, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xbb, 0x01, 0x0a, 0x0c, 0x42, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x56, 0x50, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x05, 0x70, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, + 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x09, + 0x72, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x0d, 0x2e, 0x50, 0x56, 0x50, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, + 0x72, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x2d, 0x0a, 0x0a, 0x62, 0x75, 0x6c, + 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, + 0x50, 0x56, 0x50, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x62, 0x75, + 0x6c, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x83, 0x02, 0x0a, 0x0e, 0x42, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x52, 0x54, 0x50, 0x56, 0x50, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x05, 0x70, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, + 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, + 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x09, 0x72, 0x65, + 0x64, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, + 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x09, 0x72, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x6c, + 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x0b, 0x62, 0x75, + 0x6c, 0x65, 0x66, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x0b, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xf1, + 0x01, 0x0a, 0x0d, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4c, 0x50, 0x56, 0x45, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, - 0x64, 0x12, 0x28, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, - 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xd6, 0x02, 0x0a, 0x0a, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x65, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x73, 0x63, 0x65, 0x6e, 0x65, 0x12, 0x28, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x72, 0x6c, 0x65, 0x61, 0x64, + 0x70, 0x6f, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x6f, 0x6e, 0x73, 0x74, + 0x65, 0x72, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x27, 0x0a, 0x08, 0x6d, 0x6f, 0x6e, + 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x08, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x65, + 0x72, 0x73, 0x22, 0xa3, 0x01, 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x56, 0x42, + 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, + 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x75, 0x6c, - 0x65, 0x73, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x05, 0x62, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, - 0x52, 0x05, 0x62, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, - 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x64, 0x43, - 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x64, - 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x66, 0x6c, 0x69, - 0x73, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x52, 0x08, 0x72, 0x65, 0x64, 0x66, 0x6c, 0x69, - 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, - 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x18, - 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x52, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, - 0x12, 0x14, 0x0a, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x05, 0x52, - 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x18, 0x0b, 0x20, 0x03, 0x28, 0x02, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x51, - 0x0a, 0x09, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, - 0x6d, 0x64, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6d, - 0x64, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x22, 0xc8, 0x02, 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, - 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x43, 0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x43, 0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x77, 0x69, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x77, 0x69, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x05, 0x69, 0x6e, 0x63, - 0x6d, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x43, 0x6d, 0x64, 0x52, 0x05, 0x69, 0x6e, 0x63, 0x6d, 0x64, 0x12, 0x22, 0x0a, 0x06, 0x6f, - 0x75, 0x74, 0x63, 0x6d, 0x64, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x63, 0x6d, 0x64, 0x12, - 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x74, 0x61, 0x73, 0x6b, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x74, - 0x61, 0x73, 0x6b, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x61, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x05, 0x64, 0x65, 0x61, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x75, - 0x6e, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, - 0x12, 0x0a, 0x04, 0x68, 0x61, 0x72, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x68, - 0x61, 0x72, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x21, 0x0a, 0x05, 0x61, 0x6c, 0x69, - 0x76, 0x65, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x22, 0x66, 0x0a, 0x10, - 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x70, 0x63, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x72, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x72, - 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x22, 0x2e, 0x0a, 0x12, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, - 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x63, - 0x68, 0x65, 0x63, 0x6b, 0x22, 0x2e, 0x0a, 0x10, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x47, 0x65, - 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x69, 0x64, 0x22, 0x55, 0x0a, 0x11, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x47, 0x65, - 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x69, 0x64, 0x12, 0x24, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x38, 0x0a, 0x15, 0x42, - 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x30, 0x0a, 0x16, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x16, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x22, 0x5c, 0x0a, 0x0e, 0x42, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x49, 0x6e, 0x43, 0x6d, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x69, 0x64, 0x65, 0x12, 0x1a, 0x0a, 0x02, 0x69, 0x6e, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6d, - 0x64, 0x52, 0x02, 0x69, 0x6e, 0x22, 0x61, 0x0a, 0x0f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, - 0x6e, 0x43, 0x6d, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0a, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x52, 0x02, 0x69, 0x6e, - 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x22, 0x4c, 0x0a, 0x10, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x4f, 0x75, 0x74, 0x43, 0x6d, 0x64, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1a, 0x0a, 0x08, - 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x03, 0x63, 0x6d, 0x64, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6d, - 0x64, 0x52, 0x03, 0x63, 0x6d, 0x64, 0x22, 0x48, 0x0a, 0x10, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x69, 0x6e, 0x53, 0x69, 0x64, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x77, 0x69, 0x6e, 0x53, 0x69, 0x64, 0x65, - 0x22, 0x42, 0x0a, 0x10, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x63, 0x65, 0x64, - 0x65, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, - 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, - 0x73, 0x69, 0x64, 0x65, 0x22, 0x2b, 0x0a, 0x11, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, - 0x6e, 0x63, 0x65, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x73, - 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, - 0x63, 0x22, 0x82, 0x01, 0x0a, 0x0f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, + 0x65, 0x73, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x04, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x18, + 0x0a, 0x07, 0x6d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, + 0x07, 0x6d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xd6, 0x02, 0x0a, 0x0a, 0x42, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, + 0x72, 0x75, 0x6c, 0x65, 0x73, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x05, 0x62, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x05, 0x62, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x72, + 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x72, 0x65, 0x64, + 0x66, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, + 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x52, 0x08, 0x72, 0x65, 0x64, + 0x66, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, + 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, + 0x73, 0x74, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x52, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, + 0x69, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x0a, 0x20, 0x03, + 0x28, 0x05, 0x52, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x02, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x22, 0x51, 0x0a, 0x09, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x6d, 0x64, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x63, 0x6d, 0x64, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x22, 0xc8, 0x02, 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x43, 0x6d, 0x64, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x43, 0x6d, 0x64, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x43, 0x6d, 0x64, 0x73, 0x12, 0x28, 0x0a, 0x09, - 0x69, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6d, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0a, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x52, 0x09, 0x69, 0x6e, 0x70, - 0x75, 0x74, 0x43, 0x6d, 0x64, 0x73, 0x22, 0xf2, 0x01, 0x0a, 0x0f, 0x53, 0x74, 0x72, 0x6f, 0x6e, - 0x65, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x06, 0x64, 0x69, - 0x42, 0x75, 0x66, 0x66, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x44, 0x79, 0x53, - 0x6b, 0x69, 0x6c, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x52, 0x06, 0x64, 0x69, 0x42, 0x75, 0x66, 0x66, - 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, - 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1f, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, - 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, - 0x64, 0x70, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x64, - 0x70, 0x6f, 0x73, 0x12, 0x21, 0x0a, 0x05, 0x42, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, - 0x05, 0x42, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x05, 0x50, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, - 0x52, 0x05, 0x50, 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x42, - 0x61, 0x74, 0x74, 0x6c, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, - 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x43, 0x6f, 0x73, 0x74, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x43, 0x6f, 0x73, 0x74, 0x74, 0x69, + 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x69, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x07, 0x77, 0x69, 0x6e, 0x53, 0x69, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x05, + 0x69, 0x6e, 0x63, 0x6d, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x52, 0x05, 0x69, 0x6e, 0x63, 0x6d, 0x64, 0x12, 0x22, + 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x63, 0x6d, 0x64, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, + 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x63, + 0x6d, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x74, 0x61, + 0x73, 0x6b, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x74, 0x61, 0x73, 0x6b, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x61, 0x74, 0x68, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x64, 0x65, 0x61, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, + 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x72, 0x6f, 0x75, + 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x72, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x68, 0x61, 0x72, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x21, 0x0a, 0x05, + 0x61, 0x6c, 0x69, 0x76, 0x65, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x22, + 0x66, 0x0a, 0x10, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x70, 0x63, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x03, 0x72, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x28, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, + 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x2e, 0x0a, 0x12, 0x42, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x18, 0x0a, + 0x07, 0x69, 0x73, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x69, 0x73, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x22, 0x2e, 0x0a, 0x10, 0x42, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x62, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x22, 0x55, 0x0a, 0x11, 0x42, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, + 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x12, 0x24, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x38, + 0x0a, 0x15, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x30, 0x0a, 0x16, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x22, 0x5c, 0x0a, 0x0e, 0x42, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x43, 0x6d, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, + 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x64, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x69, 0x64, 0x65, 0x12, 0x1a, 0x0a, 0x02, + 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x43, 0x6d, 0x64, 0x52, 0x02, 0x69, 0x6e, 0x22, 0x61, 0x0a, 0x0f, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x49, 0x6e, 0x43, 0x6d, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x62, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x52, + 0x02, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x22, 0x4c, 0x0a, 0x10, 0x42, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4f, 0x75, 0x74, 0x43, 0x6d, 0x64, 0x50, 0x75, 0x73, 0x68, 0x12, + 0x1a, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x03, 0x63, + 0x6d, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x43, 0x6d, 0x64, 0x52, 0x03, 0x63, 0x6d, 0x64, 0x22, 0x48, 0x0a, 0x10, 0x42, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1a, 0x0a, + 0x08, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x69, 0x6e, + 0x53, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x77, 0x69, 0x6e, 0x53, + 0x69, 0x64, 0x65, 0x22, 0x42, 0x0a, 0x10, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6e, + 0x63, 0x65, 0x64, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x73, 0x69, 0x64, 0x65, 0x22, 0x2b, 0x0a, 0x11, 0x42, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x43, 0x6f, 0x6e, 0x63, 0x65, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, + 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, + 0x73, 0x75, 0x63, 0x63, 0x22, 0x82, 0x01, 0x0a, 0x0f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x07, 0x6f, 0x75, 0x74, + 0x43, 0x6d, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x43, 0x6d, 0x64, 0x73, 0x12, + 0x28, 0x0a, 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6d, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x52, 0x09, + 0x69, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6d, 0x64, 0x73, 0x22, 0xf2, 0x01, 0x0a, 0x0f, 0x53, 0x74, + 0x72, 0x6f, 0x6e, 0x65, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, + 0x06, 0x64, 0x69, 0x42, 0x75, 0x66, 0x66, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, + 0x44, 0x79, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x52, 0x06, 0x64, 0x69, 0x42, + 0x75, 0x66, 0x66, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x05, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1f, 0x0a, 0x04, 0x72, + 0x6f, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6c, + 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x21, 0x0a, 0x05, 0x42, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x05, 0x42, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x05, 0x50, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x05, 0x50, 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x42, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0c, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x06, + 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2209,88 +2268,90 @@ func file_battle_battle_msg_proto_rawDescGZIP() []byte { return file_battle_battle_msg_proto_rawDescData } -var file_battle_battle_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 27) +var file_battle_battle_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 28) var file_battle_battle_msg_proto_goTypes = []interface{}{ - (*LineUp)(nil), // 0: LineUp - (*BattleFormation)(nil), // 1: BattleFormation - (*BattleEVEReq)(nil), // 2: BattleEVEReq - (*BattlePVEReq)(nil), // 3: BattlePVEReq - (*BattleHeroPVEReq)(nil), // 4: BattleHeroPVEReq - (*PVPFormation)(nil), // 5: PVPFormation - (*BattlePVPReq)(nil), // 6: BattlePVPReq - (*BattleRTPVPReq)(nil), // 7: BattleRTPVPReq - (*BattleLPVEReq)(nil), // 8: BattleLPVEReq - (*BattlePVBReq)(nil), // 9: BattlePVBReq - (*BattleInfo)(nil), // 10: BattleInfo - (*BattleCmd)(nil), // 11: BattleCmd - (*BattleReport)(nil), // 12: BattleReport - (*BattleRpcMessage)(nil), // 13: BattleRpcMessage - (*BattleCheckResults)(nil), // 14: BattleCheckResults - (*BattleGetInfoReq)(nil), // 15: BattleGetInfoReq - (*BattleGetInfoResp)(nil), // 16: BattleGetInfoResp - (*BattleCreateServerReq)(nil), // 17: BattleCreateServerReq - (*BattleCreateServerResp)(nil), // 18: BattleCreateServerResp - (*BattleInCmdReq)(nil), // 19: BattleInCmdReq - (*BattleInCmdResp)(nil), // 20: BattleInCmdResp - (*BattleOutCmdPush)(nil), // 21: BattleOutCmdPush - (*BattleFinishPush)(nil), // 22: BattleFinishPush - (*BattleConcedeReq)(nil), // 23: BattleConcedeReq - (*BattleConcedeResp)(nil), // 24: BattleConcedeResp - (*BattleStateInfo)(nil), // 25: BattleStateInfo - (*StroneBattleReq)(nil), // 26: StroneBattleReq - (PlayType)(0), // 27: PlayType - (*DBHero)(nil), // 28: DBHero - (*BattleRole)(nil), // 29: BattleRole - (BattleType)(0), // 30: BattleType - (*DBBattleFormt)(nil), // 31: DBBattleFormt - (*anypb.Any)(nil), // 32: google.protobuf.Any - (*DySkillData)(nil), // 33: DySkillData + (*LineData)(nil), // 0: LineData + (*LineUp)(nil), // 1: LineUp + (*BattleFormation)(nil), // 2: BattleFormation + (*BattleEVEReq)(nil), // 3: BattleEVEReq + (*BattlePVEReq)(nil), // 4: BattlePVEReq + (*BattleHeroPVEReq)(nil), // 5: BattleHeroPVEReq + (*PVPFormation)(nil), // 6: PVPFormation + (*BattlePVPReq)(nil), // 7: BattlePVPReq + (*BattleRTPVPReq)(nil), // 8: BattleRTPVPReq + (*BattleLPVEReq)(nil), // 9: BattleLPVEReq + (*BattlePVBReq)(nil), // 10: BattlePVBReq + (*BattleInfo)(nil), // 11: BattleInfo + (*BattleCmd)(nil), // 12: BattleCmd + (*BattleReport)(nil), // 13: BattleReport + (*BattleRpcMessage)(nil), // 14: BattleRpcMessage + (*BattleCheckResults)(nil), // 15: BattleCheckResults + (*BattleGetInfoReq)(nil), // 16: BattleGetInfoReq + (*BattleGetInfoResp)(nil), // 17: BattleGetInfoResp + (*BattleCreateServerReq)(nil), // 18: BattleCreateServerReq + (*BattleCreateServerResp)(nil), // 19: BattleCreateServerResp + (*BattleInCmdReq)(nil), // 20: BattleInCmdReq + (*BattleInCmdResp)(nil), // 21: BattleInCmdResp + (*BattleOutCmdPush)(nil), // 22: BattleOutCmdPush + (*BattleFinishPush)(nil), // 23: BattleFinishPush + (*BattleConcedeReq)(nil), // 24: BattleConcedeReq + (*BattleConcedeResp)(nil), // 25: BattleConcedeResp + (*BattleStateInfo)(nil), // 26: BattleStateInfo + (*StroneBattleReq)(nil), // 27: StroneBattleReq + (PlayType)(0), // 28: PlayType + (*DBHero)(nil), // 29: DBHero + (*BattleRole)(nil), // 30: BattleRole + (BattleType)(0), // 31: BattleType + (*DBBattleFormt)(nil), // 32: DBBattleFormt + (*anypb.Any)(nil), // 33: google.protobuf.Any + (*DySkillData)(nil), // 34: DySkillData } var file_battle_battle_msg_proto_depIdxs = []int32{ - 27, // 0: BattleEVEReq.ptype:type_name -> PlayType - 1, // 1: BattleEVEReq.format:type_name -> BattleFormation - 27, // 2: BattlePVEReq.ptype:type_name -> PlayType - 1, // 3: BattlePVEReq.format:type_name -> BattleFormation - 27, // 4: BattleHeroPVEReq.ptype:type_name -> PlayType - 5, // 5: BattleHeroPVEReq.redformat:type_name -> PVPFormation - 28, // 6: PVPFormation.format:type_name -> DBHero - 27, // 7: BattlePVPReq.ptype:type_name -> PlayType - 5, // 8: BattlePVPReq.redformat:type_name -> PVPFormation - 5, // 9: BattlePVPReq.buleformat:type_name -> PVPFormation - 27, // 10: BattleRTPVPReq.ptype:type_name -> PlayType - 1, // 11: BattleRTPVPReq.redformat:type_name -> BattleFormation - 1, // 12: BattleRTPVPReq.bulefformat:type_name -> BattleFormation - 27, // 13: BattleLPVEReq.ptype:type_name -> PlayType - 1, // 14: BattleLPVEReq.format:type_name -> BattleFormation - 29, // 15: BattleLPVEReq.monsters:type_name -> BattleRole - 27, // 16: BattlePVBReq.ptype:type_name -> PlayType - 1, // 17: BattlePVBReq.format:type_name -> BattleFormation - 30, // 18: BattleInfo.btype:type_name -> BattleType - 27, // 19: BattleInfo.ptype:type_name -> PlayType - 31, // 20: BattleInfo.redflist:type_name -> DBBattleFormt - 31, // 21: BattleInfo.buleflist:type_name -> DBBattleFormt - 10, // 22: BattleReport.info:type_name -> BattleInfo - 11, // 23: BattleReport.incmd:type_name -> BattleCmd - 11, // 24: BattleReport.outcmd:type_name -> BattleCmd - 29, // 25: BattleReport.alive:type_name -> BattleRole - 32, // 26: BattleRpcMessage.data:type_name -> google.protobuf.Any - 25, // 27: BattleGetInfoResp.info:type_name -> BattleStateInfo - 10, // 28: BattleCreateServerReq.info:type_name -> BattleInfo - 11, // 29: BattleInCmdReq.in:type_name -> BattleCmd - 11, // 30: BattleInCmdResp.in:type_name -> BattleCmd - 11, // 31: BattleOutCmdPush.cmd:type_name -> BattleCmd - 10, // 32: BattleStateInfo.info:type_name -> BattleInfo - 11, // 33: BattleStateInfo.outCmds:type_name -> BattleCmd - 11, // 34: BattleStateInfo.inputCmds:type_name -> BattleCmd - 33, // 35: StroneBattleReq.diBuff:type_name -> DySkillData - 29, // 36: StroneBattleReq.role:type_name -> BattleRole - 30, // 37: StroneBattleReq.Btype:type_name -> BattleType - 27, // 38: StroneBattleReq.Ptype:type_name -> PlayType - 39, // [39:39] is the sub-list for method output_type - 39, // [39:39] is the sub-list for method input_type - 39, // [39:39] is the sub-list for extension type_name - 39, // [39:39] is the sub-list for extension extendee - 0, // [0:39] is the sub-list for field type_name + 1, // 0: LineData.line:type_name -> LineUp + 28, // 1: BattleEVEReq.ptype:type_name -> PlayType + 2, // 2: BattleEVEReq.format:type_name -> BattleFormation + 28, // 3: BattlePVEReq.ptype:type_name -> PlayType + 2, // 4: BattlePVEReq.format:type_name -> BattleFormation + 28, // 5: BattleHeroPVEReq.ptype:type_name -> PlayType + 6, // 6: BattleHeroPVEReq.redformat:type_name -> PVPFormation + 29, // 7: PVPFormation.format:type_name -> DBHero + 28, // 8: BattlePVPReq.ptype:type_name -> PlayType + 6, // 9: BattlePVPReq.redformat:type_name -> PVPFormation + 6, // 10: BattlePVPReq.buleformat:type_name -> PVPFormation + 28, // 11: BattleRTPVPReq.ptype:type_name -> PlayType + 2, // 12: BattleRTPVPReq.redformat:type_name -> BattleFormation + 2, // 13: BattleRTPVPReq.bulefformat:type_name -> BattleFormation + 28, // 14: BattleLPVEReq.ptype:type_name -> PlayType + 2, // 15: BattleLPVEReq.format:type_name -> BattleFormation + 30, // 16: BattleLPVEReq.monsters:type_name -> BattleRole + 28, // 17: BattlePVBReq.ptype:type_name -> PlayType + 2, // 18: BattlePVBReq.format:type_name -> BattleFormation + 31, // 19: BattleInfo.btype:type_name -> BattleType + 28, // 20: BattleInfo.ptype:type_name -> PlayType + 32, // 21: BattleInfo.redflist:type_name -> DBBattleFormt + 32, // 22: BattleInfo.buleflist:type_name -> DBBattleFormt + 11, // 23: BattleReport.info:type_name -> BattleInfo + 12, // 24: BattleReport.incmd:type_name -> BattleCmd + 12, // 25: BattleReport.outcmd:type_name -> BattleCmd + 30, // 26: BattleReport.alive:type_name -> BattleRole + 33, // 27: BattleRpcMessage.data:type_name -> google.protobuf.Any + 26, // 28: BattleGetInfoResp.info:type_name -> BattleStateInfo + 11, // 29: BattleCreateServerReq.info:type_name -> BattleInfo + 12, // 30: BattleInCmdReq.in:type_name -> BattleCmd + 12, // 31: BattleInCmdResp.in:type_name -> BattleCmd + 12, // 32: BattleOutCmdPush.cmd:type_name -> BattleCmd + 11, // 33: BattleStateInfo.info:type_name -> BattleInfo + 12, // 34: BattleStateInfo.outCmds:type_name -> BattleCmd + 12, // 35: BattleStateInfo.inputCmds:type_name -> BattleCmd + 34, // 36: StroneBattleReq.diBuff:type_name -> DySkillData + 30, // 37: StroneBattleReq.role:type_name -> BattleRole + 31, // 38: StroneBattleReq.Btype:type_name -> BattleType + 28, // 39: StroneBattleReq.Ptype:type_name -> PlayType + 40, // [40:40] is the sub-list for method output_type + 40, // [40:40] is the sub-list for method input_type + 40, // [40:40] is the sub-list for extension type_name + 40, // [40:40] is the sub-list for extension extendee + 0, // [0:40] is the sub-list for field type_name } func init() { file_battle_battle_msg_proto_init() } @@ -2302,7 +2363,7 @@ func file_battle_battle_msg_proto_init() { file_hero_hero_db_proto_init() if !protoimpl.UnsafeEnabled { file_battle_battle_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LineUp); i { + switch v := v.(*LineData); i { case 0: return &v.state case 1: @@ -2314,7 +2375,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleFormation); i { + switch v := v.(*LineUp); i { case 0: return &v.state case 1: @@ -2326,7 +2387,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleEVEReq); i { + switch v := v.(*BattleFormation); i { case 0: return &v.state case 1: @@ -2338,7 +2399,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattlePVEReq); i { + switch v := v.(*BattleEVEReq); i { case 0: return &v.state case 1: @@ -2350,7 +2411,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleHeroPVEReq); i { + switch v := v.(*BattlePVEReq); i { case 0: return &v.state case 1: @@ -2362,7 +2423,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PVPFormation); i { + switch v := v.(*BattleHeroPVEReq); i { case 0: return &v.state case 1: @@ -2374,7 +2435,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattlePVPReq); i { + switch v := v.(*PVPFormation); i { case 0: return &v.state case 1: @@ -2386,7 +2447,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleRTPVPReq); i { + switch v := v.(*BattlePVPReq); i { case 0: return &v.state case 1: @@ -2398,7 +2459,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleLPVEReq); i { + switch v := v.(*BattleRTPVPReq); i { case 0: return &v.state case 1: @@ -2410,7 +2471,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattlePVBReq); i { + switch v := v.(*BattleLPVEReq); i { case 0: return &v.state case 1: @@ -2422,7 +2483,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleInfo); i { + switch v := v.(*BattlePVBReq); i { case 0: return &v.state case 1: @@ -2434,7 +2495,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleCmd); i { + switch v := v.(*BattleInfo); i { case 0: return &v.state case 1: @@ -2446,7 +2507,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleReport); i { + switch v := v.(*BattleCmd); i { case 0: return &v.state case 1: @@ -2458,7 +2519,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleRpcMessage); i { + switch v := v.(*BattleReport); i { case 0: return &v.state case 1: @@ -2470,7 +2531,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleCheckResults); i { + switch v := v.(*BattleRpcMessage); i { case 0: return &v.state case 1: @@ -2482,7 +2543,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleGetInfoReq); i { + switch v := v.(*BattleCheckResults); i { case 0: return &v.state case 1: @@ -2494,7 +2555,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleGetInfoResp); i { + switch v := v.(*BattleGetInfoReq); i { case 0: return &v.state case 1: @@ -2506,7 +2567,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleCreateServerReq); i { + switch v := v.(*BattleGetInfoResp); i { case 0: return &v.state case 1: @@ -2518,7 +2579,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleCreateServerResp); i { + switch v := v.(*BattleCreateServerReq); i { case 0: return &v.state case 1: @@ -2530,7 +2591,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleInCmdReq); i { + switch v := v.(*BattleCreateServerResp); i { case 0: return &v.state case 1: @@ -2542,7 +2603,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleInCmdResp); i { + switch v := v.(*BattleInCmdReq); i { case 0: return &v.state case 1: @@ -2554,7 +2615,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleOutCmdPush); i { + switch v := v.(*BattleInCmdResp); i { case 0: return &v.state case 1: @@ -2566,7 +2627,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleFinishPush); i { + switch v := v.(*BattleOutCmdPush); i { case 0: return &v.state case 1: @@ -2578,7 +2639,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleConcedeReq); i { + switch v := v.(*BattleFinishPush); i { case 0: return &v.state case 1: @@ -2590,7 +2651,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleConcedeResp); i { + switch v := v.(*BattleConcedeReq); i { case 0: return &v.state case 1: @@ -2602,7 +2663,7 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleStateInfo); i { + switch v := v.(*BattleConcedeResp); i { case 0: return &v.state case 1: @@ -2614,6 +2675,18 @@ func file_battle_battle_msg_proto_init() { } } file_battle_battle_msg_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BattleStateInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_battle_battle_msg_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StroneBattleReq); i { case 0: return &v.state @@ -2632,7 +2705,7 @@ func file_battle_battle_msg_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_battle_battle_msg_proto_rawDesc, NumEnums: 0, - NumMessages: 27, + NumMessages: 28, NumExtensions: 0, NumServices: 0, }, diff --git a/pb/hunting_db.pb.go b/pb/hunting_db.pb.go index 8be894384..701665457 100644 --- a/pb/hunting_db.pb.go +++ b/pb/hunting_db.pb.go @@ -99,30 +99,94 @@ func (x *DBHunting) GetPs() map[int32]int32 { return nil } -// 狩猎排行榜 +// 战斗数据 +type DBHuntingRecord struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID + Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID + Uinfo *BaseUserInfo `protobuf:"bytes,3,opt,name=uinfo,proto3" json:"uinfo"` //用户基础 + Data map[int32]*HuntingData `protobuf:"bytes,4,rep,name=data,proto3" json:"data" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // key boss 类型 +} + +func (x *DBHuntingRecord) Reset() { + *x = DBHuntingRecord{} + if protoimpl.UnsafeEnabled { + mi := &file_hunting_hunting_db_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DBHuntingRecord) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DBHuntingRecord) ProtoMessage() {} + +func (x *DBHuntingRecord) ProtoReflect() protoreflect.Message { + mi := &file_hunting_hunting_db_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DBHuntingRecord.ProtoReflect.Descriptor instead. +func (*DBHuntingRecord) Descriptor() ([]byte, []int) { + return file_hunting_hunting_db_proto_rawDescGZIP(), []int{1} +} + +func (x *DBHuntingRecord) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *DBHuntingRecord) GetUid() string { + if x != nil { + return x.Uid + } + return "" +} + +func (x *DBHuntingRecord) GetUinfo() *BaseUserInfo { + if x != nil { + return x.Uinfo + } + return nil +} + +func (x *DBHuntingRecord) GetData() map[int32]*HuntingData { + if x != nil { + return x.Data + } + return nil +} + type DBHuntingRank struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID - Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID - Difficulty int32 `protobuf:"varint,3,opt,name=difficulty,proto3" json:"difficulty"` // 难度 - Bosstype int32 `protobuf:"varint,4,opt,name=bosstype,proto3" json:"bosstype"` // boss类型塔类型 - Nickname string `protobuf:"bytes,5,opt,name=nickname,proto3" json:"nickname"` // 昵称 - Skin string `protobuf:"bytes,6,opt,name=skin,proto3" json:"skin"` // 玩家头像 - Lv int32 `protobuf:"varint,7,opt,name=lv,proto3" json:"lv"` // 玩家等级 - Leadpos int32 `protobuf:"varint,8,opt,name=leadpos,proto3" json:"leadpos"` //队长位置 - Line []*LineUp `protobuf:"bytes,9,rep,name=line,proto3" json:"line"` // 阵容数据 - CostTime int32 `protobuf:"varint,10,opt,name=costTime,proto3" json:"costTime" bson:"costTime"` //闯关耗时 单位s - Sex int32 `protobuf:"varint,11,opt,name=sex,proto3" json:"sex"` - Title string `protobuf:"bytes,12,opt,name=title,proto3" json:"title"` // + Uinfo *BaseUserInfo `protobuf:"bytes,21,opt,name=uinfo,proto3" json:"uinfo"` //用户基础 + Line *LineData `protobuf:"bytes,2,opt,name=line,proto3" json:"line"` // 阵容信息 + Difficulty int32 `protobuf:"varint,3,opt,name=difficulty,proto3" json:"difficulty"` // 难度 + Bosstype int32 `protobuf:"varint,4,opt,name=bosstype,proto3" json:"bosstype"` // boss类型塔类型 + Costtime int32 `protobuf:"varint,5,opt,name=costtime,proto3" json:"costtime"` // 耗时 } func (x *DBHuntingRank) Reset() { *x = DBHuntingRank{} if protoimpl.UnsafeEnabled { - mi := &file_hunting_hunting_db_proto_msgTypes[1] + mi := &file_hunting_hunting_db_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -135,7 +199,7 @@ func (x *DBHuntingRank) String() string { func (*DBHuntingRank) ProtoMessage() {} func (x *DBHuntingRank) ProtoReflect() protoreflect.Message { - mi := &file_hunting_hunting_db_proto_msgTypes[1] + mi := &file_hunting_hunting_db_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -148,21 +212,21 @@ func (x *DBHuntingRank) ProtoReflect() protoreflect.Message { // Deprecated: Use DBHuntingRank.ProtoReflect.Descriptor instead. func (*DBHuntingRank) Descriptor() ([]byte, []int) { - return file_hunting_hunting_db_proto_rawDescGZIP(), []int{1} + return file_hunting_hunting_db_proto_rawDescGZIP(), []int{2} } -func (x *DBHuntingRank) GetId() string { +func (x *DBHuntingRank) GetUinfo() *BaseUserInfo { if x != nil { - return x.Id + return x.Uinfo } - return "" + return nil } -func (x *DBHuntingRank) GetUid() string { +func (x *DBHuntingRank) GetLine() *LineData { if x != nil { - return x.Uid + return x.Line } - return "" + return nil } func (x *DBHuntingRank) GetDifficulty() int32 { @@ -179,60 +243,74 @@ func (x *DBHuntingRank) GetBosstype() int32 { return 0 } -func (x *DBHuntingRank) GetNickname() string { +func (x *DBHuntingRank) GetCosttime() int32 { if x != nil { - return x.Nickname - } - return "" -} - -func (x *DBHuntingRank) GetSkin() string { - if x != nil { - return x.Skin - } - return "" -} - -func (x *DBHuntingRank) GetLv() int32 { - if x != nil { - return x.Lv + return x.Costtime } return 0 } -func (x *DBHuntingRank) GetLeadpos() int32 { - if x != nil { - return x.Leadpos - } - return 0 +type HuntingData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Costime map[int32]int32 `protobuf:"bytes,1,rep,name=costime,proto3" json:"costime" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //key 难度 value 战斗时间 + Maxnandu int32 `protobuf:"varint,2,opt,name=maxnandu,proto3" json:"maxnandu"` // 最高难度 + Line map[int32]*LineData `protobuf:"bytes,3,rep,name=line,proto3" json:"line" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (x *DBHuntingRank) GetLine() []*LineUp { +func (x *HuntingData) Reset() { + *x = HuntingData{} + if protoimpl.UnsafeEnabled { + mi := &file_hunting_hunting_db_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *HuntingData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*HuntingData) ProtoMessage() {} + +func (x *HuntingData) ProtoReflect() protoreflect.Message { + mi := &file_hunting_hunting_db_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use HuntingData.ProtoReflect.Descriptor instead. +func (*HuntingData) Descriptor() ([]byte, []int) { + return file_hunting_hunting_db_proto_rawDescGZIP(), []int{3} +} + +func (x *HuntingData) GetCostime() map[int32]int32 { if x != nil { - return x.Line + return x.Costime } return nil } -func (x *DBHuntingRank) GetCostTime() int32 { +func (x *HuntingData) GetMaxnandu() int32 { if x != nil { - return x.CostTime + return x.Maxnandu } return 0 } -func (x *DBHuntingRank) GetSex() int32 { +func (x *HuntingData) GetLine() map[int32]*LineData { if x != nil { - return x.Sex + return x.Line } - return 0 -} - -func (x *DBHuntingRank) GetTitle() string { - if x != nil { - return x.Title - } - return "" + return nil } var File_hunting_hunting_db_proto protoreflect.FileDescriptor @@ -241,48 +319,71 @@ var file_hunting_hunting_db_proto_rawDesc = []byte{ 0x0a, 0x18, 0x68, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x2f, 0x68, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x22, 0xde, 0x02, 0x0a, 0x09, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, - 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x62, 0x6f, 0x73, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x14, 0x2e, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x42, 0x6f, - 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x73, 0x73, 0x12, 0x34, 0x0a, - 0x08, 0x62, 0x6f, 0x73, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x18, 0x2e, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x42, 0x6f, 0x73, 0x73, - 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x62, 0x6f, 0x73, 0x73, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x02, 0x70, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x12, 0x2e, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x50, 0x73, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x02, 0x70, 0x73, 0x1a, 0x37, 0x0a, 0x09, 0x42, 0x6f, 0x73, 0x73, 0x45, + 0x6f, 0x74, 0x6f, 0x1a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, + 0xde, 0x02, 0x0a, 0x09, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, + 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, + 0x28, 0x0a, 0x04, 0x62, 0x6f, 0x73, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, + 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x42, 0x6f, 0x73, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x73, 0x73, 0x12, 0x34, 0x0a, 0x08, 0x62, 0x6f, 0x73, + 0x73, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x44, 0x42, + 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x42, 0x6f, 0x73, 0x73, 0x54, 0x69, 0x6d, 0x65, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x62, 0x6f, 0x73, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x22, 0x0a, 0x02, 0x70, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x44, 0x42, + 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x50, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x02, 0x70, 0x73, 0x1a, 0x37, 0x0a, 0x09, 0x42, 0x6f, 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3b, 0x0a, 0x0d, + 0x42, 0x6f, 0x73, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x35, 0x0a, 0x07, 0x50, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x1a, 0x3b, 0x0a, 0x0d, 0x42, 0x6f, 0x73, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x35, 0x0a, - 0x07, 0x50, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa8, 0x02, 0x0a, 0x0d, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, - 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, + 0x22, 0xcf, 0x01, 0x0a, 0x0f, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, + 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x2e, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x44, 0x42, 0x48, 0x75, + 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x44, 0x61, 0x74, 0x61, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x45, 0x0a, 0x09, 0x44, + 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x22, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x48, 0x75, 0x6e, 0x74, + 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, + 0x38, 0x01, 0x22, 0xab, 0x01, 0x0a, 0x0d, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, + 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x15, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x04, 0x6c, 0x69, 0x6e, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, + 0x74, 0x61, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x6f, 0x73, 0x73, - 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x73, 0x6b, 0x69, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x02, 0x6c, 0x76, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x1b, - 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x4c, - 0x69, 0x6e, 0x65, 0x55, 0x70, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, - 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, - 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, - 0x6c, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x42, - 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, + 0x22, 0x8a, 0x02, 0x0a, 0x0b, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, + 0x12, 0x33, 0x0a, 0x07, 0x63, 0x6f, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x19, 0x2e, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x2e, + 0x43, 0x6f, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x63, 0x6f, + 0x73, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x6e, 0x61, 0x6e, 0x64, + 0x75, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x6e, 0x61, 0x6e, 0x64, + 0x75, 0x12, 0x2a, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x16, 0x2e, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x4c, 0x69, + 0x6e, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x3a, 0x0a, + 0x0c, 0x43, 0x6f, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x42, 0x0a, 0x09, 0x4c, 0x69, 0x6e, + 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, + 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x06, 0x5a, + 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -297,25 +398,38 @@ func file_hunting_hunting_db_proto_rawDescGZIP() []byte { return file_hunting_hunting_db_proto_rawDescData } -var file_hunting_hunting_db_proto_msgTypes = make([]protoimpl.MessageInfo, 5) +var file_hunting_hunting_db_proto_msgTypes = make([]protoimpl.MessageInfo, 10) var file_hunting_hunting_db_proto_goTypes = []interface{}{ - (*DBHunting)(nil), // 0: DBHunting - (*DBHuntingRank)(nil), // 1: DBHuntingRank - nil, // 2: DBHunting.BossEntry - nil, // 3: DBHunting.BossTimeEntry - nil, // 4: DBHunting.PsEntry - (*LineUp)(nil), // 5: LineUp + (*DBHunting)(nil), // 0: DBHunting + (*DBHuntingRecord)(nil), // 1: DBHuntingRecord + (*DBHuntingRank)(nil), // 2: DBHuntingRank + (*HuntingData)(nil), // 3: HuntingData + nil, // 4: DBHunting.BossEntry + nil, // 5: DBHunting.BossTimeEntry + nil, // 6: DBHunting.PsEntry + nil, // 7: DBHuntingRecord.DataEntry + nil, // 8: HuntingData.CostimeEntry + nil, // 9: HuntingData.LineEntry + (*BaseUserInfo)(nil), // 10: BaseUserInfo + (*LineData)(nil), // 11: LineData } var file_hunting_hunting_db_proto_depIdxs = []int32{ - 2, // 0: DBHunting.boss:type_name -> DBHunting.BossEntry - 3, // 1: DBHunting.bossTime:type_name -> DBHunting.BossTimeEntry - 4, // 2: DBHunting.ps:type_name -> DBHunting.PsEntry - 5, // 3: DBHuntingRank.line:type_name -> LineUp - 4, // [4:4] is the sub-list for method output_type - 4, // [4:4] is the sub-list for method input_type - 4, // [4:4] is the sub-list for extension type_name - 4, // [4:4] is the sub-list for extension extendee - 0, // [0:4] is the sub-list for field type_name + 4, // 0: DBHunting.boss:type_name -> DBHunting.BossEntry + 5, // 1: DBHunting.bossTime:type_name -> DBHunting.BossTimeEntry + 6, // 2: DBHunting.ps:type_name -> DBHunting.PsEntry + 10, // 3: DBHuntingRecord.uinfo:type_name -> BaseUserInfo + 7, // 4: DBHuntingRecord.data:type_name -> DBHuntingRecord.DataEntry + 10, // 5: DBHuntingRank.uinfo:type_name -> BaseUserInfo + 11, // 6: DBHuntingRank.line:type_name -> LineData + 8, // 7: HuntingData.costime:type_name -> HuntingData.CostimeEntry + 9, // 8: HuntingData.line:type_name -> HuntingData.LineEntry + 3, // 9: DBHuntingRecord.DataEntry.value:type_name -> HuntingData + 11, // 10: HuntingData.LineEntry.value:type_name -> LineData + 11, // [11:11] is the sub-list for method output_type + 11, // [11:11] is the sub-list for method input_type + 11, // [11:11] is the sub-list for extension type_name + 11, // [11:11] is the sub-list for extension extendee + 0, // [0:11] is the sub-list for field type_name } func init() { file_hunting_hunting_db_proto_init() } @@ -324,6 +438,7 @@ func file_hunting_hunting_db_proto_init() { return } file_battle_battle_msg_proto_init() + file_comm_proto_init() if !protoimpl.UnsafeEnabled { file_hunting_hunting_db_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DBHunting); i { @@ -338,6 +453,18 @@ func file_hunting_hunting_db_proto_init() { } } file_hunting_hunting_db_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DBHuntingRecord); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_hunting_hunting_db_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DBHuntingRank); i { case 0: return &v.state @@ -349,6 +476,18 @@ func file_hunting_hunting_db_proto_init() { return nil } } + file_hunting_hunting_db_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*HuntingData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -356,7 +495,7 @@ func file_hunting_hunting_db_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_hunting_hunting_db_proto_rawDesc, NumEnums: 0, - NumMessages: 5, + NumMessages: 10, NumExtensions: 0, NumServices: 0, }, diff --git a/pb/hunting_msg.pb.go b/pb/hunting_msg.pb.go index a49d8d7be..dc55dcd9a 100644 --- a/pb/hunting_msg.pb.go +++ b/pb/hunting_msg.pb.go @@ -493,7 +493,6 @@ type HuntingRankListReq struct { unknownFields protoimpl.UnknownFields BoosType int32 `protobuf:"varint,1,opt,name=boosType,proto3" json:"boosType"` // boss 类型 - Friend bool `protobuf:"varint,2,opt,name=friend,proto3" json:"friend"` // 是否是好友榜 } func (x *HuntingRankListReq) Reset() { @@ -535,19 +534,13 @@ func (x *HuntingRankListReq) GetBoosType() int32 { return 0 } -func (x *HuntingRankListReq) GetFriend() bool { - if x != nil { - return x.Friend - } - return false -} - type HuntingRankListResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Ranks []*DBHuntingRank `protobuf:"bytes,1,rep,name=ranks,proto3" json:"ranks"` // 排行数据 有序的 注意boss类型 + Ranks []*DBHuntingRank `protobuf:"bytes,1,rep,name=ranks,proto3" json:"ranks"` // 排行数据 有序的 注意boss类型 + Franks []*DBHuntingRank `protobuf:"bytes,2,rep,name=franks,proto3" json:"franks"` // 排行数据 吴序的 注意boss类型 } func (x *HuntingRankListResp) Reset() { @@ -589,6 +582,13 @@ func (x *HuntingRankListResp) GetRanks() []*DBHuntingRank { return nil } +func (x *HuntingRankListResp) GetFranks() []*DBHuntingRank { + if x != nil { + return x.Franks + } + return nil +} + var File_hunting_hunting_msg_proto protoreflect.FileDescriptor var file_hunting_hunting_msg_proto_rawDesc = []byte{ @@ -650,15 +650,16 @@ var file_hunting_hunting_msg_proto_rawDesc = []byte{ 0x22, 0x30, 0x0a, 0x0e, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x42, 0x75, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x22, 0x48, 0x0a, 0x12, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, + 0x74, 0x61, 0x22, 0x30, 0x0a, 0x12, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x73, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x22, 0x3b, 0x0a, 0x13, - 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x61, - 0x6e, 0x6b, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x63, 0x0a, 0x13, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, + 0x61, 0x6e, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x05, 0x72, + 0x61, 0x6e, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x48, + 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x6b, + 0x73, 0x12, 0x26, 0x0a, 0x06, 0x66, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, + 0x6b, 0x52, 0x06, 0x66, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } @@ -704,11 +705,12 @@ var file_hunting_hunting_msg_proto_depIdxs = []int32{ 10, // 6: HuntingChallengeOverResp.heroexp:type_name -> HuntingChallengeOverResp.HeroexpEntry 11, // 7: HuntingBuyResp.data:type_name -> DBHunting 16, // 8: HuntingRankListResp.ranks:type_name -> DBHuntingRank - 9, // [9:9] is the sub-list for method output_type - 9, // [9:9] is the sub-list for method input_type - 9, // [9:9] is the sub-list for extension type_name - 9, // [9:9] is the sub-list for extension extendee - 0, // [0:9] is the sub-list for field type_name + 16, // 9: HuntingRankListResp.franks:type_name -> DBHuntingRank + 10, // [10:10] is the sub-list for method output_type + 10, // [10:10] is the sub-list for method input_type + 10, // [10:10] is the sub-list for extension type_name + 10, // [10:10] is the sub-list for extension extendee + 0, // [0:10] is the sub-list for field type_name } func init() { file_hunting_hunting_msg_proto_init() } diff --git a/pb/integral_db.pb.go b/pb/integral_db.pb.go index 653e30ba0..d509f8ae7 100644 --- a/pb/integral_db.pb.go +++ b/pb/integral_db.pb.go @@ -187,61 +187,6 @@ func (x *DBIntegralBoss) GetLine() map[int32]*LineData { return nil } -type LineData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Leadpos int32 `protobuf:"varint,1,opt,name=leadpos,proto3" json:"leadpos"` //队长位置 - Line []*LineUp `protobuf:"bytes,2,rep,name=line,proto3" json:"line"` // 阵容数据 -} - -func (x *LineData) Reset() { - *x = LineData{} - if protoimpl.UnsafeEnabled { - mi := &file_integral_integral_db_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *LineData) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*LineData) ProtoMessage() {} - -func (x *LineData) ProtoReflect() protoreflect.Message { - mi := &file_integral_integral_db_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use LineData.ProtoReflect.Descriptor instead. -func (*LineData) Descriptor() ([]byte, []int) { - return file_integral_integral_db_proto_rawDescGZIP(), []int{1} -} - -func (x *LineData) GetLeadpos() int32 { - if x != nil { - return x.Leadpos - } - return 0 -} - -func (x *LineData) GetLine() []*LineUp { - if x != nil { - return x.Line - } - return nil -} - // 积分boss 排行 type DBIntegralRank struct { state protoimpl.MessageState @@ -258,7 +203,7 @@ type DBIntegralRank struct { func (x *DBIntegralRank) Reset() { *x = DBIntegralRank{} if protoimpl.UnsafeEnabled { - mi := &file_integral_integral_db_proto_msgTypes[2] + mi := &file_integral_integral_db_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -271,7 +216,7 @@ func (x *DBIntegralRank) String() string { func (*DBIntegralRank) ProtoMessage() {} func (x *DBIntegralRank) ProtoReflect() protoreflect.Message { - mi := &file_integral_integral_db_proto_msgTypes[2] + mi := &file_integral_integral_db_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -284,7 +229,7 @@ func (x *DBIntegralRank) ProtoReflect() protoreflect.Message { // Deprecated: Use DBIntegralRank.ProtoReflect.Descriptor instead. func (*DBIntegralRank) Descriptor() ([]byte, []int) { - return file_integral_integral_db_proto_rawDescGZIP(), []int{2} + return file_integral_integral_db_proto_rawDescGZIP(), []int{1} } func (x *DBIntegralRank) GetId() string { @@ -370,21 +315,17 @@ var file_integral_integral_db_proto_rawDesc = []byte{ 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0x41, 0x0a, 0x08, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, - 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x1b, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x55, 0x70, 0x52, - 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x90, 0x01, 0x0a, 0x0e, 0x44, 0x42, 0x49, 0x6e, 0x74, 0x65, - 0x67, 0x72, 0x61, 0x6c, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x69, 0x6e, 0x66, - 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, - 0x05, 0x6e, 0x61, 0x6e, 0x64, 0x75, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6e, 0x61, - 0x6e, 0x64, 0x75, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x04, 0x6c, 0x69, 0x6e, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, - 0x74, 0x61, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, - 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x38, 0x01, 0x22, 0x90, 0x01, 0x0a, 0x0e, 0x44, 0x42, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, + 0x6c, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, + 0x6e, 0x64, 0x75, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6e, 0x61, 0x6e, 0x64, 0x75, + 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, + 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -399,31 +340,29 @@ func file_integral_integral_db_proto_rawDescGZIP() []byte { return file_integral_integral_db_proto_rawDescData } -var file_integral_integral_db_proto_msgTypes = make([]protoimpl.MessageInfo, 6) +var file_integral_integral_db_proto_msgTypes = make([]protoimpl.MessageInfo, 5) var file_integral_integral_db_proto_goTypes = []interface{}{ (*DBIntegralBoss)(nil), // 0: DBIntegralBoss - (*LineData)(nil), // 1: LineData - (*DBIntegralRank)(nil), // 2: DBIntegralRank - nil, // 3: DBIntegralBoss.BuffEntry - nil, // 4: DBIntegralBoss.ScoreEntry - nil, // 5: DBIntegralBoss.LineEntry - (*BaseUserInfo)(nil), // 6: BaseUserInfo - (*LineUp)(nil), // 7: LineUp + (*DBIntegralRank)(nil), // 1: DBIntegralRank + nil, // 2: DBIntegralBoss.BuffEntry + nil, // 3: DBIntegralBoss.ScoreEntry + nil, // 4: DBIntegralBoss.LineEntry + (*BaseUserInfo)(nil), // 5: BaseUserInfo + (*LineData)(nil), // 6: LineData } var file_integral_integral_db_proto_depIdxs = []int32{ - 3, // 0: DBIntegralBoss.buff:type_name -> DBIntegralBoss.BuffEntry - 4, // 1: DBIntegralBoss.score:type_name -> DBIntegralBoss.ScoreEntry - 6, // 2: DBIntegralBoss.uinfo:type_name -> BaseUserInfo - 5, // 3: DBIntegralBoss.line:type_name -> DBIntegralBoss.LineEntry - 7, // 4: LineData.line:type_name -> LineUp - 6, // 5: DBIntegralRank.uinfo:type_name -> BaseUserInfo - 1, // 6: DBIntegralRank.line:type_name -> LineData - 1, // 7: DBIntegralBoss.LineEntry.value:type_name -> LineData - 8, // [8:8] is the sub-list for method output_type - 8, // [8:8] is the sub-list for method input_type - 8, // [8:8] is the sub-list for extension type_name - 8, // [8:8] is the sub-list for extension extendee - 0, // [0:8] is the sub-list for field type_name + 2, // 0: DBIntegralBoss.buff:type_name -> DBIntegralBoss.BuffEntry + 3, // 1: DBIntegralBoss.score:type_name -> DBIntegralBoss.ScoreEntry + 5, // 2: DBIntegralBoss.uinfo:type_name -> BaseUserInfo + 4, // 3: DBIntegralBoss.line:type_name -> DBIntegralBoss.LineEntry + 5, // 4: DBIntegralRank.uinfo:type_name -> BaseUserInfo + 6, // 5: DBIntegralRank.line:type_name -> LineData + 6, // 6: DBIntegralBoss.LineEntry.value:type_name -> LineData + 7, // [7:7] is the sub-list for method output_type + 7, // [7:7] is the sub-list for method input_type + 7, // [7:7] is the sub-list for extension type_name + 7, // [7:7] is the sub-list for extension extendee + 0, // [0:7] is the sub-list for field type_name } func init() { file_integral_integral_db_proto_init() } @@ -447,18 +386,6 @@ func file_integral_integral_db_proto_init() { } } file_integral_integral_db_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LineData); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_integral_integral_db_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DBIntegralRank); i { case 0: return &v.state @@ -477,7 +404,7 @@ func file_integral_integral_db_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_integral_integral_db_proto_rawDesc, NumEnums: 0, - NumMessages: 6, + NumMessages: 5, NumExtensions: 0, NumServices: 0, }, diff --git a/pb/viking_db.pb.go b/pb/viking_db.pb.go index 78c46e61b..ceaf441c4 100644 --- a/pb/viking_db.pb.go +++ b/pb/viking_db.pb.go @@ -548,118 +548,118 @@ var File_viking_viking_db_proto protoreflect.FileDescriptor var file_viking_viking_db_proto_rawDesc = []byte{ 0x0a, 0x16, 0x76, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x2f, 0x76, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x6c, 0x2f, 0x69, - 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x6c, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x22, 0xc0, 0x03, 0x0a, 0x08, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x12, 0x0e, 0x0a, - 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, - 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, - 0x27, 0x0a, 0x04, 0x62, 0x6f, 0x73, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, - 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x42, 0x6f, 0x73, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x52, 0x04, 0x62, 0x6f, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x08, 0x62, 0x6f, 0x73, 0x73, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x44, 0x42, 0x56, - 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x42, 0x6f, 0x73, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x08, 0x62, 0x6f, 0x73, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x21, 0x0a, - 0x02, 0x70, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x44, 0x42, 0x56, 0x69, - 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x50, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x02, 0x70, 0x73, - 0x12, 0x2a, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x14, 0x2e, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x52, 0x6f, 0x75, 0x6e, 0x64, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x1a, 0x37, 0x0a, 0x09, - 0x42, 0x6f, 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3b, 0x0a, 0x0d, 0x42, 0x6f, 0x73, 0x73, 0x54, 0x69, 0x6d, - 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc0, 0x03, + 0x0a, 0x08, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x27, 0x0a, 0x04, + 0x62, 0x6f, 0x73, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x44, 0x42, 0x56, + 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x42, 0x6f, 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x04, 0x62, 0x6f, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x08, 0x62, 0x6f, 0x73, 0x73, 0x54, 0x69, 0x6d, + 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, + 0x6e, 0x67, 0x2e, 0x42, 0x6f, 0x73, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x52, 0x08, 0x62, 0x6f, 0x73, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x02, 0x70, 0x73, + 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, + 0x67, 0x2e, 0x50, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x02, 0x70, 0x73, 0x12, 0x2a, 0x0a, + 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x44, + 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x1a, 0x37, 0x0a, 0x09, 0x42, 0x6f, 0x73, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x1a, 0x35, 0x0a, 0x07, 0x50, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, - 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, - 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, 0x0a, 0x52, 0x6f, 0x75, - 0x6e, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x22, 0xcb, 0x01, 0x0a, 0x0e, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, + 0x38, 0x01, 0x1a, 0x3b, 0x0a, 0x0d, 0x42, 0x6f, 0x73, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, + 0x35, 0x0a, 0x07, 0x50, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, 0x0a, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, + 0x22, 0xcb, 0x01, 0x0a, 0x0e, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, + 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x2d, 0x0a, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x56, 0x69, 0x6b, + 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x43, 0x0a, 0x09, 0x44, 0x61, 0x74, + 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x20, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xaa, + 0x01, 0x0a, 0x0c, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x12, + 0x23, 0x0a, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, + 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x75, + 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x6c, + 0x69, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, + 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, + 0x6c, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x6f, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x84, 0x02, 0x0a, 0x09, + 0x53, 0x63, 0x6f, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x31, 0x0a, 0x07, 0x63, 0x6f, 0x73, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x53, 0x63, 0x6f, + 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x07, 0x63, 0x6f, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x6d, 0x61, 0x78, 0x6e, 0x61, 0x6e, 0x64, 0x75, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x6d, 0x61, 0x78, 0x6e, 0x61, 0x6e, 0x64, 0x75, 0x12, 0x28, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x44, 0x61, + 0x74, 0x61, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x6c, 0x69, + 0x6e, 0x65, 0x1a, 0x3a, 0x0a, 0x0c, 0x43, 0x6f, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x42, + 0x0a, 0x09, 0x4c, 0x69, 0x6e, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1f, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4c, + 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, + 0x38, 0x01, 0x22, 0xcd, 0x01, 0x0a, 0x0f, 0x44, 0x42, 0x56, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x2d, 0x0a, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, - 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x44, 0x61, 0x74, - 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x43, 0x0a, 0x09, - 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x20, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x22, 0xaa, 0x01, 0x0a, 0x0c, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x61, - 0x6e, 0x6b, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x15, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, - 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, - 0x75, 0x6c, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x64, 0x69, 0x66, 0x66, - 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x73, 0x73, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x6f, 0x73, 0x73, 0x74, 0x79, - 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x84, - 0x02, 0x0a, 0x09, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x31, 0x0a, 0x07, - 0x63, 0x6f, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x73, 0x74, 0x69, 0x6d, - 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x63, 0x6f, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x12, - 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x6e, 0x61, 0x6e, 0x64, 0x75, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x6e, 0x61, 0x6e, 0x64, 0x75, 0x12, 0x28, 0x0a, 0x04, 0x6c, - 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x53, 0x63, 0x6f, 0x72, - 0x65, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, - 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x3a, 0x0a, 0x0c, 0x43, 0x6f, 0x73, 0x74, 0x69, 0x6d, 0x65, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x1a, 0x42, 0x0a, 0x09, 0x4c, 0x69, 0x6e, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, - 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, - 0x12, 0x1f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x09, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xcd, 0x01, 0x0a, 0x0f, 0x44, 0x42, 0x56, 0x53, 0x65, 0x61, - 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x05, 0x75, - 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, - 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, - 0x12, 0x2e, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x44, 0x42, 0x56, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, - 0x2e, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x1a, 0x43, 0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, - 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, - 0x20, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, - 0x2e, 0x48, 0x75, 0x69, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xfc, 0x01, 0x0a, 0x09, 0x48, 0x75, 0x69, 0x68, 0x65, 0x44, - 0x61, 0x74, 0x61, 0x12, 0x2b, 0x0a, 0x05, 0x68, 0x75, 0x69, 0x68, 0x65, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x48, 0x75, 0x69, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x48, - 0x75, 0x69, 0x68, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x68, 0x75, 0x69, 0x68, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x6e, 0x61, 0x6e, 0x64, 0x75, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x6e, 0x61, 0x6e, 0x64, 0x75, 0x12, 0x28, 0x0a, 0x04, - 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x48, 0x75, 0x69, - 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x38, 0x0a, 0x0a, 0x48, 0x75, 0x69, 0x68, 0x65, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x1a, 0x42, 0x0a, 0x09, 0x4c, 0x69, 0x6e, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, - 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, - 0x1f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, - 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb5, 0x01, 0x0a, 0x0d, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, - 0x67, 0x53, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x04, 0x6c, - 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4c, 0x69, 0x6e, 0x65, - 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, - 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, - 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, - 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x6f, - 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x68, 0x75, 0x69, 0x68, 0x65, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x68, 0x75, 0x69, 0x68, 0x65, 0x42, 0x06, 0x5a, 0x04, - 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x2e, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x44, 0x42, + 0x56, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x44, 0x61, + 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x43, 0x0a, + 0x09, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x20, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x48, 0x75, + 0x69, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, + 0x38, 0x01, 0x22, 0xfc, 0x01, 0x0a, 0x09, 0x48, 0x75, 0x69, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, + 0x12, 0x2b, 0x0a, 0x05, 0x68, 0x75, 0x69, 0x68, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x15, 0x2e, 0x48, 0x75, 0x69, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x48, 0x75, 0x69, 0x68, + 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x68, 0x75, 0x69, 0x68, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x6d, 0x61, 0x78, 0x6e, 0x61, 0x6e, 0x64, 0x75, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x6d, 0x61, 0x78, 0x6e, 0x61, 0x6e, 0x64, 0x75, 0x12, 0x28, 0x0a, 0x04, 0x6c, 0x69, 0x6e, + 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x48, 0x75, 0x69, 0x68, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x6c, + 0x69, 0x6e, 0x65, 0x1a, 0x38, 0x0a, 0x0a, 0x48, 0x75, 0x69, 0x68, 0x65, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, + 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x42, 0x0a, + 0x09, 0x4c, 0x69, 0x6e, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4c, 0x69, + 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x22, 0xb5, 0x01, 0x0a, 0x0d, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x52, + 0x61, 0x6e, 0x6b, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, + 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x64, 0x69, 0x66, + 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x73, 0x73, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x6f, 0x73, 0x73, 0x74, + 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x68, 0x75, 0x69, 0x68, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x68, 0x75, 0x69, 0x68, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, + 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -730,7 +730,7 @@ func file_viking_viking_db_proto_init() { return } file_comm_proto_init() - file_integral_integral_db_proto_init() + file_battle_battle_msg_proto_init() if !protoimpl.UnsafeEnabled { file_viking_viking_db_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DBViking); i {