From 4421cfac54688b497883596f705dda461e71212f Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Mon, 4 Dec 2023 14:12:52 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E6=98=AF=E5=90=A6=E5=AE=8C=E6=88=90?= =?UTF-8?q?=E6=96=B0=E6=89=8B=E6=8A=BD=E5=8D=A1=E7=95=8C=E9=9D=A2=20?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E7=A7=BB=E5=8A=A8=E5=88=B0herorecord=20?= =?UTF-8?q?=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/hero/api_savecard.go | 18 ++++- modules/hero/api_selectcard.go | 41 +++++++--- modules/hero/api_selectdraw.go | 79 +++++++++--------- pb/hero_db.pb.go | 144 ++++++++++++++++----------------- 4 files changed, 154 insertions(+), 128 deletions(-) diff --git a/modules/hero/api_savecard.go b/modules/hero/api_savecard.go index 18e0ba203..f937bbc8e 100644 --- a/modules/hero/api_savecard.go +++ b/modules/hero/api_savecard.go @@ -18,9 +18,10 @@ func (this *apiComp) SaveCardCheck(session comm.IUserSession, req *pb.HeroSaveCa func (this *apiComp) SaveCard(session comm.IUserSession, req *pb.HeroSaveCardReq) (errdata *pb.ErrorData) { var ( - err error - result *pb.DBSelectDraw - update map[string]interface{} + err error + result *pb.DBSelectDraw + update map[string]interface{} + heroRecord *pb.DBHeroRecord ) update = make(map[string]interface{}) if result, err = this.module.modelSelect.GetDrawSelectData(session.GetUserId()); err != nil { @@ -31,13 +32,22 @@ func (this *apiComp) SaveCard(session comm.IUserSession, req *pb.HeroSaveCardReq } return } - if result.Complete { + if heroRecord, err = this.module.modelRecord.GetHeroRecord(session.GetUserId()); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + if heroRecord.Newcomplete { errdata = &pb.ErrorData{ Code: pb.ErrorCode_HeroSelectDrawComplete, Title: pb.ErrorCode_HeroSelectDrawComplete.ToString(), } return } + if req.Index == 1 { result.Rst1 = result.Cur update["rst1"] = result.Rst1 diff --git a/modules/hero/api_selectcard.go b/modules/hero/api_selectcard.go index b47e7b3db..91f11c3d4 100644 --- a/modules/hero/api_selectcard.go +++ b/modules/hero/api_selectcard.go @@ -19,10 +19,11 @@ func (this *apiComp) SelectCardCheck(session comm.IUserSession, req *pb.HeroSele func (this *apiComp) SelectCard(session comm.IUserSession, req *pb.HeroSelectCardReq) (errdata *pb.ErrorData) { var ( - err error - result *pb.DBSelectDraw - szAtno []*pb.AtnoData - curSzCard []string + err error + result *pb.DBSelectDraw + szAtno []*pb.AtnoData + curSzCard []string + heroRecord *pb.DBHeroRecord ) if result, err = this.module.modelSelect.GetDrawSelectData(session.GetUserId()); err != nil { @@ -33,13 +34,22 @@ func (this *apiComp) SelectCard(session comm.IUserSession, req *pb.HeroSelectCar } return } - if result.Complete { + if heroRecord, err = this.module.modelRecord.GetHeroRecord(session.GetUserId()); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + if heroRecord.Newcomplete { errdata = &pb.ErrorData{ Code: pb.ErrorCode_HeroSelectDrawComplete, Title: pb.ErrorCode_HeroSelectDrawComplete.ToString(), } return } + if req.Index == 0 { curSzCard = result.Cur } else if req.Index == 1 { @@ -80,16 +90,25 @@ func (this *apiComp) SelectCard(session comm.IUserSession, req *pb.HeroSelectCar szAtno = append(szAtno, &pb.AtnoData{Atno: atno}) } } - - result.Complete = true + if err = this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), map[string]interface{}{ + "newcomplete": heroRecord.Newcomplete, + }); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.String(), + Message: err.Error(), + } + return + } + //result.Complete = true result.Cur = []string{} // 清空数据 result.Rst1 = []string{} // 清空数据 result.Rst2 = []string{} // 清空数据 if err = this.module.modelSelect.ChangeHeroSelectData(session.GetUserId(), map[string]interface{}{ - "complete": result.Complete, - "cur": result.Cur, - "rst1": result.Rst1, - "rst2": result.Rst2, + //"complete": result.Complete, + "cur": result.Cur, + "rst1": result.Rst1, + "rst2": result.Rst2, }); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, diff --git a/modules/hero/api_selectdraw.go b/modules/hero/api_selectdraw.go index 01f1c9aa7..8fd271856 100644 --- a/modules/hero/api_selectdraw.go +++ b/modules/hero/api_selectdraw.go @@ -13,9 +13,10 @@ func (this *apiComp) SelectDrawCheck(session comm.IUserSession, req *pb.HeroSele func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDrawReq) (errdata *pb.ErrorData) { var ( - err error - result *pb.DBSelectDraw - drawType int32 + err error + result *pb.DBSelectDraw + drawType int32 + heroRecord *pb.DBHeroRecord ) if result, err = this.module.modelSelect.GetDrawSelectData(session.GetUserId()); err != nil { @@ -26,7 +27,15 @@ func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDra } return } - if result.Complete { + if heroRecord, err = this.module.modelRecord.GetHeroRecord(session.GetUserId()); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + if heroRecord.Newcomplete { errdata = &pb.ErrorData{ Code: pb.ErrorCode_HeroSelectDrawComplete, Title: pb.ErrorCode_HeroSelectDrawComplete.ToString(), @@ -41,11 +50,11 @@ func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDra star4Count int32 // 10连抽4星数量 star5Count int32 // 10连抽5星数量 cfgGlobal *cfg.GameGlobalData // 全局配置 - heroRecord *pb.DBHeroRecord - strPool []string // 10连跨多个卡池情况 - update map[string]interface{} - drawConf *cfg.GameDrawPoolData + strPool []string // 10连跨多个卡池情况 + update map[string]interface{} + drawConf *cfg.GameDrawPoolData + dCount int32 IsBaodiPool bool // 是否是保底卡池 appointmap map[int32]string // 指定次数抽卡到指定卡池 @@ -55,14 +64,6 @@ func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDra update = make(map[string]interface{}) appointmap = make(map[int32]string) szCards = make([]string, 0) - if heroRecord, err = this.module.modelRecord.GetHeroRecord(session.GetUserId()); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } // 准备数据 ///////////////////////////////////// @@ -87,24 +88,23 @@ func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDra return } - drawCount = heroRecord.Count[drawType] // 获取当前阵容抽卡次数 - if true { // 普通卡池抽卡 + if true { // 普通卡池抽卡 ////// 获取消耗 if costRes, errdata = this.module.modelHero.CheckDrawCardRes(session, drawConf, 0, drawCount); errdata != nil { return } - + dCount = heroRecord.Count[drawType] // 获取当前阵容抽卡次数 // 校验是否达到保底卡池 - if drawConf.Protect >= drawCount { + if drawConf.Protect >= dCount { IsBaodiPool = true } ///// 获取消耗 end for i := 1; i <= int(drawCount); i++ { // 一张一张的抽 heroRecord.Race[drawType] += 1 - drawCount++ + dCount++ heroRecord.Baodi5[drawType]++ heroRecord.Baodi4[drawType]++ - if v, ok := appointmap[drawCount]; ok { // 优先校验是否是指定抽 + if v, ok := appointmap[dCount]; ok { // 优先校验是否是指定抽 strPool = append(strPool, v) //找到了 continue } @@ -165,23 +165,20 @@ func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDra continue } - if drawCount == 10 { - if star4Count >= cfgGlobal.Draw10Star4Max { // 10连抽最大4星数量 - if IsBaodiPool { - strPool[len(strPool)-1] = drawConf.P3pool - } else { - strPool[len(strPool)-1] = drawConf.N3pool - } - } - if star5Count >= cfgGlobal.Draw10Star5Max { // 10连抽最大5星数量 - if IsBaodiPool { - strPool[len(strPool)-1] = drawConf.P3pool - } else { - strPool[len(strPool)-1] = drawConf.N3pool - } + if star4Count >= cfgGlobal.Draw10Star4Max { // 10连抽最大4星数量 + if IsBaodiPool { + strPool[len(strPool)-1] = drawConf.P3pool + } else { + strPool[len(strPool)-1] = drawConf.N3pool + } + } + if star5Count >= cfgGlobal.Draw10Star5Max { // 10连抽最大5星数量 + if IsBaodiPool { + strPool[len(strPool)-1] = drawConf.P3pool + } else { + strPool[len(strPool)-1] = drawConf.N3pool } } - } } // 通过卡池获得最终的英雄 @@ -202,11 +199,11 @@ func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDra if errdata = this.module.ConsumeRes(session, costRes, true); errdata != nil { return } - heroRecord.Totalcount += drawCount - heroRecord.Daycount += drawCount + heroRecord.Totalcount += dCount + heroRecord.Daycount += dCount - heroRecord.Count[drawType] = drawCount - update["drawcount"] = drawCount + heroRecord.Count[drawType] = dCount + update["drawcount"] = dCount update["count"] = heroRecord.Count update["totalcount"] = heroRecord.Totalcount update["race"] = heroRecord.Race diff --git a/pb/hero_db.pb.go b/pb/hero_db.pb.go index 5ba10824f..d0739268e 100644 --- a/pb/hero_db.pb.go +++ b/pb/hero_db.pb.go @@ -361,6 +361,7 @@ type DBHeroRecord struct { Wish map[string]int64 `protobuf:"bytes,18,rep,name=wish,proto3" json:"wish" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 许愿招募 key:英雄id value 冷却结束时间 WishHero string `protobuf:"bytes,19,opt,name=wishHero,proto3" json:"wishHero"` // 当前许愿英雄 (默认值为0 需客户端 查表读取默认字段) Peachreward bool `protobuf:"varint,20,opt,name=peachreward,proto3" json:"peachreward"` // 圣桃结实已领取奖励 + Newcomplete bool `protobuf:"varint,21,opt,name=newcomplete,proto3" json:"newcomplete"` // 完成新手招募招募 } func (x *DBHeroRecord) Reset() { @@ -521,6 +522,13 @@ func (x *DBHeroRecord) GetPeachreward() bool { return false } +func (x *DBHeroRecord) GetNewcomplete() bool { + if x != nil { + return x.Newcomplete + } + return false +} + // 英雄天赋系统 type DBHeroTalent struct { state protoimpl.MessageState @@ -599,13 +607,12 @@ type DBSelectDraw struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID 主键id - Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID - Count int32 `protobuf:"varint,3,opt,name=count,proto3" json:"count"` // 当前已经尝试的次数 - Cur []string `protobuf:"bytes,4,rep,name=cur,proto3" json:"cur"` // 当前结果 - Rst1 []string `protobuf:"bytes,5,rep,name=rst1,proto3" json:"rst1"` // 结果1 - Rst2 []string `protobuf:"bytes,6,rep,name=rst2,proto3" json:"rst2"` // 结果2 - Complete bool `protobuf:"varint,7,opt,name=complete,proto3" json:"complete"` // 完成招募 + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID 主键id + Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID + Count int32 `protobuf:"varint,3,opt,name=count,proto3" json:"count"` // 当前已经尝试的次数 + Cur []string `protobuf:"bytes,4,rep,name=cur,proto3" json:"cur"` // 当前结果 + Rst1 []string `protobuf:"bytes,5,rep,name=rst1,proto3" json:"rst1"` // 结果1 + Rst2 []string `protobuf:"bytes,6,rep,name=rst2,proto3" json:"rst2"` // 结果2 } func (x *DBSelectDraw) Reset() { @@ -682,13 +689,6 @@ func (x *DBSelectDraw) GetRst2() []string { return nil } -func (x *DBSelectDraw) GetComplete() bool { - if x != nil { - return x.Complete - } - return false -} - var File_hero_hero_db_proto protoreflect.FileDescriptor var file_hero_hero_db_proto_rawDesc = []byte{ @@ -786,7 +786,7 @@ var file_hero_hero_db_proto_rawDesc = []byte{ 0x72, 0x73, 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, 0x22, 0xd6, 0x09, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, + 0x02, 0x38, 0x01, 0x22, 0xf8, 0x09, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 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, 0x14, 0x0a, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x18, @@ -830,66 +830,66 @@ var file_hero_hero_db_proto_rawDesc = []byte{ 0x77, 0x69, 0x73, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x69, 0x73, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x61, 0x63, 0x68, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, - 0x65, 0x61, 0x63, 0x68, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x1a, 0x3c, 0x0a, 0x0e, 0x43, 0x6f, - 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x65, 0x61, 0x63, 0x68, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6e, 0x65, + 0x77, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0b, 0x6e, 0x65, 0x77, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x3c, 0x0a, 0x0e, + 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 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, 0x3c, 0x0a, 0x0e, 0x53, 0x74, + 0x61, 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 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, 0x3c, 0x0a, 0x0e, 0x53, 0x74, 0x61, 0x72, - 0x35, 0x48, 0x65, 0x72, 0x6f, 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, 0x37, 0x0a, 0x09, 0x52, 0x61, 0x63, 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, - 0x39, 0x0a, 0x0b, 0x42, 0x61, 0x6f, 0x64, 0x69, 0x34, 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, 0x39, 0x0a, 0x0b, 0x42, 0x61, - 0x6f, 0x64, 0x69, 0x35, 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, 0x43, 0x6f, 0x75, 0x6e, 0x74, 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, 0x50, 0x65, 0x61, 0x63, 0x68, 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, 0x08, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, 0x0a, 0x4c, 0x69, 0x6d, - 0x69, 0x74, 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, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x57, 0x69, 0x73, 0x68, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x52, 0x61, 0x63, 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, 0x39, 0x0a, 0x0b, 0x42, 0x61, 0x6f, 0x64, 0x69, 0x34, 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, - 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb6, 0x01, 0x0a, - 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 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, - 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, - 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, - 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x52, 0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x1a, 0x39, 0x0a, 0x0b, 0x54, 0x61, - 0x6c, 0x65, 0x6e, 0x74, 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, 0x9c, 0x01, 0x0a, 0x0c, 0x44, 0x42, 0x53, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 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, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x10, - 0x0a, 0x03, 0x63, 0x75, 0x72, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x63, 0x75, 0x72, - 0x12, 0x12, 0x0a, 0x04, 0x72, 0x73, 0x74, 0x31, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, - 0x72, 0x73, 0x74, 0x31, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x73, 0x74, 0x32, 0x18, 0x06, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x04, 0x72, 0x73, 0x74, 0x32, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x65, 0x2a, 0x2f, 0x0a, 0x08, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x0f, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x69, 0x6c, 0x10, - 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4b, 0x6f, 0x6e, - 0x67, 0x46, 0x75, 0x10, 0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, + 0x42, 0x61, 0x6f, 0x64, 0x69, 0x35, 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, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 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, 0x50, 0x65, 0x61, 0x63, 0x68, 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, 0x08, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, 0x0a, 0x4c, + 0x69, 0x6d, 0x69, 0x74, 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, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x57, 0x69, 0x73, 0x68, 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, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb6, + 0x01, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 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, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x06, 0x74, 0x61, 0x6c, + 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x48, 0x65, + 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x1a, 0x39, 0x0a, 0x0b, + 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 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, 0x80, 0x01, 0x0a, 0x0c, 0x44, 0x42, 0x53, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 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, 0x14, 0x0a, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x10, 0x0a, 0x03, 0x63, 0x75, 0x72, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x63, + 0x75, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x73, 0x74, 0x31, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x04, 0x72, 0x73, 0x74, 0x31, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x73, 0x74, 0x32, 0x18, 0x06, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x72, 0x73, 0x74, 0x32, 0x2a, 0x2f, 0x0a, 0x08, 0x48, 0x65, + 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, + 0x70, 0x65, 0x4e, 0x69, 0x6c, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x54, + 0x79, 0x70, 0x65, 0x4b, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x10, 0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e, + 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( From 35b142fb74397af1bcd8fab14be71921102d7365 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Mon, 4 Dec 2023 16:30:31 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E6=96=B0=E6=89=8B=E6=8B=9B=E5=8B=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bin/json/game_bufflottery.json | 48 ++ bin/json/game_eventlottery.json | 55 ++ bin/json/game_global.json | 3 +- bin/json/game_guide.json | 12 +- bin/json/game_roomlottery.json | 44 + bin/json/game_stonebattle.json | 42 + bin/json/game_stoneboss.json | 5 + bin/json/game_stoneevent.json | 96 +++ bin/json/game_stoneroom.json | 72 ++ bin/json/game_stonestage.json | 181 ++++ comm/const.go | 3 - modules/hero/api_savecard.go | 22 +- modules/hero/api_selectcard.go | 44 +- modules/hero/api_selectdraw.go | 73 +- modules/hero/api_selectgetlist.go | 30 - modules/hero/model_select.go | 49 -- modules/hero/module.go | 2 - pb/errorcode.pb.go | 835 ++++++++++--------- pb/hero_db.pb.go | 325 +++----- pb/hero_msg.pb.go | 328 +++----- sys/configure/structs/Game.BuffEffectType.go | 1 + sys/configure/structs/Game.StoneStageData.go | 2 + sys/configure/structs/game.globalData.go | 2 + 23 files changed, 1264 insertions(+), 1010 deletions(-) delete mode 100644 modules/hero/api_selectgetlist.go delete mode 100644 modules/hero/model_select.go diff --git a/bin/json/game_bufflottery.json b/bin/json/game_bufflottery.json index 4374fdc34..ebe31d3c6 100644 --- a/bin/json/game_bufflottery.json +++ b/bin/json/game_bufflottery.json @@ -4582,5 +4582,53 @@ "GroupNum": 3, "BuffWt": 50, "TypeWt": 75 + }, + { + "Id": 582, + "GroupId": 900001, + "buffID": 770032111, + "GroupNum": 1, + "BuffWt": 50, + "TypeWt": 75 + }, + { + "Id": 583, + "GroupId": 900001, + "buffID": 770007111, + "GroupNum": 1, + "BuffWt": 50, + "TypeWt": 75 + }, + { + "Id": 584, + "GroupId": 900001, + "buffID": 770006111, + "GroupNum": 1, + "BuffWt": 50, + "TypeWt": 75 + }, + { + "Id": 585, + "GroupId": 900001, + "buffID": 770007111, + "GroupNum": 1, + "BuffWt": 50, + "TypeWt": 75 + }, + { + "Id": 586, + "GroupId": 900001, + "buffID": 770017111, + "GroupNum": 1, + "BuffWt": 50, + "TypeWt": 75 + }, + { + "Id": 587, + "GroupId": 900001, + "buffID": 770023111, + "GroupNum": 1, + "BuffWt": 50, + "TypeWt": 75 } ] \ No newline at end of file diff --git a/bin/json/game_eventlottery.json b/bin/json/game_eventlottery.json index b5100158e..a8e67cbdd 100644 --- a/bin/json/game_eventlottery.json +++ b/bin/json/game_eventlottery.json @@ -328,5 +328,60 @@ "EventID": 11000000, "SubGroupNum": 1, "EventWt": 1000 + }, + { + "Id": 31, + "GroupId": 12999000, + "GroupType": 2, + "SubGroupWt": 1000, + "SubGroupId": 1001, + "SubGroupType": 1, + "EventID": 12999000, + "SubGroupNum": 1, + "EventWt": 1000 + }, + { + "Id": 32, + "GroupId": 14999001, + "GroupType": 2, + "SubGroupWt": 1000, + "SubGroupId": 1001, + "SubGroupType": 1, + "EventID": 14999001, + "SubGroupNum": 1, + "EventWt": 1000 + }, + { + "Id": 33, + "GroupId": 14999002, + "GroupType": 2, + "SubGroupWt": 1000, + "SubGroupId": 1001, + "SubGroupType": 1, + "EventID": 14999002, + "SubGroupNum": 1, + "EventWt": 1000 + }, + { + "Id": 34, + "GroupId": 28999000, + "GroupType": 2, + "SubGroupWt": 1000, + "SubGroupId": 1001, + "SubGroupType": 1, + "EventID": 28999000, + "SubGroupNum": 1, + "EventWt": 1000 + }, + { + "Id": 35, + "GroupId": 17999000, + "GroupType": 2, + "SubGroupWt": 1000, + "SubGroupId": 1001, + "SubGroupType": 1, + "EventID": 17999001, + "SubGroupNum": 1, + "EventWt": 1000 } ] \ No newline at end of file diff --git a/bin/json/game_global.json b/bin/json/game_global.json index a4d0249b3..95aad2255 100644 --- a/bin/json/game_global.json +++ b/bin/json/game_global.json @@ -763,6 +763,7 @@ "t": "16010000", "n": 1 }, - "catchbugturn": 6 + "catchbugturn": 6, + "NewDrawcardAttempts_Nums": 30 } ] \ No newline at end of file diff --git a/bin/json/game_guide.json b/bin/json/game_guide.json index 3c26be5c8..61adc7090 100644 --- a/bin/json/game_guide.json +++ b/bin/json/game_guide.json @@ -1694,13 +1694,13 @@ { "id": 1000709, "group": 7, - "type": 3, + "type": 1, "startPar": "", "parameter": "", "interface": "", "condition": "", "followtj": "", - "followguide": 1000710, + "followguide": 0, "finger": [ "WorldPointDetailsPopup", "gotoBtn$" @@ -1725,8 +1725,8 @@ }, "speakerface": 0, "sound": "", - "mask": 0, - "lock": 0, + "mask": 1, + "lock": 1, "uishow": 0, "skiptime": 5000, "skip": 0, @@ -2501,7 +2501,7 @@ "parameter": "", "interface": "", "condition": "", - "followtj": "", + "followtj": "OpenTrainDragonsDevelop", "followguide": 1001103, "finger": [ "mainlineinfo", @@ -2543,7 +2543,7 @@ "parameter": "", "interface": "", "condition": "", - "followtj": "OpenTrainDragonsDevelop", + "followtj": "", "followguide": 0, "finger": [ "Traindragonsdevelop", diff --git a/bin/json/game_roomlottery.json b/bin/json/game_roomlottery.json index 95d4adb69..04bcfd028 100644 --- a/bin/json/game_roomlottery.json +++ b/bin/json/game_roomlottery.json @@ -1296,5 +1296,49 @@ "RoomID": 28181201, "SubGroupNum": 1, "RoomWt": 1000 + }, + { + "Id": 134, + "GroupId": 991200, + "GroupType": 2, + "SubGroupWt": 1000, + "SubGroupId": 1001, + "SubGroupType": 2, + "RoomID": 14999001, + "SubGroupNum": 1, + "RoomWt": 1000 + }, + { + "Id": 135, + "GroupId": 991400, + "GroupType": 2, + "SubGroupWt": 1000, + "SubGroupId": 1001, + "SubGroupType": 2, + "RoomID": 12999002, + "SubGroupNum": 1, + "RoomWt": 1000 + }, + { + "Id": 136, + "GroupId": 991201, + "GroupType": 2, + "SubGroupWt": 1000, + "SubGroupId": 1001, + "SubGroupType": 2, + "RoomID": 14999003, + "SubGroupNum": 1, + "RoomWt": 1000 + }, + { + "Id": 137, + "GroupId": 992800, + "GroupType": 2, + "SubGroupWt": 1000, + "SubGroupId": 1001, + "SubGroupType": 2, + "RoomID": 28999004, + "SubGroupNum": 1, + "RoomWt": 1000 } ] \ No newline at end of file diff --git a/bin/json/game_stonebattle.json b/bin/json/game_stonebattle.json index e6b1fbe4e..21b27567f 100644 --- a/bin/json/game_stonebattle.json +++ b/bin/json/game_stonebattle.json @@ -82,5 +82,47 @@ 500701 ], "RewardLottery": 21141101 + }, + { + "BattleStageId": 200101, + "EnemyShowIcon": 0, + "Atk": 0, + "Hp": 0, + "Def": 0, + "SpeedValue": 0, + "EffreValue": 0, + "BattleReadyID": 118, + "FormatList": [ + 720024 + ], + "RewardLottery": 21141101 + }, + { + "BattleStageId": 200301, + "EnemyShowIcon": 0, + "Atk": 0, + "Hp": 0, + "Def": 0, + "SpeedValue": 0, + "EffreValue": 0, + "BattleReadyID": 118, + "FormatList": [ + 720024 + ], + "RewardLottery": 21141101 + }, + { + "BattleStageId": 200401, + "EnemyShowIcon": 34004, + "Atk": 0, + "Hp": 0, + "Def": 0, + "SpeedValue": 0, + "EffreValue": 0, + "BattleReadyID": 118, + "FormatList": [ + 720025 + ], + "RewardLottery": 21141101 } ] \ No newline at end of file diff --git a/bin/json/game_stoneboss.json b/bin/json/game_stoneboss.json index 08f229ece..f45cc8852 100644 --- a/bin/json/game_stoneboss.json +++ b/bin/json/game_stoneboss.json @@ -3,5 +3,10 @@ "BossId": 28110501, "FriendlyBuffGroup": 300002, "EnemyBuffGroup": 300001 + }, + { + "BossId": 28200401, + "FriendlyBuffGroup": 300002, + "EnemyBuffGroup": 300001 } ] \ No newline at end of file diff --git a/bin/json/game_stoneevent.json b/bin/json/game_stoneevent.json index 2e19a5b55..07165cedc 100644 --- a/bin/json/game_stoneevent.json +++ b/bin/json/game_stoneevent.json @@ -1644,5 +1644,101 @@ "CostItem": [], "PostEvent": 0, "probability": 0 + }, + { + "EventId": 12999000, + "EventTitle": { + "key": "stonehenge_eventconfig_EventTitle_99", + "text": "触摸岩画" + }, + "EventType": 12, + "EventResource": "event_story", + "Value1": 100001, + "Value2": 0, + "Value3": 0, + "Value4": 0, + "CostItem": [], + "PostEvent": 0, + "probability": 0 + }, + { + "EventId": 14999001, + "EventTitle": { + "key": "stonehenge_eventconfig_EventTitle_100", + "text": "进入战斗" + }, + "EventType": 14, + "EventResource": "event_battle_51012", + "Value1": 200101, + "Value2": 0, + "Value3": 0, + "Value4": 0, + "CostItem": [], + "PostEvent": 900001, + "probability": 1000 + }, + { + "EventId": 14999002, + "EventTitle": { + "key": "stonehenge_eventconfig_EventTitle_101", + "text": "进入战斗" + }, + "EventType": 14, + "EventResource": "event_battle_51012", + "Value1": 200301, + "Value2": 0, + "Value3": 0, + "Value4": 0, + "CostItem": [], + "PostEvent": 900001, + "probability": 1000 + }, + { + "EventId": 28999000, + "EventTitle": { + "key": "stonehenge_eventconfig_EventTitle_102", + "text": "进入战斗" + }, + "EventType": 28, + "EventResource": "event_boss_1", + "Value1": 200401, + "Value2": 0, + "Value3": 0, + "Value4": 0, + "CostItem": [], + "PostEvent": 0, + "probability": 0 + }, + { + "EventId": 17999001, + "EventTitle": { + "key": "stonehenge_eventconfig_EventTitle_103", + "text": "拾取" + }, + "EventType": 17, + "EventResource": "event_rewardbox_2", + "Value1": 200, + "Value2": 5, + "Value3": 0, + "Value4": 0, + "CostItem": [], + "PostEvent": 25999001, + "probability": 1000 + }, + { + "EventId": 25999001, + "EventTitle": { + "key": "stonehenge_eventconfig_EventTitle_104", + "text": "" + }, + "EventType": 0, + "EventResource": "", + "Value1": 900001, + "Value2": 0, + "Value3": 0, + "Value4": 0, + "CostItem": [], + "PostEvent": 0, + "probability": 0 } ] \ No newline at end of file diff --git a/bin/json/game_stoneroom.json b/bin/json/game_stoneroom.json index 8afc8176d..181a19c6a 100644 --- a/bin/json/game_stoneroom.json +++ b/bin/json/game_stoneroom.json @@ -2114,5 +2114,77 @@ "Condition": [ 28 ] + }, + { + "RoomId": 14999001, + "RoomName": { + "key": "stonehenge_roomconfig_RoomName_120", + "text": "战斗" + }, + "SceneName": "StonehengeScene1", + "PortalName": "portal_1", + "EventrewardGroup": 17999000, + "EventBattleGroup": 14999001, + "EventStoryNpcGroup": 0, + "EventTreasureGroup": 0, + "EventStoreGroup": 0, + "BossEvent": 0, + "Condition": [ + 14 + ] + }, + { + "RoomId": 12999002, + "RoomName": { + "key": "stonehenge_roomconfig_RoomName_121", + "text": "剧情" + }, + "SceneName": "StonehengeScene3", + "PortalName": "portal_4", + "EventrewardGroup": 0, + "EventBattleGroup": 0, + "EventStoryNpcGroup": 12999000, + "EventTreasureGroup": 0, + "EventStoreGroup": 0, + "BossEvent": 0, + "Condition": [ + 12 + ] + }, + { + "RoomId": 14999003, + "RoomName": { + "key": "stonehenge_roomconfig_RoomName_122", + "text": "战斗" + }, + "SceneName": "StonehengeScene1", + "PortalName": "portal_1", + "EventrewardGroup": 17999000, + "EventBattleGroup": 14999001, + "EventStoryNpcGroup": 0, + "EventTreasureGroup": 0, + "EventStoreGroup": 0, + "BossEvent": 0, + "Condition": [ + 14 + ] + }, + { + "RoomId": 28999004, + "RoomName": { + "key": "stonehenge_roomconfig_RoomName_123", + "text": "首领" + }, + "SceneName": "StonehengeScene2", + "PortalName": "portal_3", + "EventrewardGroup": 0, + "EventBattleGroup": 0, + "EventStoryNpcGroup": 0, + "EventTreasureGroup": 0, + "EventStoreGroup": 0, + "BossEvent": 28110501, + "Condition": [ + 28 + ] } ] \ No newline at end of file diff --git a/bin/json/game_stonestage.json b/bin/json/game_stonestage.json index b01f0c4ca..3c411e696 100644 --- a/bin/json/game_stonestage.json +++ b/bin/json/game_stonestage.json @@ -1,6 +1,7 @@ [ { "Id": 7, + "StageType": 1, "StageId": 10011, "PreviouStage": 0, "StageName": { @@ -78,6 +79,7 @@ }, { "Id": 8, + "StageType": 1, "StageId": 10011, "PreviouStage": 0, "StageName": { @@ -144,6 +146,7 @@ }, { "Id": 9, + "StageType": 1, "StageId": 10011, "PreviouStage": 0, "StageName": { @@ -210,6 +213,7 @@ }, { "Id": 10, + "StageType": 1, "StageId": 10011, "PreviouStage": 0, "StageName": { @@ -276,6 +280,7 @@ }, { "Id": 11, + "StageType": 1, "StageId": 10011, "PreviouStage": 0, "StageName": { @@ -342,6 +347,7 @@ }, { "Id": 12, + "StageType": 1, "StageId": 10012, "PreviouStage": 10011, "StageName": { @@ -419,6 +425,7 @@ }, { "Id": 13, + "StageType": 1, "StageId": 10012, "PreviouStage": 10011, "StageName": { @@ -485,6 +492,7 @@ }, { "Id": 14, + "StageType": 1, "StageId": 10012, "PreviouStage": 10011, "StageName": { @@ -551,6 +559,7 @@ }, { "Id": 15, + "StageType": 1, "StageId": 10012, "PreviouStage": 10011, "StageName": { @@ -617,6 +626,7 @@ }, { "Id": 16, + "StageType": 1, "StageId": 10012, "PreviouStage": 10011, "StageName": { @@ -683,6 +693,7 @@ }, { "Id": 17, + "StageType": 1, "StageId": 10012, "PreviouStage": 10011, "StageName": { @@ -749,6 +760,7 @@ }, { "Id": 18, + "StageType": 1, "StageId": 10012, "PreviouStage": 10011, "StageName": { @@ -815,6 +827,7 @@ }, { "Id": 19, + "StageType": 1, "StageId": 10012, "PreviouStage": 10011, "StageName": { @@ -881,6 +894,7 @@ }, { "Id": 20, + "StageType": 1, "StageId": 10013, "PreviouStage": 10012, "StageName": { @@ -958,6 +972,7 @@ }, { "Id": 21, + "StageType": 1, "StageId": 10013, "PreviouStage": 10012, "StageName": { @@ -1024,6 +1039,7 @@ }, { "Id": 22, + "StageType": 1, "StageId": 10013, "PreviouStage": 10012, "StageName": { @@ -1090,6 +1106,7 @@ }, { "Id": 23, + "StageType": 1, "StageId": 10013, "PreviouStage": 10012, "StageName": { @@ -1156,6 +1173,7 @@ }, { "Id": 24, + "StageType": 1, "StageId": 10013, "PreviouStage": 10012, "StageName": { @@ -1222,6 +1240,7 @@ }, { "Id": 25, + "StageType": 1, "StageId": 10013, "PreviouStage": 10012, "StageName": { @@ -1288,6 +1307,7 @@ }, { "Id": 26, + "StageType": 1, "StageId": 10013, "PreviouStage": 10012, "StageName": { @@ -1354,6 +1374,7 @@ }, { "Id": 27, + "StageType": 1, "StageId": 10013, "PreviouStage": 10012, "StageName": { @@ -1420,6 +1441,7 @@ }, { "Id": 28, + "StageType": 1, "StageId": 10014, "PreviouStage": 10013, "StageName": { @@ -1497,6 +1519,7 @@ }, { "Id": 29, + "StageType": 1, "StageId": 10014, "PreviouStage": 10013, "StageName": { @@ -1563,6 +1586,7 @@ }, { "Id": 30, + "StageType": 1, "StageId": 10014, "PreviouStage": 10013, "StageName": { @@ -1629,6 +1653,7 @@ }, { "Id": 31, + "StageType": 1, "StageId": 10014, "PreviouStage": 10013, "StageName": { @@ -1695,6 +1720,7 @@ }, { "Id": 32, + "StageType": 1, "StageId": 10014, "PreviouStage": 10013, "StageName": { @@ -1761,6 +1787,7 @@ }, { "Id": 33, + "StageType": 1, "StageId": 10014, "PreviouStage": 10013, "StageName": { @@ -1827,6 +1854,7 @@ }, { "Id": 34, + "StageType": 1, "StageId": 10014, "PreviouStage": 10013, "StageName": { @@ -1893,6 +1921,7 @@ }, { "Id": 35, + "StageType": 1, "StageId": 10014, "PreviouStage": 10013, "StageName": { @@ -1959,6 +1988,7 @@ }, { "Id": 36, + "StageType": 1, "StageId": 10014, "PreviouStage": 10013, "StageName": { @@ -2025,6 +2055,7 @@ }, { "Id": 37, + "StageType": 1, "StageId": 10014, "PreviouStage": 10013, "StageName": { @@ -2091,6 +2122,7 @@ }, { "Id": 38, + "StageType": 1, "StageId": 10014, "PreviouStage": 10013, "StageName": { @@ -2157,6 +2189,7 @@ }, { "Id": 39, + "StageType": 1, "StageId": 10014, "PreviouStage": 10013, "StageName": { @@ -2223,6 +2256,7 @@ }, { "Id": 40, + "StageType": 1, "StageId": 10015, "PreviouStage": 10014, "StageName": { @@ -2300,6 +2334,7 @@ }, { "Id": 41, + "StageType": 1, "StageId": 10015, "PreviouStage": 10014, "StageName": { @@ -2366,6 +2401,7 @@ }, { "Id": 42, + "StageType": 1, "StageId": 10015, "PreviouStage": 10014, "StageName": { @@ -2432,6 +2468,7 @@ }, { "Id": 43, + "StageType": 1, "StageId": 10015, "PreviouStage": 10014, "StageName": { @@ -2498,6 +2535,7 @@ }, { "Id": 44, + "StageType": 1, "StageId": 10015, "PreviouStage": 10014, "StageName": { @@ -2564,6 +2602,7 @@ }, { "Id": 45, + "StageType": 1, "StageId": 10015, "PreviouStage": 10014, "StageName": { @@ -2630,6 +2669,7 @@ }, { "Id": 46, + "StageType": 1, "StageId": 10015, "PreviouStage": 10014, "StageName": { @@ -2696,6 +2736,7 @@ }, { "Id": 47, + "StageType": 1, "StageId": 10015, "PreviouStage": 10014, "StageName": { @@ -2762,6 +2803,7 @@ }, { "Id": 48, + "StageType": 1, "StageId": 10015, "PreviouStage": 10014, "StageName": { @@ -2828,6 +2870,7 @@ }, { "Id": 49, + "StageType": 1, "StageId": 10015, "PreviouStage": 10014, "StageName": { @@ -2894,6 +2937,7 @@ }, { "Id": 50, + "StageType": 1, "StageId": 10015, "PreviouStage": 10014, "StageName": { @@ -2960,6 +3004,7 @@ }, { "Id": 51, + "StageType": 1, "StageId": 10015, "PreviouStage": 10014, "StageName": { @@ -3026,6 +3071,7 @@ }, { "Id": 52, + "StageType": 1, "StageId": 10016, "PreviouStage": 10015, "StageName": { @@ -3103,6 +3149,7 @@ }, { "Id": 53, + "StageType": 1, "StageId": 10016, "PreviouStage": 10015, "StageName": { @@ -3169,6 +3216,7 @@ }, { "Id": 54, + "StageType": 1, "StageId": 10016, "PreviouStage": 10015, "StageName": { @@ -3235,6 +3283,7 @@ }, { "Id": 55, + "StageType": 1, "StageId": 10016, "PreviouStage": 10015, "StageName": { @@ -3301,6 +3350,7 @@ }, { "Id": 56, + "StageType": 1, "StageId": 10016, "PreviouStage": 10015, "StageName": { @@ -3367,6 +3417,7 @@ }, { "Id": 57, + "StageType": 1, "StageId": 10016, "PreviouStage": 10015, "StageName": { @@ -3433,6 +3484,7 @@ }, { "Id": 58, + "StageType": 1, "StageId": 10016, "PreviouStage": 10015, "StageName": { @@ -3499,6 +3551,7 @@ }, { "Id": 59, + "StageType": 1, "StageId": 10016, "PreviouStage": 10015, "StageName": { @@ -3565,6 +3618,7 @@ }, { "Id": 60, + "StageType": 1, "StageId": 10016, "PreviouStage": 10015, "StageName": { @@ -3631,6 +3685,7 @@ }, { "Id": 61, + "StageType": 1, "StageId": 10016, "PreviouStage": 10015, "StageName": { @@ -3697,6 +3752,7 @@ }, { "Id": 62, + "StageType": 1, "StageId": 10016, "PreviouStage": 10015, "StageName": { @@ -3763,6 +3819,7 @@ }, { "Id": 63, + "StageType": 1, "StageId": 10016, "PreviouStage": 10015, "StageName": { @@ -3829,6 +3886,7 @@ }, { "Id": 64, + "StageType": 1, "StageId": 10017, "PreviouStage": 10016, "StageName": { @@ -3906,6 +3964,7 @@ }, { "Id": 65, + "StageType": 1, "StageId": 10017, "PreviouStage": 10016, "StageName": { @@ -3972,6 +4031,7 @@ }, { "Id": 66, + "StageType": 1, "StageId": 10017, "PreviouStage": 10016, "StageName": { @@ -4038,6 +4098,7 @@ }, { "Id": 67, + "StageType": 1, "StageId": 10017, "PreviouStage": 10016, "StageName": { @@ -4104,6 +4165,7 @@ }, { "Id": 68, + "StageType": 1, "StageId": 10017, "PreviouStage": 10016, "StageName": { @@ -4170,6 +4232,7 @@ }, { "Id": 69, + "StageType": 1, "StageId": 10017, "PreviouStage": 10016, "StageName": { @@ -4236,6 +4299,7 @@ }, { "Id": 70, + "StageType": 1, "StageId": 10017, "PreviouStage": 10016, "StageName": { @@ -4302,6 +4366,7 @@ }, { "Id": 71, + "StageType": 1, "StageId": 10017, "PreviouStage": 10016, "StageName": { @@ -4368,6 +4433,7 @@ }, { "Id": 72, + "StageType": 1, "StageId": 10017, "PreviouStage": 10016, "StageName": { @@ -4434,6 +4500,7 @@ }, { "Id": 73, + "StageType": 1, "StageId": 10017, "PreviouStage": 10016, "StageName": { @@ -4500,6 +4567,7 @@ }, { "Id": 74, + "StageType": 1, "StageId": 10017, "PreviouStage": 10016, "StageName": { @@ -4566,6 +4634,7 @@ }, { "Id": 75, + "StageType": 1, "StageId": 10017, "PreviouStage": 10016, "StageName": { @@ -4632,6 +4701,7 @@ }, { "Id": 76, + "StageType": 1, "StageId": 10018, "PreviouStage": 10017, "StageName": { @@ -4709,6 +4779,7 @@ }, { "Id": 77, + "StageType": 1, "StageId": 10018, "PreviouStage": 10017, "StageName": { @@ -4775,6 +4846,7 @@ }, { "Id": 78, + "StageType": 1, "StageId": 10018, "PreviouStage": 10017, "StageName": { @@ -4841,6 +4913,7 @@ }, { "Id": 79, + "StageType": 1, "StageId": 10018, "PreviouStage": 10017, "StageName": { @@ -4907,6 +4980,7 @@ }, { "Id": 80, + "StageType": 1, "StageId": 10018, "PreviouStage": 10017, "StageName": { @@ -4973,6 +5047,7 @@ }, { "Id": 81, + "StageType": 1, "StageId": 10018, "PreviouStage": 10017, "StageName": { @@ -5039,6 +5114,7 @@ }, { "Id": 82, + "StageType": 1, "StageId": 10018, "PreviouStage": 10017, "StageName": { @@ -5105,6 +5181,7 @@ }, { "Id": 83, + "StageType": 1, "StageId": 10018, "PreviouStage": 10017, "StageName": { @@ -5171,6 +5248,7 @@ }, { "Id": 84, + "StageType": 1, "StageId": 10018, "PreviouStage": 10017, "StageName": { @@ -5237,6 +5315,7 @@ }, { "Id": 85, + "StageType": 1, "StageId": 10018, "PreviouStage": 10017, "StageName": { @@ -5303,6 +5382,7 @@ }, { "Id": 86, + "StageType": 1, "StageId": 10018, "PreviouStage": 10017, "StageName": { @@ -5369,6 +5449,7 @@ }, { "Id": 87, + "StageType": 1, "StageId": 10018, "PreviouStage": 10017, "StageName": { @@ -5432,5 +5513,105 @@ }, "ReferenceLevel": 0, "StageValue": 0 + }, + { + "Id": 88, + "StageType": 2, + "StageId": 20001, + "PreviouStage": 0, + "StageName": { + "key": "stonehenge_stageconfig_StageName_82", + "text": "新手引导关" + }, + "RoomId": 1, + "RoomGroup": 991200, + "PortalGroup": 991400, + "rewardpreview": [], + "TreasurePreview": [], + "FirstReward": [], + "WeeklyPointPreview": 0, + "WeeklyPoint": 0, + "TalentItem": { + "a": "item", + "t": "10000037", + "n": 0 + }, + "ReferenceLevel": 10, + "StageValue": 0 + }, + { + "Id": 89, + "StageType": 2, + "StageId": 20001, + "PreviouStage": 0, + "StageName": { + "key": "stonehenge_stageconfig_StageName_83", + "text": "新手引导关" + }, + "RoomId": 2, + "RoomGroup": 0, + "PortalGroup": 991201, + "rewardpreview": [], + "TreasurePreview": [], + "FirstReward": [], + "WeeklyPointPreview": 0, + "WeeklyPoint": 0, + "TalentItem": { + "a": "item", + "t": "10000037", + "n": 0 + }, + "ReferenceLevel": 0, + "StageValue": 0 + }, + { + "Id": 90, + "StageType": 2, + "StageId": 20001, + "PreviouStage": 0, + "StageName": { + "key": "stonehenge_stageconfig_StageName_84", + "text": "新手引导关" + }, + "RoomId": 3, + "RoomGroup": 0, + "PortalGroup": 992800, + "rewardpreview": [], + "TreasurePreview": [], + "FirstReward": [], + "WeeklyPointPreview": 0, + "WeeklyPoint": 0, + "TalentItem": { + "a": "item", + "t": "10000037", + "n": 0 + }, + "ReferenceLevel": 0, + "StageValue": 0 + }, + { + "Id": 91, + "StageType": 2, + "StageId": 20001, + "PreviouStage": 0, + "StageName": { + "key": "stonehenge_stageconfig_StageName_85", + "text": "新手引导关" + }, + "RoomId": 4, + "RoomGroup": 0, + "PortalGroup": 99999, + "rewardpreview": [], + "TreasurePreview": [], + "FirstReward": [], + "WeeklyPointPreview": 0, + "WeeklyPoint": 0, + "TalentItem": { + "a": "item", + "t": "10000037", + "n": 0 + }, + "ReferenceLevel": 0, + "StageValue": 0 } ] \ No newline at end of file diff --git a/comm/const.go b/comm/const.go index 2be395d1e..e91b49ac0 100644 --- a/comm/const.go +++ b/comm/const.go @@ -430,9 +430,6 @@ const ( TableWhackamole = "whackamole" // 猴拳 TableMonkey = "monkey" - - // 新手招募 - TableHeroSelect = "heroselect" ) // RPC服务接口定义处 diff --git a/modules/hero/api_savecard.go b/modules/hero/api_savecard.go index f937bbc8e..26f367988 100644 --- a/modules/hero/api_savecard.go +++ b/modules/hero/api_savecard.go @@ -19,19 +19,11 @@ func (this *apiComp) SaveCardCheck(session comm.IUserSession, req *pb.HeroSaveCa func (this *apiComp) SaveCard(session comm.IUserSession, req *pb.HeroSaveCardReq) (errdata *pb.ErrorData) { var ( err error - result *pb.DBSelectDraw update map[string]interface{} heroRecord *pb.DBHeroRecord ) update = make(map[string]interface{}) - if result, err = this.module.modelSelect.GetDrawSelectData(session.GetUserId()); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } + if heroRecord, err = this.module.modelRecord.GetHeroRecord(session.GetUserId()); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, @@ -49,13 +41,13 @@ func (this *apiComp) SaveCard(session comm.IUserSession, req *pb.HeroSaveCardReq } if req.Index == 1 { - result.Rst1 = result.Cur - update["rst1"] = result.Rst1 + heroRecord.Rst1 = heroRecord.Cur + update["rst1"] = heroRecord.Rst1 } else if req.Index == 2 { - result.Rst2 = result.Cur - update["rst2"] = result.Rst2 + heroRecord.Rst2 = heroRecord.Cur + update["rst2"] = heroRecord.Rst2 } - if err = this.module.modelSelect.ChangeHeroSelectData(session.GetUserId(), update); err != nil { + if err = this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), update); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, Title: pb.ErrorCode_DBError.ToString(), @@ -64,7 +56,7 @@ func (this *apiComp) SaveCard(session comm.IUserSession, req *pb.HeroSaveCardReq return } session.SendMsg(string(this.module.GetType()), "savecard", &pb.HeroSaveCardResp{ - Data: result, + Record: heroRecord, }) return } diff --git a/modules/hero/api_selectcard.go b/modules/hero/api_selectcard.go index 91f11c3d4..8dd288379 100644 --- a/modules/hero/api_selectcard.go +++ b/modules/hero/api_selectcard.go @@ -20,20 +20,11 @@ func (this *apiComp) SelectCardCheck(session comm.IUserSession, req *pb.HeroSele func (this *apiComp) SelectCard(session comm.IUserSession, req *pb.HeroSelectCardReq) (errdata *pb.ErrorData) { var ( err error - result *pb.DBSelectDraw szAtno []*pb.AtnoData curSzCard []string heroRecord *pb.DBHeroRecord ) - if result, err = this.module.modelSelect.GetDrawSelectData(session.GetUserId()); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } if heroRecord, err = this.module.modelRecord.GetHeroRecord(session.GetUserId()); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, @@ -51,11 +42,11 @@ func (this *apiComp) SelectCard(session comm.IUserSession, req *pb.HeroSelectCar } if req.Index == 0 { - curSzCard = result.Cur + curSzCard = heroRecord.Cur } else if req.Index == 1 { - curSzCard = result.Rst1 + curSzCard = heroRecord.Rst1 } else { - curSzCard = result.Rst2 + curSzCard = heroRecord.Rst2 } if len(curSzCard) == 0 { errdata = &pb.ErrorData{ @@ -90,8 +81,16 @@ func (this *apiComp) SelectCard(session comm.IUserSession, req *pb.HeroSelectCar szAtno = append(szAtno, &pb.AtnoData{Atno: atno}) } } + + heroRecord.Newcomplete = true + heroRecord.Cur = []string{} // 清空数据 + heroRecord.Rst1 = []string{} // 清空数据 + heroRecord.Rst2 = []string{} // 清空数据 if err = this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), map[string]interface{}{ "newcomplete": heroRecord.Newcomplete, + "cur": heroRecord.Cur, + "rst1": heroRecord.Rst1, + "rst2": heroRecord.Rst2, }); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, @@ -100,26 +99,9 @@ func (this *apiComp) SelectCard(session comm.IUserSession, req *pb.HeroSelectCar } return } - //result.Complete = true - result.Cur = []string{} // 清空数据 - result.Rst1 = []string{} // 清空数据 - result.Rst2 = []string{} // 清空数据 - if err = this.module.modelSelect.ChangeHeroSelectData(session.GetUserId(), map[string]interface{}{ - //"complete": result.Complete, - "cur": result.Cur, - "rst1": result.Rst1, - "rst2": result.Rst2, - }); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } session.SendMsg(string(this.module.GetType()), "selectcard", &pb.HeroSelectCardResp{ - Data: result, - Atno: szAtno, + Record: heroRecord, + Atno: szAtno, }) return } diff --git a/modules/hero/api_selectdraw.go b/modules/hero/api_selectdraw.go index 8fd271856..4da0848a0 100644 --- a/modules/hero/api_selectdraw.go +++ b/modules/hero/api_selectdraw.go @@ -1,6 +1,7 @@ package hero import ( + "fmt" "go_dreamfactory/comm" "go_dreamfactory/pb" cfg "go_dreamfactory/sys/configure/structs" @@ -14,19 +15,23 @@ func (this *apiComp) SelectDrawCheck(session comm.IUserSession, req *pb.HeroSele func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDrawReq) (errdata *pb.ErrorData) { var ( err error - result *pb.DBSelectDraw drawType int32 heroRecord *pb.DBHeroRecord + cfgGlobal *cfg.GameGlobalData // 全局配置 + + szCards []string // 最终抽到的卡牌 + drawCount int32 // 抽卡次数 + costRes []*cfg.Gameatn // 消耗 + star4Count int32 // 10连抽4星数量 + star5Count int32 // 10连抽5星数量 + strPool []string // 10连跨多个卡池情况 + update map[string]interface{} + drawConf *cfg.GameDrawPoolData + dCount int32 + IsBaodiPool bool // 是否是保底卡池 + appointmap map[int32]string // 指定次数抽卡到指定卡池 ) - if result, err = this.module.modelSelect.GetDrawSelectData(session.GetUserId()); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } if heroRecord, err = this.module.modelRecord.GetHeroRecord(session.GetUserId()); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, @@ -42,23 +47,24 @@ func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDra } return } - var ( - szCards []string // 最终抽到的卡牌 - drawCount int32 // 抽卡次数 + cfgGlobal = this.module.ModuleTools.GetGlobalConf() // 读取抽卡配置文件 + if cfgGlobal == nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_ConfigNoFound, + Title: pb.ErrorCode_ConfigNoFound.ToString(), + Message: fmt.Sprintf("GetGlobalConf not found"), + } + return + } - costRes []*cfg.Gameatn // 消耗 - star4Count int32 // 10连抽4星数量 - star5Count int32 // 10连抽5星数量 - cfgGlobal *cfg.GameGlobalData // 全局配置 - - strPool []string // 10连跨多个卡池情况 - update map[string]interface{} - drawConf *cfg.GameDrawPoolData - dCount int32 - IsBaodiPool bool // 是否是保底卡池 - appointmap map[int32]string // 指定次数抽卡到指定卡池 - - ) + if cfgGlobal.NewDrawcardAttemptsNums >= heroRecord.Selectcount { // 次数校验 + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_HeroSelectMaxCount, + Title: pb.ErrorCode_HeroSelectMaxCount.ToString(), + Message: err.Error(), + } + return + } drawType = comm.DrawCardTypeNew // 抽卡类型 1 drawCount = 10 // 10连 update = make(map[string]interface{}) @@ -83,11 +89,6 @@ func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDra //////////////////////////////////////////////////////// - cfgGlobal = this.module.ModuleTools.GetGlobalConf() // 读取抽卡配置文件 - if cfgGlobal == nil { - return - } - if true { // 普通卡池抽卡 ////// 获取消耗 if costRes, errdata = this.module.modelHero.CheckDrawCardRes(session, drawConf, 0, drawCount); errdata != nil { @@ -210,6 +211,11 @@ func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDra update["daycount"] = heroRecord.Daycount update["baodi4"] = heroRecord.Baodi4 update["baodi5"] = heroRecord.Baodi5 + // 抽卡次数+1 + heroRecord.Selectcount += 1 + heroRecord.Cur = szCards + update["selectcount"] = heroRecord.Selectcount + update["cur"] = heroRecord.Cur if err = this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), update); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, @@ -219,13 +225,6 @@ func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDra return } - // 抽卡次数+1 - result.Count += 1 - result.Cur = szCards - this.module.modelSelect.Change(session.GetUserId(), map[string]interface{}{ - "count": result.Count, - "cur": result.Cur, - }) session.SendMsg(string(this.module.GetType()), "selectdraw", &pb.HeroSelectDrawResp{}) return } diff --git a/modules/hero/api_selectgetlist.go b/modules/hero/api_selectgetlist.go deleted file mode 100644 index 1e5972e9f..000000000 --- a/modules/hero/api_selectgetlist.go +++ /dev/null @@ -1,30 +0,0 @@ -package hero - -import ( - "go_dreamfactory/comm" - "go_dreamfactory/pb" -) - -//参数校验 -func (this *apiComp) SelectGetListCheck(session comm.IUserSession, req *pb.HeroSelectGetListReq) (errdata *pb.ErrorData) { - return -} - -func (this *apiComp) SelectGetList(session comm.IUserSession, req *pb.HeroSelectGetListReq) (errdata *pb.ErrorData) { - var ( - err error - list *pb.DBSelectDraw - ) - if list, err = this.module.modelSelect.GetDrawSelectData(session.GetUserId()); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } - session.SendMsg(string(this.module.GetType()), "selectgetlist", &pb.HeroSelectGetListResp{ - Data: list, - }) - return -} diff --git a/modules/hero/model_select.go b/modules/hero/model_select.go deleted file mode 100644 index 8de78cc81..000000000 --- a/modules/hero/model_select.go +++ /dev/null @@ -1,49 +0,0 @@ -package hero - -import ( - "go_dreamfactory/comm" - "go_dreamfactory/lego/core" - "go_dreamfactory/modules" - "go_dreamfactory/pb" - - "go.mongodb.org/mongo-driver/bson/primitive" - "go.mongodb.org/mongo-driver/mongo" - "go.mongodb.org/mongo-driver/x/bsonx" -) - -// 新手招募 -type ModelSelect struct { - modules.MCompModel -} - -func (this *ModelSelect) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { - this.TableName = comm.TableHeroSelect - err = this.MCompModel.Init(service, module, comp, options) - this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{ - Keys: bsonx.Doc{{Key: "uid", Value: bsonx.Int32(1)}}, - }) - return -} - -func (this *ModelSelect) GetDrawSelectData(uid string) (result *pb.DBSelectDraw, err error) { - result = &pb.DBSelectDraw{} - if err = this.Get(uid, result); err != nil { - if mongo.ErrNoDocuments == err { // 创建一条新的数据 - result.Id = primitive.NewObjectID().Hex() - result.Uid = uid - err = this.Add(uid, result) - } - return - } - - err = nil - return result, err -} - -func (this *ModelSelect) ChangeHeroSelectData(uid string, value map[string]interface{}) (err error) { - if len(value) == 0 { - return nil - } - - return this.Change(uid, value) -} diff --git a/modules/hero/module.go b/modules/hero/module.go index 29b2052aa..59858ed4c 100644 --- a/modules/hero/module.go +++ b/modules/hero/module.go @@ -34,7 +34,6 @@ type Hero struct { chat comm.IChat passon comm.IPasson mail comm.Imail - modelSelect *ModelSelect } // 模块名 @@ -59,7 +58,6 @@ func (this *Hero) OnInstallComp() { this.modelRecord = this.RegisterComp(new(ModelRecord)).(*ModelRecord) this.modelTalent = this.RegisterComp(new(ModelTalent)).(*ModelTalent) this.configure = this.RegisterComp(new(configureComp)).(*configureComp) - this.modelSelect = this.RegisterComp(new(ModelSelect)).(*ModelSelect) } func (this *Hero) Start() (err error) { if err = this.ModuleBase.Start(); err != nil { diff --git a/pb/errorcode.pb.go b/pb/errorcode.pb.go index 7cb3f06df..04928086b 100644 --- a/pb/errorcode.pb.go +++ b/pb/errorcode.pb.go @@ -161,6 +161,7 @@ const ( ErrorCode_HeroDrawCD ErrorCode = 1330 // 抽卡cd 中 ErrorCode_HeroDrawCountErr ErrorCode = 1331 // 抽卡次数不达标 ErrorCode_HeroSelectDrawComplete ErrorCode = 1332 // 新手抽卡已完成 + ErrorCode_HeroSelectMaxCount ErrorCode = 1333 // 新手抽卡达到上限 // equipment ErrorCode_EquipmentOnFoundEquipment ErrorCode = 1400 // 未找到武器 ErrorCode_EquipmentLvlimitReached ErrorCode = 1401 // 武器等级已达上限 @@ -600,6 +601,7 @@ var ( 1330: "HeroDrawCD", 1331: "HeroDrawCountErr", 1332: "HeroSelectDrawComplete", + 1333: "HeroSelectMaxCount", 1400: "EquipmentOnFoundEquipment", 1401: "EquipmentLvlimitReached", 1402: "EquipmentIsWorn", @@ -998,6 +1000,7 @@ var ( "HeroDrawCD": 1330, "HeroDrawCountErr": 1331, "HeroSelectDrawComplete": 1332, + "HeroSelectMaxCount": 1333, "EquipmentOnFoundEquipment": 1400, "EquipmentLvlimitReached": 1401, "EquipmentIsWorn": 1402, @@ -1297,7 +1300,7 @@ var File_errorcode_proto protoreflect.FileDescriptor var file_errorcode_proto_rawDesc = []byte{ 0x0a, 0x0f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2a, 0xd6, 0x49, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, + 0x6f, 0x2a, 0xef, 0x49, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x45, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, @@ -1474,420 +1477,422 @@ var file_errorcode_proto_rawDesc = []byte{ 0x77, 0x43, 0x44, 0x10, 0xb2, 0x0a, 0x12, 0x15, 0x0a, 0x10, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x72, 0x72, 0x10, 0xb3, 0x0a, 0x12, 0x1b, 0x0a, 0x16, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 0x43, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xb4, 0x0a, 0x12, 0x1e, 0x0a, 0x19, 0x45, 0x71, - 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x4f, 0x6e, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x45, 0x71, - 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xf8, 0x0a, 0x12, 0x1c, 0x0a, 0x17, 0x45, 0x71, - 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x76, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x65, - 0x61, 0x63, 0x68, 0x65, 0x64, 0x10, 0xf9, 0x0a, 0x12, 0x14, 0x0a, 0x0f, 0x45, 0x71, 0x75, 0x69, - 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x73, 0x57, 0x6f, 0x72, 0x6e, 0x10, 0xfa, 0x0a, 0x12, 0x17, - 0x0a, 0x12, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x43, 0x61, 0x6e, - 0x53, 0x65, 0x6c, 0x6c, 0x10, 0xfb, 0x0a, 0x12, 0x1b, 0x0a, 0x16, 0x45, 0x71, 0x75, 0x69, 0x70, - 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, - 0x64, 0x10, 0xfc, 0x0a, 0x12, 0x1b, 0x0a, 0x16, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, - 0x4e, 0x6f, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x10, 0xdc, - 0x0b, 0x12, 0x15, 0x0a, 0x10, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x44, 0x46, - 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xdd, 0x0b, 0x12, 0x15, 0x0a, 0x10, 0x4d, 0x61, 0x69, 0x6e, - 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xde, 0x0b, 0x12, - 0x18, 0x0a, 0x13, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x72, 0x65, 0x4e, 0x6f, - 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xdf, 0x0b, 0x12, 0x19, 0x0a, 0x14, 0x4d, 0x61, 0x69, - 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, - 0x64, 0x10, 0xe0, 0x0b, 0x12, 0x1b, 0x0a, 0x16, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, - 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xe1, - 0x0b, 0x12, 0x19, 0x0a, 0x14, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, 0x45, - 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x53, 0x74, 0x61, 0x72, 0x10, 0xe2, 0x0b, 0x12, 0x17, 0x0a, 0x12, - 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x68, 0x6f, 0x70, 0x55, 0x6e, 0x6c, 0x6f, - 0x63, 0x6b, 0x10, 0xe3, 0x0b, 0x12, 0x18, 0x0a, 0x13, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, - 0x65, 0x42, 0x75, 0x79, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe4, 0x0b, 0x12, - 0x0d, 0x0a, 0x08, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x6e, 0x69, 0x74, 0x10, 0xc0, 0x0c, 0x12, 0x0e, - 0x0a, 0x09, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x65, 0x74, 0x10, 0xc1, 0x0c, 0x12, 0x0f, - 0x0a, 0x0a, 0x54, 0x61, 0x73, 0x6b, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x10, 0xc2, 0x0c, 0x12, - 0x11, 0x0a, 0x0c, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, - 0xc3, 0x0c, 0x12, 0x13, 0x0a, 0x0e, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x49, 0x6e, 0x69, 0x74, 0x10, 0xc4, 0x0c, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x61, 0x73, 0x6b, 0x41, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x4e, 0x6f, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xc5, 0x0c, 0x12, - 0x17, 0x0a, 0x12, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4e, 0x6f, 0x65, - 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xc6, 0x0c, 0x12, 0x13, 0x0a, 0x0e, 0x54, 0x61, 0x73, 0x6b, - 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xc7, 0x0c, 0x12, 0x11, 0x0a, - 0x0c, 0x54, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xc8, 0x0c, - 0x12, 0x11, 0x0a, 0x0c, 0x54, 0x61, 0x73, 0x6b, 0x54, 0x61, 0x67, 0x45, 0x6d, 0x70, 0x74, 0x79, - 0x10, 0xc9, 0x0c, 0x12, 0x10, 0x0a, 0x0b, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x45, 0x6d, 0x70, - 0x74, 0x79, 0x10, 0xca, 0x0c, 0x12, 0x11, 0x0a, 0x0c, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x74, - 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xcb, 0x0c, 0x12, 0x17, 0x0a, 0x12, 0x54, 0x61, 0x73, 0x6b, - 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xcc, - 0x0c, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x68, 0x6f, 0x70, 0x47, 0x6f, 0x6f, 0x64, 0x73, 0x49, 0x73, - 0x53, 0x6f, 0x6c, 0x64, 0x4f, 0x75, 0x74, 0x10, 0xa4, 0x0d, 0x12, 0x1c, 0x0a, 0x17, 0x53, 0x68, - 0x6f, 0x70, 0x4e, 0x6f, 0x53, 0x75, 0x72, 0x70, 0x6c, 0x75, 0x73, 0x52, 0x65, 0x66, 0x72, 0x65, - 0x73, 0x68, 0x4e, 0x75, 0x6d, 0x10, 0xa5, 0x0d, 0x12, 0x0c, 0x0a, 0x07, 0x4d, 0x61, 0x69, 0x6c, - 0x45, 0x72, 0x72, 0x10, 0x88, 0x0e, 0x12, 0x13, 0x0a, 0x0e, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, - 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xec, 0x0e, 0x12, 0x12, 0x0a, 0x0d, 0x50, - 0x61, 0x67, 0x6f, 0x64, 0x61, 0x4c, 0x65, 0x76, 0x6c, 0x45, 0x72, 0x72, 0x10, 0xed, 0x0e, 0x12, - 0x17, 0x0a, 0x12, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, 0x61, - 0x72, 0x64, 0x45, 0x72, 0x72, 0x10, 0xee, 0x0e, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x61, 0x67, 0x6f, - 0x64, 0x61, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x10, 0xef, - 0x0e, 0x12, 0x11, 0x0a, 0x0c, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x55, 0x6e, 0x6c, 0x6f, 0x63, - 0x6b, 0x10, 0xf0, 0x0e, 0x12, 0x14, 0x0a, 0x0f, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x54, 0x69, - 0x6d, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xf1, 0x0e, 0x12, 0x13, 0x0a, 0x0e, 0x50, 0x61, - 0x67, 0x6f, 0x64, 0x61, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xf2, 0x0e, 0x12, - 0x1b, 0x0a, 0x16, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x4e, 0x6f, - 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0xd0, 0x0f, 0x12, 0x15, 0x0a, 0x10, - 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x49, 0x6e, 0x55, 0x73, 0x65, - 0x10, 0xd1, 0x0f, 0x12, 0x18, 0x0a, 0x13, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, - 0x6c, 0x6c, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0xd2, 0x0f, 0x12, 0x1a, 0x0a, - 0x15, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x4e, 0x6f, 0x55, 0x6e, - 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0xd3, 0x0f, 0x12, 0x1a, 0x0a, 0x15, 0x4d, 0x61, 0x72, - 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x10, 0xd4, 0x0f, 0x12, 0x1d, 0x0a, 0x18, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, - 0x68, 0x61, 0x6c, 0x6c, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x4e, 0x6f, 0x52, 0x65, 0x77, 0x61, 0x72, - 0x64, 0x10, 0xd5, 0x0f, 0x12, 0x19, 0x0a, 0x14, 0x47, 0x6f, 0x75, 0x72, 0x6d, 0x65, 0x74, 0x4d, - 0x6f, 0x72, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x10, 0xb5, 0x10, 0x12, - 0x16, 0x0a, 0x11, 0x47, 0x6f, 0x75, 0x72, 0x6d, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4d, - 0x61, 0x78, 0x4c, 0x76, 0x10, 0xb6, 0x10, 0x12, 0x12, 0x0a, 0x0d, 0x52, 0x74, 0x61, 0x73, 0x6b, - 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0x99, 0x11, 0x12, 0x14, 0x0a, 0x0f, 0x52, - 0x74, 0x61, 0x73, 0x6b, 0x55, 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0x9a, - 0x11, 0x12, 0x11, 0x0a, 0x0c, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x52, 0x74, 0x61, 0x73, - 0x6b, 0x10, 0x9b, 0x11, 0x12, 0x12, 0x0a, 0x0d, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x65, 0x64, 0x10, 0x9c, 0x11, 0x12, 0x15, 0x0a, 0x10, 0x52, 0x74, 0x61, 0x73, - 0x6b, 0x50, 0x72, 0x65, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x10, 0x9d, 0x11, 0x12, - 0x16, 0x0a, 0x11, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x4e, 0x6f, 0x52, - 0x65, 0x61, 0x63, 0x68, 0x10, 0x9e, 0x11, 0x12, 0x13, 0x0a, 0x0e, 0x52, 0x74, 0x61, 0x73, 0x6b, - 0x4e, 0x6f, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x6e, 0x65, 0x10, 0x9f, 0x11, 0x12, 0x16, 0x0a, 0x11, - 0x52, 0x74, 0x61, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, - 0x64, 0x10, 0xa0, 0x11, 0x12, 0x10, 0x0a, 0x0b, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x4c, 0x76, - 0x45, 0x72, 0x72, 0x10, 0xfd, 0x11, 0x12, 0x13, 0x0a, 0x0e, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, - 0x42, 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, 0x10, 0xfe, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x56, - 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x75, 0x79, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x10, 0xff, 0x11, 0x12, 0x1c, 0x0a, 0x17, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x78, - 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x80, - 0x12, 0x12, 0x15, 0x0a, 0x10, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x67, 0x65, - 0x50, 0x73, 0x45, 0x72, 0x72, 0x10, 0x81, 0x12, 0x12, 0x1a, 0x0a, 0x15, 0x4d, 0x6f, 0x6f, 0x6e, - 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x48, 0x61, 0x73, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, - 0x64, 0x10, 0xe1, 0x12, 0x12, 0x16, 0x0a, 0x11, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, - 0x61, 0x73, 0x79, 0x4a, 0x6f, 0x69, 0x6e, 0x55, 0x70, 0x10, 0xe2, 0x12, 0x12, 0x16, 0x0a, 0x11, - 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x44, 0x61, 0x72, 0x65, 0x55, - 0x70, 0x10, 0xe3, 0x12, 0x12, 0x1b, 0x0a, 0x16, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, - 0x61, 0x73, 0x79, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x45, 0x6e, 0x64, 0x10, 0xe4, - 0x12, 0x12, 0x1b, 0x0a, 0x16, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, - 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x57, 0x69, 0x6e, 0x10, 0xe5, 0x12, 0x12, 0x16, - 0x0a, 0x11, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4e, 0x6f, 0x4a, - 0x6f, 0x69, 0x6e, 0x10, 0xe6, 0x12, 0x12, 0x20, 0x0a, 0x1b, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, - 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x62, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x73, 0x10, 0xe7, 0x12, 0x12, 0x18, 0x0a, 0x13, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x10, - 0xc5, 0x13, 0x12, 0x1a, 0x0a, 0x15, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, - 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xa9, 0x14, 0x12, 0x17, - 0x0a, 0x12, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4e, 0x6f, 0x52, 0x65, 0x63, - 0x65, 0x69, 0x76, 0x65, 0x10, 0xaa, 0x14, 0x12, 0x1f, 0x0a, 0x1a, 0x4c, 0x69, 0x6e, 0x65, 0x73, - 0x74, 0x6f, 0x72, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, - 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0xab, 0x14, 0x12, 0x1b, 0x0a, 0x16, 0x4c, 0x69, 0x6e, 0x65, - 0x73, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x4e, 0x6f, 0x4f, 0x70, - 0x65, 0x6e, 0x10, 0xac, 0x14, 0x12, 0x1b, 0x0a, 0x16, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x50, 0x72, 0x65, 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, - 0xad, 0x14, 0x12, 0x11, 0x0a, 0x0c, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x4c, 0x76, 0x45, - 0x72, 0x72, 0x10, 0x8d, 0x15, 0x12, 0x14, 0x0a, 0x0f, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, - 0x42, 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, 0x10, 0x8e, 0x15, 0x12, 0x17, 0x0a, 0x12, 0x48, - 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x42, 0x75, 0x79, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x10, 0x8f, 0x15, 0x12, 0x1d, 0x0a, 0x18, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x4d, - 0x61, 0x78, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x10, 0x90, 0x15, 0x12, 0x1c, 0x0a, 0x17, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x4e, 0x6f, - 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x91, - 0x15, 0x12, 0x11, 0x0a, 0x0c, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x4c, 0x76, 0x45, 0x72, - 0x72, 0x10, 0x97, 0x15, 0x12, 0x14, 0x0a, 0x0f, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x42, - 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, 0x10, 0x98, 0x15, 0x12, 0x17, 0x0a, 0x12, 0x45, 0x6e, - 0x63, 0x68, 0x61, 0x6e, 0x74, 0x42, 0x75, 0x79, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x10, 0x99, 0x15, 0x12, 0x1d, 0x0a, 0x18, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x4d, 0x61, - 0x78, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, - 0x9a, 0x15, 0x12, 0x1c, 0x0a, 0x17, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x4e, 0x6f, 0x43, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x9b, 0x15, - 0x12, 0x11, 0x0a, 0x0c, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x4d, 0x61, 0x78, 0x4c, 0x76, - 0x10, 0xf1, 0x15, 0x12, 0x12, 0x0a, 0x0d, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x4e, 0x6f, - 0x44, 0x61, 0x74, 0x61, 0x10, 0xf2, 0x15, 0x12, 0x16, 0x0a, 0x11, 0x4c, 0x69, 0x62, 0x72, 0x61, - 0x72, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xf3, 0x15, 0x12, - 0x12, 0x0a, 0x0d, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x10, 0xf4, 0x15, 0x12, 0x14, 0x0a, 0x0f, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x4c, 0x76, - 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xf5, 0x15, 0x12, 0x1d, 0x0a, 0x18, 0x4c, 0x69, 0x62, - 0x72, 0x61, 0x72, 0x79, 0x46, 0x65, 0x74, 0x74, 0x65, 0x72, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, - 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xf6, 0x15, 0x12, 0x1d, 0x0a, 0x18, 0x4c, 0x69, 0x62, 0x72, - 0x61, 0x72, 0x79, 0x50, 0x72, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, - 0x73, 0x68, 0x65, 0x64, 0x10, 0xf7, 0x15, 0x12, 0x18, 0x0a, 0x13, 0x4c, 0x69, 0x62, 0x72, 0x61, - 0x72, 0x79, 0x47, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xf8, - 0x15, 0x12, 0x1b, 0x0a, 0x16, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd5, 0x16, 0x12, 0x10, - 0x0a, 0x0b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x57, 0x69, 0x6e, 0x10, 0xd6, 0x16, - 0x12, 0x17, 0x0a, 0x12, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd7, 0x16, 0x12, 0x16, 0x0a, 0x11, 0x42, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x43, 0x6d, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd8, - 0x16, 0x12, 0x12, 0x0a, 0x0d, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4f, - 0x66, 0x66, 0x10, 0xd9, 0x16, 0x12, 0x1e, 0x0a, 0x19, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, - 0x61, 0x70, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, - 0x65, 0x64, 0x10, 0xda, 0x16, 0x12, 0x11, 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, - 0x6f, 0x4b, 0x65, 0x65, 0x70, 0x10, 0xdb, 0x16, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, - 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xb8, 0x17, 0x12, 0x11, 0x0a, - 0x0c, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x64, 0x64, 0x65, 0x64, 0x10, 0xb9, 0x17, - 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x44, 0x69, 0x61, 0x6d, 0x6f, - 0x6e, 0x64, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xba, 0x17, 0x12, 0x14, 0x0a, - 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x10, 0xbb, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, - 0x52, 0x69, 0x67, 0x68, 0x74, 0x10, 0xbc, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, - 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x41, 0x64, 0x64, 0x65, 0x64, 0x10, 0xbd, 0x17, 0x12, 0x13, 0x0a, - 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x10, - 0xbe, 0x17, 0x12, 0x10, 0x0a, 0x0b, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x51, 0x75, 0x69, - 0x74, 0x10, 0xbf, 0x17, 0x12, 0x11, 0x0a, 0x0c, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, - 0x67, 0x72, 0x65, 0x65, 0x10, 0xc0, 0x17, 0x12, 0x12, 0x0a, 0x0d, 0x53, 0x6f, 0x63, 0x69, 0x61, - 0x74, 0x79, 0x52, 0x65, 0x66, 0x75, 0x73, 0x65, 0x10, 0xc1, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, - 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4c, 0x6f, 0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x10, - 0xc2, 0x17, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4d, 0x61, 0x73, - 0x74, 0x65, 0x72, 0x4e, 0x6f, 0x44, 0x69, 0x73, 0x73, 0x10, 0xc3, 0x17, 0x12, 0x16, 0x0a, 0x11, - 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x4a, 0x6f, - 0x62, 0x10, 0xc4, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, - 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x10, 0xc5, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x41, 0x63, 0x63, 0x75, 0x73, 0x65, 0x10, 0xc6, 0x17, 0x12, - 0x10, 0x0a, 0x0b, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x69, 0x67, 0x6e, 0x10, 0xc7, - 0x17, 0x12, 0x12, 0x0a, 0x0d, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x69, 0x67, 0x6e, - 0x65, 0x64, 0x10, 0xc8, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, - 0x43, 0x44, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0xc9, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, - 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4d, 0x61, 0x78, 0x10, 0xca, 0x17, - 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x65, 0x6c, 0x66, 0x53, - 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x10, 0xcb, 0x17, 0x12, 0x1c, 0x0a, 0x17, 0x53, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 0x10, 0xcc, 0x17, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6f, 0x63, 0x69, 0x61, - 0x74, 0x79, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, - 0x10, 0xcd, 0x17, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x52, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0xce, 0x17, 0x12, 0x14, - 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x10, 0xcf, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x42, - 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x54, 0x6f, 0x10, 0xd1, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, - 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x10, 0xd2, 0x17, 0x12, - 0x1a, 0x0a, 0x15, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, 0x79, 0x4c, 0x76, - 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xd3, 0x17, 0x12, 0x1a, 0x0a, 0x15, 0x53, - 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xd4, 0x17, 0x12, 0x1c, 0x0a, 0x17, 0x53, 0x6f, 0x63, 0x69, 0x61, - 0x74, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, - 0x67, 0x68, 0x10, 0xd5, 0x17, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, - 0x41, 0x63, 0x69, 0x74, 0x76, 0x69, 0x74, 0x79, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, - 0xd6, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x44, 0x69, 0x73, - 0x6d, 0x69, 0x73, 0x73, 0x65, 0x64, 0x10, 0xd7, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x45, 0x78, 0x69, 0x73, 0x74, 0x10, 0xd8, 0x17, - 0x12, 0x19, 0x0a, 0x14, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x51, 0x75, 0x69, 0x74, 0x4e, - 0x6f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x10, 0xd9, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, - 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x10, 0xda, - 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x46, 0x6f, - 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xdb, 0x17, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x6f, - 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x4e, 0x6f, 0x45, 0x6e, - 0x6f, 0x75, 0x67, 0x68, 0x10, 0xdc, 0x17, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x69, 0x61, - 0x74, 0x79, 0x53, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x4e, 0x6f, 0x69, 0x6e, 0x69, 0x74, 0x10, 0xdd, - 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x70, 0x6f, 0x72, - 0x74, 0x73, 0x45, 0x6e, 0x64, 0x10, 0xde, 0x17, 0x12, 0x16, 0x0a, 0x11, 0x53, 0x6f, 0x63, 0x69, - 0x61, 0x74, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x10, 0xdf, 0x17, - 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x4e, - 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xe0, 0x17, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, - 0x65, 0x64, 0x10, 0xe1, 0x17, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, - 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xe2, 0x17, 0x12, - 0x18, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4c, - 0x76, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0xe3, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x10, - 0xe4, 0x17, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x74, - 0x69, 0x63, 0x65, 0x54, 0x65, 0x78, 0x74, 0x4c, 0x65, 0x6e, 0x10, 0xe5, 0x17, 0x12, 0x20, 0x0a, - 0x1b, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x10, 0xe6, 0x17, 0x12, - 0x22, 0x0a, 0x1d, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, - 0x49, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x6f, 0x72, 0x64, 0x73, - 0x10, 0xe7, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x54, 0x69, 0x63, 0x6b, - 0x65, 0x74, 0x42, 0x75, 0x79, 0x55, 0x70, 0x10, 0x9d, 0x18, 0x12, 0x19, 0x0a, 0x14, 0x41, 0x72, - 0x65, 0x6e, 0x61, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, - 0x67, 0x68, 0x10, 0x9e, 0x18, 0x12, 0x17, 0x0a, 0x12, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x54, 0x69, - 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x70, 0x63, 0x49, 0x6e, 0x43, 0x64, 0x10, 0x9f, 0x18, 0x12, 0x16, - 0x0a, 0x11, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x4c, 0x65, - 0x61, 0x72, 0x6e, 0x10, 0x81, 0x19, 0x12, 0x12, 0x0a, 0x0d, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, - 0x45, 0x72, 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0x82, 0x19, 0x12, 0x19, 0x0a, 0x14, 0x54, 0x61, - 0x6c, 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x4c, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x42, 0x65, 0x66, 0x6f, - 0x72, 0x65, 0x10, 0x83, 0x19, 0x12, 0x15, 0x0a, 0x10, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0x84, 0x19, 0x12, 0x10, 0x0a, 0x0b, - 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x42, 0x75, 0x79, 0x4d, 0x61, 0x78, 0x10, 0xe5, 0x19, 0x12, 0x11, - 0x0a, 0x0c, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x53, 0x65, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x10, 0xe6, - 0x19, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x6c, - 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe7, 0x19, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x72, 0x6f, - 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe8, - 0x19, 0x12, 0x18, 0x0a, 0x13, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xe9, 0x19, 0x12, 0x0e, 0x0a, 0x09, 0x54, - 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x69, 0x74, 0x79, 0x10, 0xea, 0x19, 0x12, 0x0e, 0x0a, 0x09, 0x54, - 0x72, 0x6f, 0x6c, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x10, 0xeb, 0x19, 0x12, 0x16, 0x0a, 0x11, 0x54, - 0x72, 0x6f, 0x6c, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, - 0x10, 0xec, 0x19, 0x12, 0x18, 0x0a, 0x13, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x69, 0x74, 0x79, - 0x55, 0x6e, 0x53, 0x65, 0x6c, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xed, 0x19, 0x12, 0x18, 0x0a, - 0x13, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x69, 0x74, 0x79, 0x55, 0x6e, 0x52, 0x65, 0x63, 0x6f, - 0x76, 0x65, 0x72, 0x79, 0x10, 0xee, 0x19, 0x12, 0x14, 0x0a, 0x0f, 0x54, 0x72, 0x6f, 0x6c, 0x6c, - 0x43, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xef, 0x19, 0x12, 0x19, 0x0a, - 0x14, 0x48, 0x6f, 0x72, 0x6f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x4e, 0x6f, 0x74, 0x54, 0x75, 0x72, - 0x6e, 0x65, 0x64, 0x4f, 0x6e, 0x10, 0xc9, 0x1a, 0x12, 0x19, 0x0a, 0x14, 0x48, 0x6f, 0x72, 0x6f, - 0x73, 0x63, 0x6f, 0x70, 0x65, 0x52, 0x65, 0x73, 0x74, 0x43, 0x44, 0x4e, 0x6f, 0x45, 0x6e, 0x64, - 0x10, 0xca, 0x1a, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, - 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xad, 0x1b, 0x12, 0x17, 0x0a, 0x12, 0x50, - 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x54, 0x69, 0x6d, - 0x65, 0x10, 0xae, 0x1b, 0x12, 0x0f, 0x0a, 0x0a, 0x56, 0x69, 0x70, 0x4c, 0x76, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x10, 0xaf, 0x1b, 0x12, 0x11, 0x0a, 0x0c, 0x56, 0x69, 0x70, 0x47, 0x69, 0x66, 0x74, - 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xb0, 0x1b, 0x12, 0x11, 0x0a, 0x0c, 0x56, 0x69, 0x70, 0x42, - 0x75, 0x79, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x10, 0xb1, 0x1b, 0x12, 0x14, 0x0a, 0x0f, 0x47, - 0x72, 0x6f, 0x77, 0x74, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0x91, - 0x1c, 0x12, 0x17, 0x0a, 0x12, 0x47, 0x72, 0x6f, 0x77, 0x74, 0x61, 0x73, 0x6b, 0x41, 0x64, 0x76, - 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0x92, 0x1c, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x61, - 0x79, 0x42, 0x75, 0x79, 0x4e, 0x75, 0x6d, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, - 0x10, 0xf5, 0x1c, 0x12, 0x14, 0x0a, 0x0f, 0x50, 0x61, 0x79, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x54, - 0x69, 0x6d, 0x65, 0x45, 0x72, 0x72, 0x10, 0xf6, 0x1c, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x61, 0x79, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x10, 0xf7, - 0x1c, 0x12, 0x14, 0x0a, 0x0f, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x46, 0x69, - 0x6e, 0x69, 0x73, 0x68, 0x10, 0xd9, 0x1d, 0x12, 0x19, 0x0a, 0x14, 0x57, 0x6f, 0x72, 0x6c, 0x64, - 0x74, 0x61, 0x73, 0x6b, 0x4c, 0x76, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, - 0xda, 0x1d, 0x12, 0x16, 0x0a, 0x11, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4e, - 0x6f, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x10, 0xdb, 0x1d, 0x12, 0x18, 0x0a, 0x13, 0x57, 0x6f, - 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x65, 0x10, 0xdc, 0x1d, 0x12, 0x15, 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, - 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x68, 0x65, 0x64, 0x10, 0xdd, 0x1d, 0x12, 0x1c, 0x0a, 0x17, 0x57, - 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4c, 0x61, 0x73, 0x74, 0x55, 0x6e, 0x46, 0x69, - 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xde, 0x1d, 0x12, 0x1b, 0x0a, 0x16, 0x57, 0x6f, 0x72, - 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x4e, 0x6f, 0x73, - 0x61, 0x6d, 0x65, 0x10, 0xdf, 0x1d, 0x12, 0x1f, 0x0a, 0x1a, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, - 0x61, 0x73, 0x6b, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x55, 0x6e, 0x46, 0x69, 0x6e, 0x69, - 0x73, 0x68, 0x65, 0x64, 0x10, 0xe0, 0x1d, 0x12, 0x1d, 0x0a, 0x18, 0x57, 0x6f, 0x72, 0x6c, 0x64, - 0x74, 0x61, 0x73, 0x6b, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x69, - 0x76, 0x65, 0x64, 0x10, 0xe1, 0x1d, 0x12, 0x17, 0x0a, 0x12, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, - 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x10, 0xe2, 0x1d, 0x12, - 0x1a, 0x0a, 0x15, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x10, 0xe3, 0x1d, 0x12, 0x1e, 0x0a, 0x19, 0x41, - 0x63, 0x61, 0x64, 0x65, 0x6d, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x10, 0xbd, 0x1e, 0x12, 0x15, 0x0a, 0x10, 0x41, - 0x75, 0x74, 0x6f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x10, - 0xa1, 0x1f, 0x12, 0x18, 0x0a, 0x13, 0x41, 0x75, 0x74, 0x6f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x45, 0x72, 0x72, 0x10, 0xa2, 0x1f, 0x12, 0x11, 0x0a, 0x0c, - 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4e, 0x6f, 0x52, 0x65, 0x65, 0x6c, 0x10, 0x85, 0x20, 0x12, - 0x18, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4e, 0x6f, 0x54, 0x65, 0x6d, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x10, 0x86, 0x20, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6d, 0x69, - 0x74, 0x68, 0x79, 0x53, 0x74, 0x6f, 0x76, 0x65, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0x87, 0x20, - 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0x88, 0x20, 0x12, 0x20, 0x0a, 0x1b, 0x53, 0x6d, - 0x69, 0x74, 0x68, 0x79, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x45, 0x71, 0x75, 0x69, - 0x70, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x89, 0x20, 0x12, 0x19, 0x0a, 0x14, - 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4d, 0x61, 0x78, 0x54, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x10, 0x8a, 0x20, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6d, 0x69, 0x74, 0x68, - 0x79, 0x4c, 0x61, 0x63, 0x6b, 0x4c, 0x61, 0x76, 0x61, 0x10, 0x8b, 0x20, 0x12, 0x15, 0x0a, 0x10, - 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x4d, 0x61, 0x78, 0x4c, 0x76, - 0x10, 0x8c, 0x20, 0x12, 0x16, 0x0a, 0x11, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, - 0x61, 0x73, 0x4c, 0x61, 0x63, 0x6b, 0x4c, 0x76, 0x10, 0x8d, 0x20, 0x12, 0x19, 0x0a, 0x14, 0x53, - 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, - 0x68, 0x65, 0x64, 0x10, 0x8e, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, - 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0x8f, 0x20, 0x12, - 0x17, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, - 0x41, 0x74, 0x6c, 0x61, 0x73, 0x10, 0x90, 0x20, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6d, 0x69, 0x74, - 0x68, 0x79, 0x4e, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x41, 0x74, 0x6c, 0x61, - 0x73, 0x10, 0x91, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4c, 0x76, - 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x92, 0x20, 0x12, 0x15, - 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4c, 0x76, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x50, - 0x72, 0x65, 0x10, 0x93, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, - 0x74, 0x6c, 0x61, 0x73, 0x54, 0x79, 0x70, 0x65, 0x45, 0x72, 0x72, 0x10, 0x94, 0x20, 0x12, 0x1a, - 0x0a, 0x15, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x4e, 0x6f, - 0x52, 0x65, 0x61, 0x63, 0x68, 0x65, 0x64, 0x10, 0xe9, 0x20, 0x12, 0x13, 0x0a, 0x0e, 0x44, 0x69, - 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x4e, 0x6f, 0x46, 0x72, 0x65, 0x65, 0x10, 0xea, 0x20, 0x12, - 0x1b, 0x0a, 0x16, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x63, 0x6b, 0x65, - 0x74, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xeb, 0x20, 0x12, 0x19, 0x0a, 0x14, - 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x73, 0x73, 0x69, - 0x67, 0x6e, 0x65, 0x64, 0x10, 0xec, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x44, 0x69, 0x73, 0x70, 0x61, - 0x74, 0x63, 0x68, 0x54, 0x61, 0x73, 0x6b, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x10, 0xed, - 0x20, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x66, - 0x72, 0x65, 0x73, 0x68, 0x4d, 0x61, 0x78, 0x10, 0xee, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x69, - 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, - 0x10, 0xef, 0x20, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x48, - 0x65, 0x72, 0x6f, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xf0, 0x20, 0x12, 0x16, - 0x0a, 0x11, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, - 0x69, 0x6e, 0x67, 0x10, 0xcd, 0x21, 0x12, 0x11, 0x0a, 0x0c, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, - 0x63, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x10, 0xce, 0x21, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x72, 0x61, - 0x63, 0x74, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x4f, - 0x75, 0x74, 0x10, 0xcf, 0x21, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, - 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0xd0, 0x21, 0x12, - 0x19, 0x0a, 0x14, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x59, 0x6f, 0x75, 0x51, 0x69, - 0x65, 0x63, 0x75, 0x6f, 0x69, 0x6e, 0x67, 0x10, 0xd1, 0x21, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x72, - 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x51, 0x69, 0x65, 0x63, - 0x75, 0x6f, 0x69, 0x6e, 0x67, 0x10, 0xd2, 0x21, 0x12, 0x15, 0x0a, 0x10, 0x50, 0x72, 0x61, 0x63, - 0x74, 0x69, 0x63, 0x65, 0x55, 0x73, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0xd3, 0x21, 0x12, - 0x16, 0x0a, 0x11, 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x46, 0x75, 0x6c, 0x6c, 0x10, 0xb1, 0x22, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x61, 0x72, 0x6b, 0x6f, - 0x75, 0x72, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x64, 0x75, 0x65, 0x10, - 0xb2, 0x22, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x76, - 0x69, 0x74, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, - 0x10, 0xb3, 0x22, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x54, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x65, 0x64, 0x10, 0xb4, 0x22, 0x12, 0x15, 0x0a, - 0x10, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x64, 0x69, 0x6e, - 0x67, 0x10, 0xb5, 0x22, 0x12, 0x18, 0x0a, 0x13, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x54, 0x72, - 0x61, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xb6, 0x22, 0x12, 0x1a, - 0x0a, 0x15, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x41, 0x64, 0x75, 0x6c, 0x74, - 0x44, 0x64, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x10, 0xb7, 0x22, 0x12, 0x14, 0x0a, 0x0f, 0x44, 0x72, - 0x61, 0x67, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xb8, 0x22, - 0x12, 0x19, 0x0a, 0x14, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, - 0x6c, 0x65, 0x6e, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x10, 0x95, 0x23, 0x12, 0x1a, 0x0a, 0x15, 0x52, - 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x50, 0x72, 0x65, 0x4e, 0x6f, - 0x64, 0x65, 0x4c, 0x76, 0x10, 0x96, 0x23, 0x12, 0x15, 0x0a, 0x10, 0x4f, 0x6c, 0x64, 0x74, 0x69, - 0x6d, 0x65, 0x73, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xf9, 0x23, 0x12, 0x15, - 0x0a, 0x10, 0x4f, 0x6c, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, - 0x65, 0x64, 0x10, 0xfa, 0x23, 0x12, 0x16, 0x0a, 0x11, 0x4f, 0x6c, 0x64, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x4f, 0x76, 0x65, 0x72, 0x10, 0xfb, 0x23, 0x12, 0x1f, 0x0a, - 0x1a, 0x4f, 0x6c, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x50, 0x72, 0x65, 0x4c, 0x65, 0x76, 0x65, - 0x6c, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xfc, 0x23, 0x12, 0x1a, - 0x0a, 0x15, 0x4f, 0x6c, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x4e, 0x6f, 0x41, 0x6c, 0x6c, 0x46, - 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xfd, 0x23, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x61, - 0x73, 0x73, 0x6f, 0x6e, 0x48, 0x65, 0x72, 0x6f, 0x4e, 0x75, 0x6d, 0x4e, 0x6f, 0x74, 0x45, 0x6e, - 0x6f, 0x75, 0x67, 0x68, 0x10, 0xdd, 0x24, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x61, 0x73, 0x73, 0x6f, - 0x6e, 0x48, 0x65, 0x72, 0x6f, 0x55, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, - 0x10, 0xde, 0x24, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x61, 0x73, 0x73, 0x6f, 0x6e, 0x53, 0x65, 0x61, - 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x45, 0x72, 0x72, 0x10, 0xdf, 0x24, 0x12, 0x13, 0x0a, 0x0e, - 0x57, 0x61, 0x72, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x4e, 0x6f, 0x4f, 0x70, 0x65, 0x6e, 0x10, 0xc1, - 0x25, 0x12, 0x21, 0x0a, 0x1c, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, - 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x48, 0x65, 0x72, - 0x6f, 0x10, 0xa5, 0x26, 0x12, 0x21, 0x0a, 0x1c, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, - 0x67, 0x65, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, - 0x42, 0x55, 0x66, 0x66, 0x10, 0xa6, 0x26, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x74, 0x6f, 0x6e, 0x65, - 0x68, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x10, 0xa7, - 0x26, 0x12, 0x1e, 0x0a, 0x19, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x45, - 0x6e, 0x74, 0x65, 0x72, 0x52, 0x6f, 0x6f, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xa8, - 0x26, 0x12, 0x1d, 0x0a, 0x18, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, - 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xa9, 0x26, - 0x12, 0x1d, 0x0a, 0x18, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x47, 0x6f, - 0x74, 0x6f, 0x52, 0x6f, 0x6f, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xaa, 0x26, 0x12, - 0x1e, 0x0a, 0x19, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x42, 0x6f, 0x78, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xab, 0x26, 0x12, - 0x19, 0x0a, 0x14, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x43, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xac, 0x26, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x74, - 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x4d, 0x61, 0x78, - 0x10, 0xad, 0x26, 0x12, 0x16, 0x0a, 0x11, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, - 0x65, 0x43, 0x61, 0x6e, 0x74, 0x42, 0x75, 0x79, 0x10, 0xae, 0x26, 0x12, 0x1b, 0x0a, 0x16, 0x53, - 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x70, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x10, 0xaf, 0x26, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x74, 0x6f, 0x6e, - 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x62, 0x75, 0x66, 0x66, 0x52, 0x65, 0x73, 0x65, 0x74, 0x45, - 0x72, 0x72, 0x10, 0xb0, 0x26, 0x12, 0x11, 0x0a, 0x0c, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, - 0x79, 0x4f, 0x76, 0x65, 0x72, 0x10, 0x89, 0x27, 0x12, 0x15, 0x0a, 0x10, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x69, 0x74, 0x79, 0x55, 0x6e, 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x10, 0x8a, 0x27, 0x12, - 0x18, 0x0a, 0x13, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x52, 0x65, 0x70, 0x61, 0x74, - 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x8b, 0x27, 0x12, 0x16, 0x0a, 0x11, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x49, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x10, 0x8c, - 0x27, 0x12, 0x14, 0x0a, 0x0f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x10, 0x8d, 0x27, 0x12, 0x17, 0x0a, 0x12, 0x41, 0x63, 0x74, 0x69, 0x76, - 0x69, 0x74, 0x79, 0x43, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x8e, 0x27, - 0x12, 0x1c, 0x0a, 0x17, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x73, 0x68, 0x65, 0x65, 0x70, - 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x65, 0x64, 0x10, 0xed, 0x27, 0x12, 0x16, - 0x0a, 0x11, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x61, 0x6e, 0x74, 0x53, - 0x77, 0x61, 0x70, 0x10, 0xd1, 0x28, 0x12, 0x15, 0x0a, 0x10, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, - 0x61, 0x69, 0x6e, 0x4e, 0x6f, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x10, 0xd2, 0x28, 0x12, 0x19, 0x0a, - 0x14, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4e, 0x6f, 0x48, 0x65, 0x72, 0x6f, - 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x10, 0xd3, 0x28, 0x12, 0x16, 0x0a, 0x11, 0x45, 0x6e, 0x74, 0x65, - 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4e, 0x6f, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x10, 0xd4, 0x28, - 0x12, 0x1a, 0x0a, 0x15, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd5, 0x28, 0x12, 0x1b, 0x0a, 0x16, - 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, - 0x6f, 0x52, 0x65, 0x61, 0x64, 0x79, 0x10, 0xd6, 0x28, 0x12, 0x17, 0x0a, 0x12, 0x45, 0x6e, 0x74, - 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x10, - 0xd7, 0x28, 0x12, 0x1c, 0x0a, 0x17, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x44, - 0x69, 0x73, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd8, 0x28, - 0x12, 0x18, 0x0a, 0x13, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x42, 0x6f, 0x78, - 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x10, 0xd9, 0x28, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, - 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xb4, 0x0a, 0x12, 0x17, 0x0a, 0x12, 0x48, 0x65, + 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x10, 0xb5, 0x0a, 0x12, 0x1e, 0x0a, 0x19, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, + 0x4f, 0x6e, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, + 0x10, 0xf8, 0x0a, 0x12, 0x1c, 0x0a, 0x17, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, + 0x4c, 0x76, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x61, 0x63, 0x68, 0x65, 0x64, 0x10, 0xf9, + 0x0a, 0x12, 0x14, 0x0a, 0x0f, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x73, + 0x57, 0x6f, 0x72, 0x6e, 0x10, 0xfa, 0x0a, 0x12, 0x17, 0x0a, 0x12, 0x45, 0x71, 0x75, 0x69, 0x70, + 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x43, 0x61, 0x6e, 0x53, 0x65, 0x6c, 0x6c, 0x10, 0xfb, 0x0a, + 0x12, 0x1b, 0x0a, 0x16, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x69, + 0x74, 0x65, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xfc, 0x0a, 0x12, 0x1b, 0x0a, + 0x16, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, 0x74, 0x46, 0x69, 0x6e, 0x64, + 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x10, 0xdc, 0x0b, 0x12, 0x15, 0x0a, 0x10, 0x4d, 0x61, + 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x44, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xdd, + 0x0b, 0x12, 0x15, 0x0a, 0x10, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, 0x74, + 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xde, 0x0b, 0x12, 0x18, 0x0a, 0x13, 0x4d, 0x61, 0x69, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x72, 0x65, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, + 0xdf, 0x0b, 0x12, 0x19, 0x0a, 0x14, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x70, 0x65, 0x61, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xe0, 0x0b, 0x12, 0x1b, 0x0a, + 0x16, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, + 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xe1, 0x0b, 0x12, 0x19, 0x0a, 0x14, 0x4d, 0x61, + 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x53, 0x74, + 0x61, 0x72, 0x10, 0xe2, 0x0b, 0x12, 0x17, 0x0a, 0x12, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x53, 0x68, 0x6f, 0x70, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x10, 0xe3, 0x0b, 0x12, 0x18, + 0x0a, 0x13, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x75, 0x79, 0x4d, 0x61, 0x78, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe4, 0x0b, 0x12, 0x0d, 0x0a, 0x08, 0x54, 0x61, 0x73, 0x6b, + 0x49, 0x6e, 0x69, 0x74, 0x10, 0xc0, 0x0c, 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x61, 0x73, 0x6b, 0x52, + 0x65, 0x73, 0x65, 0x74, 0x10, 0xc1, 0x0c, 0x12, 0x0f, 0x0a, 0x0a, 0x54, 0x61, 0x73, 0x6b, 0x48, + 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x10, 0xc2, 0x0c, 0x12, 0x11, 0x0a, 0x0c, 0x54, 0x61, 0x73, 0x6b, + 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xc3, 0x0c, 0x12, 0x13, 0x0a, 0x0e, 0x54, + 0x61, 0x73, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x10, 0xc4, 0x0c, + 0x12, 0x16, 0x0a, 0x11, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4e, 0x6f, + 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xc5, 0x0c, 0x12, 0x17, 0x0a, 0x12, 0x54, 0x61, 0x73, 0x6b, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4e, 0x6f, 0x65, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xc6, + 0x0c, 0x12, 0x13, 0x0a, 0x0e, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, + 0x68, 0x65, 0x64, 0x10, 0xc7, 0x0c, 0x12, 0x11, 0x0a, 0x0c, 0x54, 0x61, 0x73, 0x6b, 0x46, 0x69, + 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xc8, 0x0c, 0x12, 0x11, 0x0a, 0x0c, 0x54, 0x61, 0x73, + 0x6b, 0x54, 0x61, 0x67, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x10, 0xc9, 0x0c, 0x12, 0x10, 0x0a, 0x0b, + 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x10, 0xca, 0x0c, 0x12, 0x11, + 0x0a, 0x0c, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xcb, + 0x0c, 0x12, 0x17, 0x0a, 0x12, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xcc, 0x0c, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x68, + 0x6f, 0x70, 0x47, 0x6f, 0x6f, 0x64, 0x73, 0x49, 0x73, 0x53, 0x6f, 0x6c, 0x64, 0x4f, 0x75, 0x74, + 0x10, 0xa4, 0x0d, 0x12, 0x1c, 0x0a, 0x17, 0x53, 0x68, 0x6f, 0x70, 0x4e, 0x6f, 0x53, 0x75, 0x72, + 0x70, 0x6c, 0x75, 0x73, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x4e, 0x75, 0x6d, 0x10, 0xa5, + 0x0d, 0x12, 0x0c, 0x0a, 0x07, 0x4d, 0x61, 0x69, 0x6c, 0x45, 0x72, 0x72, 0x10, 0x88, 0x0e, 0x12, + 0x13, 0x0a, 0x0e, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, + 0x64, 0x10, 0xec, 0x0e, 0x12, 0x12, 0x0a, 0x0d, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x4c, 0x65, + 0x76, 0x6c, 0x45, 0x72, 0x72, 0x10, 0xed, 0x0e, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x61, 0x67, 0x6f, + 0x64, 0x61, 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x45, 0x72, 0x72, 0x10, 0xee, + 0x0e, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x43, 0x6f, 0x6e, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x10, 0xef, 0x0e, 0x12, 0x11, 0x0a, 0x0c, 0x50, 0x61, + 0x67, 0x6f, 0x64, 0x61, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x10, 0xf0, 0x0e, 0x12, 0x14, 0x0a, + 0x0f, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x10, 0xf1, 0x0e, 0x12, 0x13, 0x0a, 0x0e, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x4d, 0x61, 0x78, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xf2, 0x0e, 0x12, 0x1b, 0x0a, 0x16, 0x4d, 0x61, 0x72, 0x74, + 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x4e, 0x6f, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, + 0x65, 0x64, 0x10, 0xd0, 0x0f, 0x12, 0x15, 0x0a, 0x10, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, + 0x68, 0x61, 0x6c, 0x6c, 0x49, 0x6e, 0x55, 0x73, 0x65, 0x10, 0xd1, 0x0f, 0x12, 0x18, 0x0a, 0x13, + 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x55, 0x6e, 0x6c, 0x6f, 0x63, + 0x6b, 0x65, 0x64, 0x10, 0xd2, 0x0f, 0x12, 0x1a, 0x0a, 0x15, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, + 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x4e, 0x6f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, + 0xd3, 0x0f, 0x12, 0x1a, 0x0a, 0x15, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, + 0x6c, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xd4, 0x0f, 0x12, 0x1d, + 0x0a, 0x18, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x41, 0x74, 0x6c, + 0x61, 0x73, 0x4e, 0x6f, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xd5, 0x0f, 0x12, 0x19, 0x0a, + 0x14, 0x47, 0x6f, 0x75, 0x72, 0x6d, 0x65, 0x74, 0x4d, 0x6f, 0x72, 0x65, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x54, 0x69, 0x6d, 0x65, 0x10, 0xb5, 0x10, 0x12, 0x16, 0x0a, 0x11, 0x47, 0x6f, 0x75, 0x72, + 0x6d, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0xb6, 0x10, + 0x12, 0x12, 0x0a, 0x0d, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, + 0x64, 0x10, 0x99, 0x11, 0x12, 0x14, 0x0a, 0x0f, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x55, 0x6e, 0x46, + 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0x9a, 0x11, 0x12, 0x11, 0x0a, 0x0c, 0x52, 0x74, + 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x10, 0x9b, 0x11, 0x12, 0x12, 0x0a, + 0x0d, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x10, 0x9c, + 0x11, 0x12, 0x15, 0x0a, 0x10, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x50, 0x72, 0x65, 0x4e, 0x6f, 0x46, + 0x69, 0x6e, 0x69, 0x73, 0x68, 0x10, 0x9d, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x52, 0x74, 0x61, 0x73, + 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x4e, 0x6f, 0x52, 0x65, 0x61, 0x63, 0x68, 0x10, 0x9e, 0x11, + 0x12, 0x13, 0x0a, 0x0e, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x4c, 0x61, 0x73, 0x74, 0x4f, + 0x6e, 0x65, 0x10, 0x9f, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x43, 0x6f, + 0x6e, 0x64, 0x69, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xa0, 0x11, 0x12, 0x10, 0x0a, + 0x0b, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x4c, 0x76, 0x45, 0x72, 0x72, 0x10, 0xfd, 0x11, 0x12, + 0x13, 0x0a, 0x0e, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, + 0x65, 0x10, 0xfe, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x75, + 0x79, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xff, 0x11, 0x12, 0x1c, 0x0a, 0x17, + 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x78, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x80, 0x12, 0x12, 0x15, 0x0a, 0x10, 0x56, 0x69, + 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x67, 0x65, 0x50, 0x73, 0x45, 0x72, 0x72, 0x10, 0x81, + 0x12, 0x12, 0x1a, 0x0a, 0x15, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x48, 0x61, 0x73, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x10, 0xe1, 0x12, 0x12, 0x16, 0x0a, + 0x11, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4a, 0x6f, 0x69, 0x6e, + 0x55, 0x70, 0x10, 0xe2, 0x12, 0x12, 0x16, 0x0a, 0x11, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, + 0x74, 0x61, 0x73, 0x79, 0x44, 0x61, 0x72, 0x65, 0x55, 0x70, 0x10, 0xe3, 0x12, 0x12, 0x1b, 0x0a, + 0x16, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x4e, 0x6f, 0x45, 0x6e, 0x64, 0x10, 0xe4, 0x12, 0x12, 0x1b, 0x0a, 0x16, 0x4d, 0x6f, + 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, + 0x6f, 0x57, 0x69, 0x6e, 0x10, 0xe5, 0x12, 0x12, 0x16, 0x0a, 0x11, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4e, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x10, 0xe6, 0x12, 0x12, + 0x20, 0x0a, 0x1b, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4e, 0x6f, + 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x73, 0x10, 0xe7, + 0x12, 0x12, 0x18, 0x0a, 0x13, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x46, 0x6f, 0x75, + 0x6e, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x10, 0xc5, 0x13, 0x12, 0x1a, 0x0a, 0x15, 0x4c, + 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, + 0x73, 0x68, 0x65, 0x64, 0x10, 0xa9, 0x14, 0x12, 0x17, 0x0a, 0x12, 0x4c, 0x69, 0x6e, 0x65, 0x73, + 0x74, 0x6f, 0x72, 0x79, 0x4e, 0x6f, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0xaa, 0x14, + 0x12, 0x1f, 0x0a, 0x1a, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x61, 0x73, + 0x6b, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0xab, + 0x14, 0x12, 0x1b, 0x0a, 0x16, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x68, + 0x61, 0x70, 0x74, 0x65, 0x72, 0x4e, 0x6f, 0x4f, 0x70, 0x65, 0x6e, 0x10, 0xac, 0x14, 0x12, 0x1b, + 0x0a, 0x16, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, 0x4e, 0x6f, + 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xad, 0x14, 0x12, 0x11, 0x0a, 0x0c, 0x48, + 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x4c, 0x76, 0x45, 0x72, 0x72, 0x10, 0x8d, 0x15, 0x12, 0x14, + 0x0a, 0x0f, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, + 0x65, 0x10, 0x8e, 0x15, 0x12, 0x17, 0x0a, 0x12, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x42, + 0x75, 0x79, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x8f, 0x15, 0x12, 0x1d, 0x0a, + 0x18, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x78, 0x43, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x90, 0x15, 0x12, 0x1c, 0x0a, 0x17, + 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x91, 0x15, 0x12, 0x11, 0x0a, 0x0c, 0x45, 0x6e, + 0x63, 0x68, 0x61, 0x6e, 0x74, 0x4c, 0x76, 0x45, 0x72, 0x72, 0x10, 0x97, 0x15, 0x12, 0x14, 0x0a, + 0x0f, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x42, 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, + 0x10, 0x98, 0x15, 0x12, 0x17, 0x0a, 0x12, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x42, 0x75, + 0x79, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x99, 0x15, 0x12, 0x1d, 0x0a, 0x18, + 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x4d, 0x61, 0x78, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, + 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x9a, 0x15, 0x12, 0x1c, 0x0a, 0x17, 0x45, + 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x4e, 0x6f, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x9b, 0x15, 0x12, 0x11, 0x0a, 0x0c, 0x4c, 0x69, 0x62, + 0x72, 0x61, 0x72, 0x79, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0xf1, 0x15, 0x12, 0x12, 0x0a, 0x0d, + 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x4e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x10, 0xf2, 0x15, + 0x12, 0x16, 0x0a, 0x11, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xf3, 0x15, 0x12, 0x12, 0x0a, 0x0d, 0x4c, 0x69, 0x62, 0x72, + 0x61, 0x72, 0x79, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xf4, 0x15, 0x12, 0x14, 0x0a, 0x0f, + 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x4c, 0x76, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, + 0xf5, 0x15, 0x12, 0x1d, 0x0a, 0x18, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x46, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xf6, + 0x15, 0x12, 0x1d, 0x0a, 0x18, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x50, 0x72, 0x65, 0x54, + 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xf7, 0x15, + 0x12, 0x18, 0x0a, 0x13, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x47, 0x69, 0x76, 0x65, 0x4d, + 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xf8, 0x15, 0x12, 0x1b, 0x0a, 0x16, 0x42, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x61, + 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd5, 0x16, 0x12, 0x10, 0x0a, 0x0b, 0x42, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x4e, 0x6f, 0x57, 0x69, 0x6e, 0x10, 0xd6, 0x16, 0x12, 0x17, 0x0a, 0x12, 0x42, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, + 0xd7, 0x16, 0x12, 0x16, 0x0a, 0x11, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x43, 0x6d, + 0x64, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd8, 0x16, 0x12, 0x12, 0x0a, 0x0d, 0x42, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x10, 0xd9, 0x16, 0x12, 0x1e, + 0x0a, 0x19, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x61, 0x70, 0x73, 0x6b, 0x69, 0x6c, 0x6c, + 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xda, 0x16, 0x12, 0x11, + 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x4b, 0x65, 0x65, 0x70, 0x10, 0xdb, + 0x16, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x46, 0x6f, + 0x75, 0x6e, 0x64, 0x10, 0xb8, 0x17, 0x12, 0x11, 0x0a, 0x0c, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, + 0x79, 0x41, 0x64, 0x64, 0x65, 0x64, 0x10, 0xb9, 0x17, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x6f, 0x63, + 0x69, 0x61, 0x74, 0x79, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, + 0x75, 0x67, 0x68, 0x10, 0xba, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, + 0x79, 0x4e, 0x6f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0xbb, 0x17, 0x12, 0x13, 0x0a, 0x0e, + 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x52, 0x69, 0x67, 0x68, 0x74, 0x10, 0xbc, + 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x41, 0x64, + 0x64, 0x65, 0x64, 0x10, 0xbd, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, + 0x79, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x10, 0xbe, 0x17, 0x12, 0x10, 0x0a, 0x0b, 0x53, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x51, 0x75, 0x69, 0x74, 0x10, 0xbf, 0x17, 0x12, 0x11, 0x0a, + 0x0c, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x67, 0x72, 0x65, 0x65, 0x10, 0xc0, 0x17, + 0x12, 0x12, 0x0a, 0x0d, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x52, 0x65, 0x66, 0x75, 0x73, + 0x65, 0x10, 0xc1, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4c, + 0x6f, 0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x10, 0xc2, 0x17, 0x12, 0x18, 0x0a, 0x13, 0x53, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x6f, 0x44, 0x69, + 0x73, 0x73, 0x10, 0xc3, 0x17, 0x12, 0x16, 0x0a, 0x11, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, + 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x10, 0xc4, 0x17, 0x12, 0x13, 0x0a, + 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x10, + 0xc5, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x41, + 0x63, 0x63, 0x75, 0x73, 0x65, 0x10, 0xc6, 0x17, 0x12, 0x10, 0x0a, 0x0b, 0x53, 0x6f, 0x63, 0x69, + 0x61, 0x74, 0x79, 0x53, 0x69, 0x67, 0x6e, 0x10, 0xc7, 0x17, 0x12, 0x12, 0x0a, 0x0d, 0x53, 0x6f, + 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x10, 0xc8, 0x17, 0x12, 0x13, + 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x43, 0x44, 0x4c, 0x69, 0x6d, 0x69, 0x74, + 0x10, 0xc9, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, + 0x70, 0x6c, 0x79, 0x4d, 0x61, 0x78, 0x10, 0xca, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, 0x63, + 0x69, 0x61, 0x74, 0x79, 0x53, 0x65, 0x6c, 0x66, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x10, + 0xcb, 0x17, 0x12, 0x1c, 0x0a, 0x17, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0xcc, 0x17, + 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x52, 0x65, 0x77, 0x61, 0x72, + 0x64, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xcd, 0x17, 0x12, 0x19, 0x0a, 0x14, + 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x10, 0xce, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, + 0x74, 0x79, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x10, 0xcf, 0x17, 0x12, 0x14, 0x0a, + 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x42, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x54, 0x6f, + 0x10, 0xd1, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, + 0x70, 0x6c, 0x69, 0x65, 0x64, 0x10, 0xd2, 0x17, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6f, 0x63, 0x69, + 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, 0x79, 0x4c, 0x76, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, + 0x68, 0x10, 0xd3, 0x17, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, + 0x61, 0x73, 0x6b, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xd4, 0x17, + 0x12, 0x1c, 0x0a, 0x17, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xd5, 0x17, 0x12, 0x1b, + 0x0a, 0x16, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x63, 0x69, 0x74, 0x76, 0x69, 0x74, + 0x79, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0xd6, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x64, 0x10, + 0xd7, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x61, 0x6d, + 0x65, 0x45, 0x78, 0x69, 0x73, 0x74, 0x10, 0xd8, 0x17, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x6f, 0x63, + 0x69, 0x61, 0x74, 0x79, 0x51, 0x75, 0x69, 0x74, 0x4e, 0x6f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, + 0x64, 0x10, 0xd9, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, + 0x6f, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x10, 0xda, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, + 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x10, 0xdb, 0x17, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x69, + 0x63, 0x6b, 0x65, 0x74, 0x73, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xdc, 0x17, + 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x70, 0x6f, 0x72, 0x74, + 0x73, 0x4e, 0x6f, 0x69, 0x6e, 0x69, 0x74, 0x10, 0xdd, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6f, + 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x45, 0x6e, 0x64, 0x10, 0xde, + 0x17, 0x12, 0x16, 0x0a, 0x11, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x65, 0x61, 0x6d, + 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x10, 0xdf, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, 0x63, + 0x69, 0x61, 0x74, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, + 0xe0, 0x17, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x61, 0x73, + 0x6b, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xe1, 0x17, 0x12, 0x18, + 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xe2, 0x17, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x69, + 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4c, 0x76, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, + 0xe3, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, + 0x6c, 0x79, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x10, 0xe4, 0x17, 0x12, 0x19, 0x0a, 0x14, 0x53, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x54, 0x65, 0x78, 0x74, + 0x4c, 0x65, 0x6e, 0x10, 0xe5, 0x17, 0x12, 0x20, 0x0a, 0x1b, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, + 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x57, 0x6f, 0x72, 0x64, 0x73, 0x10, 0xe6, 0x17, 0x12, 0x22, 0x0a, 0x1d, 0x53, 0x6f, 0x63, 0x69, + 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x10, 0xe7, 0x17, 0x12, 0x15, 0x0a, 0x10, + 0x41, 0x72, 0x65, 0x6e, 0x61, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x42, 0x75, 0x79, 0x55, 0x70, + 0x10, 0x9d, 0x18, 0x12, 0x19, 0x0a, 0x14, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x54, 0x69, 0x63, 0x6b, + 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x9e, 0x18, 0x12, 0x17, + 0x0a, 0x12, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x70, 0x63, + 0x49, 0x6e, 0x43, 0x64, 0x10, 0x9f, 0x18, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x61, 0x6c, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x10, 0x81, 0x19, 0x12, + 0x12, 0x0a, 0x0d, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45, 0x72, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x10, 0x82, 0x19, 0x12, 0x19, 0x0a, 0x14, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x4c, + 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x10, 0x83, 0x19, 0x12, 0x15, + 0x0a, 0x10, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x10, 0x84, 0x19, 0x12, 0x10, 0x0a, 0x0b, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x42, 0x75, + 0x79, 0x4d, 0x61, 0x78, 0x10, 0xe5, 0x19, 0x12, 0x11, 0x0a, 0x0c, 0x54, 0x72, 0x6f, 0x6c, 0x6c, + 0x53, 0x65, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x10, 0xe6, 0x19, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x72, + 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, + 0xe7, 0x19, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x49, 0x74, + 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe8, 0x19, 0x12, 0x18, 0x0a, 0x13, 0x54, 0x72, + 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, + 0x64, 0x10, 0xe9, 0x19, 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x69, 0x74, + 0x79, 0x10, 0xea, 0x19, 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x54, 0x61, 0x73, + 0x6b, 0x10, 0xeb, 0x19, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x49, 0x74, 0x65, + 0x6d, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xec, 0x19, 0x12, 0x18, 0x0a, 0x13, + 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x69, 0x74, 0x79, 0x55, 0x6e, 0x53, 0x65, 0x6c, 0x6c, 0x49, + 0x74, 0x65, 0x6d, 0x10, 0xed, 0x19, 0x12, 0x18, 0x0a, 0x13, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x43, + 0x69, 0x74, 0x79, 0x55, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x10, 0xee, 0x19, + 0x12, 0x14, 0x0a, 0x0f, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x10, 0xef, 0x19, 0x12, 0x19, 0x0a, 0x14, 0x48, 0x6f, 0x72, 0x6f, 0x73, 0x63, + 0x6f, 0x70, 0x65, 0x4e, 0x6f, 0x74, 0x54, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x4f, 0x6e, 0x10, 0xc9, + 0x1a, 0x12, 0x19, 0x0a, 0x14, 0x48, 0x6f, 0x72, 0x6f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x52, 0x65, + 0x73, 0x74, 0x43, 0x44, 0x4e, 0x6f, 0x45, 0x6e, 0x64, 0x10, 0xca, 0x1a, 0x12, 0x16, 0x0a, 0x11, + 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, + 0x64, 0x10, 0xad, 0x1b, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, + 0x65, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x10, 0xae, 0x1b, 0x12, 0x0f, 0x0a, + 0x0a, 0x56, 0x69, 0x70, 0x4c, 0x76, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xaf, 0x1b, 0x12, 0x11, + 0x0a, 0x0c, 0x56, 0x69, 0x70, 0x47, 0x69, 0x66, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xb0, + 0x1b, 0x12, 0x11, 0x0a, 0x0c, 0x56, 0x69, 0x70, 0x42, 0x75, 0x79, 0x52, 0x65, 0x70, 0x65, 0x61, + 0x74, 0x10, 0xb1, 0x1b, 0x12, 0x14, 0x0a, 0x0f, 0x47, 0x72, 0x6f, 0x77, 0x74, 0x61, 0x73, 0x6b, + 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0x91, 0x1c, 0x12, 0x17, 0x0a, 0x12, 0x47, 0x72, + 0x6f, 0x77, 0x74, 0x61, 0x73, 0x6b, 0x41, 0x64, 0x76, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, + 0x10, 0x92, 0x1c, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x61, 0x79, 0x42, 0x75, 0x79, 0x4e, 0x75, 0x6d, + 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xf5, 0x1c, 0x12, 0x14, 0x0a, 0x0f, + 0x50, 0x61, 0x79, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x72, 0x72, 0x10, + 0xf6, 0x1c, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x43, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x10, 0xf7, 0x1c, 0x12, 0x14, 0x0a, 0x0f, 0x57, 0x6f, + 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x10, 0xd9, 0x1d, + 0x12, 0x19, 0x0a, 0x14, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4c, 0x76, 0x4e, + 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xda, 0x1d, 0x12, 0x16, 0x0a, 0x11, 0x57, + 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, + 0x10, 0xdb, 0x1d, 0x12, 0x18, 0x0a, 0x13, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, + 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xdc, 0x1d, 0x12, 0x15, 0x0a, + 0x10, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x68, 0x65, + 0x64, 0x10, 0xdd, 0x1d, 0x12, 0x1c, 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, + 0x6b, 0x4c, 0x61, 0x73, 0x74, 0x55, 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, + 0xde, 0x1d, 0x12, 0x1b, 0x0a, 0x16, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x4e, 0x6f, 0x73, 0x61, 0x6d, 0x65, 0x10, 0xdf, 0x1d, 0x12, + 0x1f, 0x0a, 0x1a, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x43, 0x68, 0x61, 0x70, + 0x74, 0x65, 0x72, 0x55, 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xe0, 0x1d, + 0x12, 0x1d, 0x0a, 0x18, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x43, 0x68, 0x61, + 0x70, 0x74, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xe1, 0x1d, 0x12, + 0x17, 0x0a, 0x12, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x10, 0xe2, 0x1d, 0x12, 0x1a, 0x0a, 0x15, 0x57, 0x6f, 0x72, 0x6c, + 0x64, 0x74, 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x10, 0xe3, 0x1d, 0x12, 0x1e, 0x0a, 0x19, 0x41, 0x63, 0x61, 0x64, 0x65, 0x6d, 0x79, 0x54, + 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x73, + 0x6b, 0x10, 0xbd, 0x1e, 0x12, 0x15, 0x0a, 0x10, 0x41, 0x75, 0x74, 0x6f, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x4e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x10, 0xa1, 0x1f, 0x12, 0x18, 0x0a, 0x13, 0x41, + 0x75, 0x74, 0x6f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x45, + 0x72, 0x72, 0x10, 0xa2, 0x1f, 0x12, 0x11, 0x0a, 0x0c, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4e, + 0x6f, 0x52, 0x65, 0x65, 0x6c, 0x10, 0x85, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, + 0x68, 0x79, 0x4e, 0x6f, 0x54, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x10, + 0x86, 0x20, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x53, 0x74, 0x6f, 0x76, + 0x65, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0x87, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6d, 0x69, + 0x74, 0x68, 0x79, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, + 0x10, 0x88, 0x20, 0x12, 0x20, 0x0a, 0x1b, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x45, 0x71, 0x75, 0x69, 0x70, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, + 0x67, 0x68, 0x10, 0x89, 0x20, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4d, + 0x61, 0x78, 0x54, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x10, 0x8a, 0x20, + 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4c, 0x61, 0x63, 0x6b, 0x4c, 0x61, + 0x76, 0x61, 0x10, 0x8b, 0x20, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, + 0x74, 0x6c, 0x61, 0x73, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0x8c, 0x20, 0x12, 0x16, 0x0a, 0x11, + 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x4c, 0x61, 0x63, 0x6b, 0x4c, + 0x76, 0x10, 0x8d, 0x20, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, 0x61, + 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0x8e, 0x20, 0x12, + 0x17, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0x8f, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, + 0x68, 0x79, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x10, 0x90, + 0x20, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4e, 0x6f, 0x41, 0x63, 0x74, + 0x69, 0x76, 0x61, 0x74, 0x65, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x10, 0x91, 0x20, 0x12, 0x18, 0x0a, + 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4c, 0x76, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x46, 0x61, + 0x69, 0x6c, 0x65, 0x64, 0x10, 0x92, 0x20, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, 0x68, + 0x79, 0x4c, 0x76, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x50, 0x72, 0x65, 0x10, 0x93, 0x20, 0x12, 0x17, + 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x54, 0x79, 0x70, + 0x65, 0x45, 0x72, 0x72, 0x10, 0x94, 0x20, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x69, 0x73, 0x70, 0x61, + 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x4e, 0x6f, 0x52, 0x65, 0x61, 0x63, 0x68, 0x65, 0x64, + 0x10, 0xe9, 0x20, 0x12, 0x13, 0x0a, 0x0e, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x4e, + 0x6f, 0x46, 0x72, 0x65, 0x65, 0x10, 0xea, 0x20, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, + 0x67, 0x68, 0x10, 0xeb, 0x20, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, + 0x68, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x10, 0xec, 0x20, + 0x12, 0x18, 0x0a, 0x13, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x54, 0x61, 0x73, 0x6b, + 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x10, 0xed, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x69, + 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x4d, 0x61, 0x78, + 0x10, 0xee, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x4e, + 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xef, 0x20, 0x12, 0x19, 0x0a, 0x14, + 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x4e, 0x6f, 0x45, 0x6e, + 0x6f, 0x75, 0x67, 0x68, 0x10, 0xf0, 0x20, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x72, 0x61, 0x63, 0x74, + 0x69, 0x63, 0x65, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x69, 0x6e, 0x67, 0x10, 0xcd, 0x21, 0x12, + 0x11, 0x0a, 0x0c, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x10, + 0xce, 0x21, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x49, 0x6e, + 0x76, 0x69, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x10, 0xcf, 0x21, 0x12, 0x18, + 0x0a, 0x13, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61, 0x72, + 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0xd0, 0x21, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x72, 0x61, 0x63, + 0x74, 0x69, 0x63, 0x65, 0x59, 0x6f, 0x75, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x69, 0x6e, 0x67, + 0x10, 0xd1, 0x21, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x54, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x69, 0x6e, 0x67, 0x10, 0xd2, + 0x21, 0x12, 0x15, 0x0a, 0x10, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x55, 0x73, 0x65, + 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0xd3, 0x21, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x61, 0x72, 0x6b, + 0x6f, 0x75, 0x72, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x10, 0xb1, 0x22, + 0x12, 0x19, 0x0a, 0x14, 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x76, 0x69, 0x74, + 0x65, 0x4f, 0x76, 0x65, 0x72, 0x64, 0x75, 0x65, 0x10, 0xb2, 0x22, 0x12, 0x1f, 0x0a, 0x1a, 0x50, + 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x4e, 0x6f, 0x50, 0x65, + 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xb3, 0x22, 0x12, 0x18, 0x0a, 0x13, + 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x65, 0x61, + 0x6d, 0x65, 0x64, 0x10, 0xb4, 0x22, 0x12, 0x15, 0x0a, 0x10, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, + 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x64, 0x69, 0x6e, 0x67, 0x10, 0xb5, 0x22, 0x12, 0x18, 0x0a, + 0x13, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xb6, 0x22, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x72, 0x61, 0x67, 0x6f, + 0x6e, 0x4e, 0x6f, 0x74, 0x41, 0x64, 0x75, 0x6c, 0x74, 0x44, 0x64, 0x72, 0x61, 0x67, 0x6f, 0x6e, + 0x10, 0xb7, 0x22, 0x12, 0x14, 0x0a, 0x0f, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x4d, 0x61, 0x78, + 0x4c, 0x76, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xb8, 0x22, 0x12, 0x19, 0x0a, 0x14, 0x52, 0x65, 0x70, + 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x46, 0x75, 0x6c, + 0x6c, 0x10, 0x95, 0x23, 0x12, 0x1a, 0x0a, 0x15, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x4e, 0x6f, 0x50, 0x72, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x76, 0x10, 0x96, 0x23, + 0x12, 0x15, 0x0a, 0x10, 0x4f, 0x6c, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x63, 0x65, + 0x69, 0x76, 0x65, 0x64, 0x10, 0xf9, 0x23, 0x12, 0x15, 0x0a, 0x10, 0x4f, 0x6c, 0x64, 0x74, 0x69, + 0x6d, 0x65, 0x73, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xfa, 0x23, 0x12, 0x16, + 0x0a, 0x11, 0x4f, 0x6c, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x4f, + 0x76, 0x65, 0x72, 0x10, 0xfb, 0x23, 0x12, 0x1f, 0x0a, 0x1a, 0x4f, 0x6c, 0x64, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x50, 0x72, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, + 0x73, 0x68, 0x65, 0x64, 0x10, 0xfc, 0x23, 0x12, 0x1a, 0x0a, 0x15, 0x4f, 0x6c, 0x64, 0x74, 0x69, + 0x6d, 0x65, 0x73, 0x4e, 0x6f, 0x41, 0x6c, 0x6c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, + 0x10, 0xfd, 0x23, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x61, 0x73, 0x73, 0x6f, 0x6e, 0x48, 0x65, 0x72, + 0x6f, 0x4e, 0x75, 0x6d, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xdd, 0x24, + 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x61, 0x73, 0x73, 0x6f, 0x6e, 0x48, 0x65, 0x72, 0x6f, 0x55, 0x6e, + 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0xde, 0x24, 0x12, 0x17, 0x0a, 0x12, + 0x50, 0x61, 0x73, 0x73, 0x6f, 0x6e, 0x53, 0x65, 0x61, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x45, + 0x72, 0x72, 0x10, 0xdf, 0x24, 0x12, 0x13, 0x0a, 0x0e, 0x57, 0x61, 0x72, 0x6f, 0x72, 0x64, 0x65, + 0x72, 0x4e, 0x6f, 0x4f, 0x70, 0x65, 0x6e, 0x10, 0xc1, 0x25, 0x12, 0x21, 0x0a, 0x1c, 0x53, 0x74, + 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x10, 0xa5, 0x26, 0x12, 0x21, 0x0a, + 0x1c, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x70, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x42, 0x55, 0x66, 0x66, 0x10, 0xa6, 0x26, + 0x12, 0x18, 0x0a, 0x13, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x6f, + 0x72, 0x74, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x10, 0xa7, 0x26, 0x12, 0x1e, 0x0a, 0x19, 0x53, 0x74, + 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x52, 0x6f, 0x6f, + 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xa8, 0x26, 0x12, 0x1d, 0x0a, 0x18, 0x53, 0x74, + 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xa9, 0x26, 0x12, 0x1d, 0x0a, 0x18, 0x53, 0x74, 0x6f, + 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x47, 0x6f, 0x74, 0x6f, 0x52, 0x6f, 0x6f, 0x6d, 0x46, + 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xaa, 0x26, 0x12, 0x1e, 0x0a, 0x19, 0x53, 0x74, 0x6f, 0x6e, + 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x42, 0x6f, 0x78, 0x46, + 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xab, 0x26, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x74, 0x6f, 0x6e, + 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, + 0x10, 0xac, 0x26, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, + 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x4d, 0x61, 0x78, 0x10, 0xad, 0x26, 0x12, 0x16, 0x0a, 0x11, + 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x61, 0x6e, 0x74, 0x42, 0x75, + 0x79, 0x10, 0xae, 0x26, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, + 0x67, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x10, 0xaf, + 0x26, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x62, + 0x75, 0x66, 0x66, 0x52, 0x65, 0x73, 0x65, 0x74, 0x45, 0x72, 0x72, 0x10, 0xb0, 0x26, 0x12, 0x11, + 0x0a, 0x0c, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x4f, 0x76, 0x65, 0x72, 0x10, 0x89, + 0x27, 0x12, 0x15, 0x0a, 0x10, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x55, 0x6e, 0x4f, + 0x70, 0x65, 0x6e, 0x65, 0x64, 0x10, 0x8a, 0x27, 0x12, 0x18, 0x0a, 0x13, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x69, 0x74, 0x79, 0x52, 0x65, 0x70, 0x61, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, + 0x8b, 0x27, 0x12, 0x16, 0x0a, 0x11, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x4e, 0x6f, + 0x74, 0x49, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x10, 0x8c, 0x27, 0x12, 0x14, 0x0a, 0x0f, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x8d, 0x27, + 0x12, 0x17, 0x0a, 0x12, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x43, 0x61, 0x6e, 0x74, + 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x8e, 0x27, 0x12, 0x1c, 0x0a, 0x17, 0x43, 0x61, 0x70, + 0x74, 0x75, 0x72, 0x65, 0x73, 0x68, 0x65, 0x65, 0x70, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x6c, 0x6f, + 0x73, 0x65, 0x65, 0x64, 0x10, 0xed, 0x27, 0x12, 0x16, 0x0a, 0x11, 0x45, 0x6e, 0x74, 0x65, 0x72, + 0x74, 0x61, 0x69, 0x6e, 0x43, 0x61, 0x6e, 0x74, 0x53, 0x77, 0x61, 0x70, 0x10, 0xd1, 0x28, 0x12, + 0x15, 0x0a, 0x10, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4e, 0x6f, 0x50, 0x6f, + 0x77, 0x65, 0x72, 0x10, 0xd2, 0x28, 0x12, 0x19, 0x0a, 0x14, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, + 0x61, 0x69, 0x6e, 0x4e, 0x6f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x10, 0xd3, + 0x28, 0x12, 0x16, 0x0a, 0x11, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4e, 0x6f, + 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x10, 0xd4, 0x28, 0x12, 0x1a, 0x0a, 0x15, 0x45, 0x6e, 0x74, + 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x61, 0x69, 0x6c, + 0x65, 0x64, 0x10, 0xd5, 0x28, 0x12, 0x1b, 0x0a, 0x16, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, + 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x52, 0x65, 0x61, 0x64, 0x79, 0x10, + 0xd6, 0x28, 0x12, 0x17, 0x0a, 0x12, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4e, + 0x6f, 0x74, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x10, 0xd7, 0x28, 0x12, 0x1c, 0x0a, 0x17, 0x45, + 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x44, 0x69, 0x73, 0x73, 0x6f, 0x6c, 0x76, 0x65, + 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd8, 0x28, 0x12, 0x18, 0x0a, 0x13, 0x45, 0x6e, 0x74, + 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x42, 0x6f, 0x78, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, + 0x10, 0xd9, 0x28, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x33, } var ( diff --git a/pb/hero_db.pb.go b/pb/hero_db.pb.go index d0739268e..10159f7ca 100644 --- a/pb/hero_db.pb.go +++ b/pb/hero_db.pb.go @@ -362,6 +362,10 @@ type DBHeroRecord struct { WishHero string `protobuf:"bytes,19,opt,name=wishHero,proto3" json:"wishHero"` // 当前许愿英雄 (默认值为0 需客户端 查表读取默认字段) Peachreward bool `protobuf:"varint,20,opt,name=peachreward,proto3" json:"peachreward"` // 圣桃结实已领取奖励 Newcomplete bool `protobuf:"varint,21,opt,name=newcomplete,proto3" json:"newcomplete"` // 完成新手招募招募 + Selectcount int32 `protobuf:"varint,22,opt,name=selectcount,proto3" json:"selectcount"` // 当前已经尝试的次数 + Cur []string `protobuf:"bytes,23,rep,name=cur,proto3" json:"cur"` // 当前结果 + Rst1 []string `protobuf:"bytes,24,rep,name=rst1,proto3" json:"rst1"` // 结果1 + Rst2 []string `protobuf:"bytes,25,rep,name=rst2,proto3" json:"rst2"` // 结果2 } func (x *DBHeroRecord) Reset() { @@ -529,6 +533,34 @@ func (x *DBHeroRecord) GetNewcomplete() bool { return false } +func (x *DBHeroRecord) GetSelectcount() int32 { + if x != nil { + return x.Selectcount + } + return 0 +} + +func (x *DBHeroRecord) GetCur() []string { + if x != nil { + return x.Cur + } + return nil +} + +func (x *DBHeroRecord) GetRst1() []string { + if x != nil { + return x.Rst1 + } + return nil +} + +func (x *DBHeroRecord) GetRst2() []string { + if x != nil { + return x.Rst2 + } + return nil +} + // 英雄天赋系统 type DBHeroTalent struct { state protoimpl.MessageState @@ -601,94 +633,6 @@ func (x *DBHeroTalent) GetTalent() map[int32]int32 { return nil } -// 指定召唤功能 -type DBSelectDraw struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID 主键id - Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID - Count int32 `protobuf:"varint,3,opt,name=count,proto3" json:"count"` // 当前已经尝试的次数 - Cur []string `protobuf:"bytes,4,rep,name=cur,proto3" json:"cur"` // 当前结果 - Rst1 []string `protobuf:"bytes,5,rep,name=rst1,proto3" json:"rst1"` // 结果1 - Rst2 []string `protobuf:"bytes,6,rep,name=rst2,proto3" json:"rst2"` // 结果2 -} - -func (x *DBSelectDraw) Reset() { - *x = DBSelectDraw{} - if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_db_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DBSelectDraw) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DBSelectDraw) ProtoMessage() {} - -func (x *DBSelectDraw) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_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 DBSelectDraw.ProtoReflect.Descriptor instead. -func (*DBSelectDraw) Descriptor() ([]byte, []int) { - return file_hero_hero_db_proto_rawDescGZIP(), []int{3} -} - -func (x *DBSelectDraw) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *DBSelectDraw) GetUid() string { - if x != nil { - return x.Uid - } - return "" -} - -func (x *DBSelectDraw) GetCount() int32 { - if x != nil { - return x.Count - } - return 0 -} - -func (x *DBSelectDraw) GetCur() []string { - if x != nil { - return x.Cur - } - return nil -} - -func (x *DBSelectDraw) GetRst1() []string { - if x != nil { - return x.Rst1 - } - return nil -} - -func (x *DBSelectDraw) GetRst2() []string { - if x != nil { - return x.Rst2 - } - return nil -} - var File_hero_hero_db_proto protoreflect.FileDescriptor var file_hero_hero_db_proto_rawDesc = []byte{ @@ -786,7 +730,7 @@ var file_hero_hero_db_proto_rawDesc = []byte{ 0x72, 0x73, 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, 0x22, 0xf8, 0x09, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, + 0x02, 0x38, 0x01, 0x22, 0xd4, 0x0a, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 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, 0x14, 0x0a, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x18, @@ -832,64 +776,62 @@ var file_hero_hero_db_proto_rawDesc = []byte{ 0x68, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x65, 0x61, 0x63, 0x68, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6e, 0x65, 0x77, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0b, 0x6e, 0x65, 0x77, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x3c, 0x0a, 0x0e, - 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 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, 0x3c, 0x0a, 0x0e, 0x53, 0x74, - 0x61, 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 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, + 0x0b, 0x6e, 0x65, 0x77, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x0b, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x10, + 0x0a, 0x03, 0x63, 0x75, 0x72, 0x18, 0x17, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x63, 0x75, 0x72, + 0x12, 0x12, 0x0a, 0x04, 0x72, 0x73, 0x74, 0x31, 0x18, 0x18, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, + 0x72, 0x73, 0x74, 0x31, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x73, 0x74, 0x32, 0x18, 0x19, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x04, 0x72, 0x73, 0x74, 0x32, 0x1a, 0x3c, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 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, 0x3c, 0x0a, 0x0e, 0x53, 0x74, 0x61, 0x72, 0x35, 0x48, + 0x65, 0x72, 0x6f, 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, 0x37, 0x0a, 0x09, 0x52, 0x61, 0x63, 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, 0x39, 0x0a, + 0x0b, 0x42, 0x61, 0x6f, 0x64, 0x69, 0x34, 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, 0x37, 0x0a, 0x09, 0x52, 0x61, 0x63, 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, 0x39, 0x0a, 0x0b, 0x42, 0x61, 0x6f, 0x64, 0x69, 0x34, 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, 0x39, 0x0a, 0x0b, - 0x42, 0x61, 0x6f, 0x64, 0x69, 0x35, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x42, 0x61, 0x6f, 0x64, + 0x69, 0x35, 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, 0x43, 0x6f, 0x75, 0x6e, 0x74, 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, 0x50, 0x65, 0x61, 0x63, 0x68, 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, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, 0x0a, 0x4c, 0x69, 0x6d, 0x69, 0x74, 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, 0x50, 0x65, 0x61, 0x63, 0x68, 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, 0x08, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, 0x0a, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 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, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x57, 0x69, 0x73, 0x68, 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, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb6, - 0x01, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 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, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x06, 0x74, 0x61, 0x6c, - 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x48, 0x65, - 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x1a, 0x39, 0x0a, 0x0b, - 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 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, 0x80, 0x01, 0x0a, 0x0c, 0x44, 0x42, 0x53, 0x65, - 0x6c, 0x65, 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 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, 0x14, 0x0a, 0x05, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x10, 0x0a, 0x03, 0x63, 0x75, 0x72, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x63, - 0x75, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x73, 0x74, 0x31, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x04, 0x72, 0x73, 0x74, 0x31, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x73, 0x74, 0x32, 0x18, 0x06, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x72, 0x73, 0x74, 0x32, 0x2a, 0x2f, 0x0a, 0x08, 0x48, 0x65, - 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, - 0x70, 0x65, 0x4e, 0x69, 0x6c, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x54, - 0x79, 0x70, 0x65, 0x4b, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x10, 0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e, - 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x57, 0x69, 0x73, 0x68, 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, 0x03, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb6, 0x01, 0x0a, 0x0c, 0x44, + 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 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, 0x16, 0x0a, + 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, + 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, + 0x6c, 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x52, 0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x1a, 0x39, 0x0a, 0x0b, 0x54, 0x61, 0x6c, 0x65, + 0x6e, 0x74, 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, 0x2a, 0x2f, 0x0a, 0x08, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x0f, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x69, 0x6c, 0x10, 0x00, + 0x12, 0x12, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4b, 0x6f, 0x6e, 0x67, + 0x46, 0x75, 0x10, 0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -905,55 +847,54 @@ func file_hero_hero_db_proto_rawDescGZIP() []byte { } var file_hero_hero_db_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_hero_hero_db_proto_msgTypes = make([]protoimpl.MessageInfo, 20) +var file_hero_hero_db_proto_msgTypes = make([]protoimpl.MessageInfo, 19) var file_hero_hero_db_proto_goTypes = []interface{}{ (HeroType)(0), // 0: HeroType (*DBHero)(nil), // 1: DBHero (*DBHeroRecord)(nil), // 2: DBHeroRecord (*DBHeroTalent)(nil), // 3: DBHeroTalent - (*DBSelectDraw)(nil), // 4: DBSelectDraw - nil, // 5: DBHero.PropertyEntry - nil, // 6: DBHero.AddPropertyEntry - nil, // 7: DBHero.JuexPropertyEntry - nil, // 8: DBHero.TalentPropertyEntry - nil, // 9: DBHero.HoroscopePropertyEntry - nil, // 10: DBHero.FettersEntry - nil, // 11: DBHeroRecord.ConditionEntry - nil, // 12: DBHeroRecord.Star5HeroEntry - nil, // 13: DBHeroRecord.RaceEntry - nil, // 14: DBHeroRecord.Baodi4Entry - nil, // 15: DBHeroRecord.Baodi5Entry - nil, // 16: DBHeroRecord.CountEntry - nil, // 17: DBHeroRecord.PeachEntry - nil, // 18: DBHeroRecord.LimitEntry - nil, // 19: DBHeroRecord.WishEntry - nil, // 20: DBHeroTalent.TalentEntry - (*SkillData)(nil), // 21: SkillData - (*DB_EquipmentSuit)(nil), // 22: DB_EquipmentSuit + nil, // 4: DBHero.PropertyEntry + nil, // 5: DBHero.AddPropertyEntry + nil, // 6: DBHero.JuexPropertyEntry + nil, // 7: DBHero.TalentPropertyEntry + nil, // 8: DBHero.HoroscopePropertyEntry + nil, // 9: DBHero.FettersEntry + nil, // 10: DBHeroRecord.ConditionEntry + nil, // 11: DBHeroRecord.Star5HeroEntry + nil, // 12: DBHeroRecord.RaceEntry + nil, // 13: DBHeroRecord.Baodi4Entry + nil, // 14: DBHeroRecord.Baodi5Entry + nil, // 15: DBHeroRecord.CountEntry + nil, // 16: DBHeroRecord.PeachEntry + nil, // 17: DBHeroRecord.LimitEntry + nil, // 18: DBHeroRecord.WishEntry + nil, // 19: DBHeroTalent.TalentEntry + (*SkillData)(nil), // 20: SkillData + (*DB_EquipmentSuit)(nil), // 21: DB_EquipmentSuit } var file_hero_hero_db_proto_depIdxs = []int32{ - 21, // 0: DBHero.normalSkill:type_name -> SkillData - 5, // 1: DBHero.property:type_name -> DBHero.PropertyEntry - 6, // 2: DBHero.addProperty:type_name -> DBHero.AddPropertyEntry - 7, // 3: DBHero.juexProperty:type_name -> DBHero.JuexPropertyEntry + 20, // 0: DBHero.normalSkill:type_name -> SkillData + 4, // 1: DBHero.property:type_name -> DBHero.PropertyEntry + 5, // 2: DBHero.addProperty:type_name -> DBHero.AddPropertyEntry + 6, // 3: DBHero.juexProperty:type_name -> DBHero.JuexPropertyEntry 0, // 4: DBHero.status:type_name -> HeroType - 22, // 5: DBHero.suits:type_name -> DB_EquipmentSuit - 8, // 6: DBHero.talentProperty:type_name -> DBHero.TalentPropertyEntry - 21, // 7: DBHero.equipSkill:type_name -> SkillData - 9, // 8: DBHero.horoscopeProperty:type_name -> DBHero.HoroscopePropertyEntry - 10, // 9: DBHero.fetters:type_name -> DBHero.FettersEntry - 21, // 10: DBHero.awakenskill:type_name -> SkillData - 21, // 11: DBHero.talentskill:type_name -> SkillData - 11, // 12: DBHeroRecord.condition:type_name -> DBHeroRecord.ConditionEntry - 12, // 13: DBHeroRecord.star5Hero:type_name -> DBHeroRecord.Star5HeroEntry - 13, // 14: DBHeroRecord.race:type_name -> DBHeroRecord.RaceEntry - 14, // 15: DBHeroRecord.baodi4:type_name -> DBHeroRecord.Baodi4Entry - 15, // 16: DBHeroRecord.baodi5:type_name -> DBHeroRecord.Baodi5Entry - 16, // 17: DBHeroRecord.count:type_name -> DBHeroRecord.CountEntry - 17, // 18: DBHeroRecord.peach:type_name -> DBHeroRecord.PeachEntry - 18, // 19: DBHeroRecord.limit:type_name -> DBHeroRecord.LimitEntry - 19, // 20: DBHeroRecord.wish:type_name -> DBHeroRecord.WishEntry - 20, // 21: DBHeroTalent.talent:type_name -> DBHeroTalent.TalentEntry + 21, // 5: DBHero.suits:type_name -> DB_EquipmentSuit + 7, // 6: DBHero.talentProperty:type_name -> DBHero.TalentPropertyEntry + 20, // 7: DBHero.equipSkill:type_name -> SkillData + 8, // 8: DBHero.horoscopeProperty:type_name -> DBHero.HoroscopePropertyEntry + 9, // 9: DBHero.fetters:type_name -> DBHero.FettersEntry + 20, // 10: DBHero.awakenskill:type_name -> SkillData + 20, // 11: DBHero.talentskill:type_name -> SkillData + 10, // 12: DBHeroRecord.condition:type_name -> DBHeroRecord.ConditionEntry + 11, // 13: DBHeroRecord.star5Hero:type_name -> DBHeroRecord.Star5HeroEntry + 12, // 14: DBHeroRecord.race:type_name -> DBHeroRecord.RaceEntry + 13, // 15: DBHeroRecord.baodi4:type_name -> DBHeroRecord.Baodi4Entry + 14, // 16: DBHeroRecord.baodi5:type_name -> DBHeroRecord.Baodi5Entry + 15, // 17: DBHeroRecord.count:type_name -> DBHeroRecord.CountEntry + 16, // 18: DBHeroRecord.peach:type_name -> DBHeroRecord.PeachEntry + 17, // 19: DBHeroRecord.limit:type_name -> DBHeroRecord.LimitEntry + 18, // 20: DBHeroRecord.wish:type_name -> DBHeroRecord.WishEntry + 19, // 21: DBHeroTalent.talent:type_name -> DBHeroTalent.TalentEntry 22, // [22:22] is the sub-list for method output_type 22, // [22:22] is the sub-list for method input_type 22, // [22:22] is the sub-list for extension type_name @@ -1005,18 +946,6 @@ func file_hero_hero_db_proto_init() { return nil } } - file_hero_hero_db_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DBSelectDraw); 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{ @@ -1024,7 +953,7 @@ func file_hero_hero_db_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_hero_hero_db_proto_rawDesc, NumEnums: 1, - NumMessages: 20, + NumMessages: 19, NumExtensions: 0, NumServices: 0, }, diff --git a/pb/hero_msg.pb.go b/pb/hero_msg.pb.go index 5911fd211..d8ae91e36 100644 --- a/pb/hero_msg.pb.go +++ b/pb/hero_msg.pb.go @@ -2062,92 +2062,6 @@ func (x *HeroAppointHeroResp) GetHeroid() string { return "" } -// 选择抽卡协议 -type HeroSelectGetListReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *HeroSelectGetListReq) Reset() { - *x = HeroSelectGetListReq{} - if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[39] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *HeroSelectGetListReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*HeroSelectGetListReq) ProtoMessage() {} - -func (x *HeroSelectGetListReq) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[39] - 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 HeroSelectGetListReq.ProtoReflect.Descriptor instead. -func (*HeroSelectGetListReq) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{39} -} - -type HeroSelectGetListResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Data *DBSelectDraw `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` -} - -func (x *HeroSelectGetListResp) Reset() { - *x = HeroSelectGetListResp{} - if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[40] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *HeroSelectGetListResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*HeroSelectGetListResp) ProtoMessage() {} - -func (x *HeroSelectGetListResp) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[40] - 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 HeroSelectGetListResp.ProtoReflect.Descriptor instead. -func (*HeroSelectGetListResp) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{40} -} - -func (x *HeroSelectGetListResp) GetData() *DBSelectDraw { - if x != nil { - return x.Data - } - return nil -} - // 选择抽卡协议 type HeroSelectDrawReq struct { state protoimpl.MessageState @@ -2158,7 +2072,7 @@ type HeroSelectDrawReq struct { func (x *HeroSelectDrawReq) Reset() { *x = HeroSelectDrawReq{} if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[41] + mi := &file_hero_hero_msg_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2171,7 +2085,7 @@ func (x *HeroSelectDrawReq) String() string { func (*HeroSelectDrawReq) ProtoMessage() {} func (x *HeroSelectDrawReq) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[41] + mi := &file_hero_hero_msg_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2184,7 +2098,7 @@ func (x *HeroSelectDrawReq) ProtoReflect() protoreflect.Message { // Deprecated: Use HeroSelectDrawReq.ProtoReflect.Descriptor instead. func (*HeroSelectDrawReq) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{41} + return file_hero_hero_msg_proto_rawDescGZIP(), []int{39} } type HeroSelectDrawResp struct { @@ -2192,13 +2106,13 @@ type HeroSelectDrawResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Data *DBSelectDraw `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` // 抽卡结果 + Record *DBHeroRecord `protobuf:"bytes,1,opt,name=record,proto3" json:"record"` // 扩展数据 } func (x *HeroSelectDrawResp) Reset() { *x = HeroSelectDrawResp{} if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[42] + mi := &file_hero_hero_msg_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2211,7 +2125,7 @@ func (x *HeroSelectDrawResp) String() string { func (*HeroSelectDrawResp) ProtoMessage() {} func (x *HeroSelectDrawResp) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[42] + mi := &file_hero_hero_msg_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2224,12 +2138,12 @@ func (x *HeroSelectDrawResp) ProtoReflect() protoreflect.Message { // Deprecated: Use HeroSelectDrawResp.ProtoReflect.Descriptor instead. func (*HeroSelectDrawResp) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{42} + return file_hero_hero_msg_proto_rawDescGZIP(), []int{40} } -func (x *HeroSelectDrawResp) GetData() *DBSelectDraw { +func (x *HeroSelectDrawResp) GetRecord() *DBHeroRecord { if x != nil { - return x.Data + return x.Record } return nil } @@ -2245,7 +2159,7 @@ type HeroSaveCardReq struct { func (x *HeroSaveCardReq) Reset() { *x = HeroSaveCardReq{} if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[43] + mi := &file_hero_hero_msg_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2258,7 +2172,7 @@ func (x *HeroSaveCardReq) String() string { func (*HeroSaveCardReq) ProtoMessage() {} func (x *HeroSaveCardReq) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[43] + mi := &file_hero_hero_msg_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2271,7 +2185,7 @@ func (x *HeroSaveCardReq) ProtoReflect() protoreflect.Message { // Deprecated: Use HeroSaveCardReq.ProtoReflect.Descriptor instead. func (*HeroSaveCardReq) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{43} + return file_hero_hero_msg_proto_rawDescGZIP(), []int{41} } func (x *HeroSaveCardReq) GetIndex() int32 { @@ -2286,13 +2200,13 @@ type HeroSaveCardResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Data *DBSelectDraw `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` // 抽卡结果 + Record *DBHeroRecord `protobuf:"bytes,1,opt,name=record,proto3" json:"record"` // 扩展数据 } func (x *HeroSaveCardResp) Reset() { *x = HeroSaveCardResp{} if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[44] + mi := &file_hero_hero_msg_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2305,7 +2219,7 @@ func (x *HeroSaveCardResp) String() string { func (*HeroSaveCardResp) ProtoMessage() {} func (x *HeroSaveCardResp) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[44] + mi := &file_hero_hero_msg_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2318,12 +2232,12 @@ func (x *HeroSaveCardResp) ProtoReflect() protoreflect.Message { // Deprecated: Use HeroSaveCardResp.ProtoReflect.Descriptor instead. func (*HeroSaveCardResp) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{44} + return file_hero_hero_msg_proto_rawDescGZIP(), []int{42} } -func (x *HeroSaveCardResp) GetData() *DBSelectDraw { +func (x *HeroSaveCardResp) GetRecord() *DBHeroRecord { if x != nil { - return x.Data + return x.Record } return nil } @@ -2340,7 +2254,7 @@ type HeroSelectCardReq struct { func (x *HeroSelectCardReq) Reset() { *x = HeroSelectCardReq{} if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[45] + mi := &file_hero_hero_msg_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2353,7 +2267,7 @@ func (x *HeroSelectCardReq) String() string { func (*HeroSelectCardReq) ProtoMessage() {} func (x *HeroSelectCardReq) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[45] + mi := &file_hero_hero_msg_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2366,7 +2280,7 @@ func (x *HeroSelectCardReq) ProtoReflect() protoreflect.Message { // Deprecated: Use HeroSelectCardReq.ProtoReflect.Descriptor instead. func (*HeroSelectCardReq) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{45} + return file_hero_hero_msg_proto_rawDescGZIP(), []int{43} } func (x *HeroSelectCardReq) GetIndex() int32 { @@ -2381,14 +2295,14 @@ type HeroSelectCardResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Data *DBSelectDraw `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` // 抽卡结果 - Atno []*AtnoData `protobuf:"bytes,2,rep,name=atno,proto3" json:"atno"` // 奖励 + Record *DBHeroRecord `protobuf:"bytes,1,opt,name=record,proto3" json:"record"` // 扩展数据 + Atno []*AtnoData `protobuf:"bytes,2,rep,name=atno,proto3" json:"atno"` // 奖励 } func (x *HeroSelectCardResp) Reset() { *x = HeroSelectCardResp{} if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[46] + mi := &file_hero_hero_msg_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2401,7 +2315,7 @@ func (x *HeroSelectCardResp) String() string { func (*HeroSelectCardResp) ProtoMessage() {} func (x *HeroSelectCardResp) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[46] + mi := &file_hero_hero_msg_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2414,12 +2328,12 @@ func (x *HeroSelectCardResp) ProtoReflect() protoreflect.Message { // Deprecated: Use HeroSelectCardResp.ProtoReflect.Descriptor instead. func (*HeroSelectCardResp) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{46} + return file_hero_hero_msg_proto_rawDescGZIP(), []int{44} } -func (x *HeroSelectCardResp) GetData() *DBSelectDraw { +func (x *HeroSelectCardResp) GetRecord() *DBHeroRecord { if x != nil { - return x.Data + return x.Record } return nil } @@ -2633,32 +2547,28 @@ var file_hero_hero_msg_proto_rawDesc = []byte{ 0x65, 0x72, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x72, 0x61, 0x77, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x72, 0x61, 0x77, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x22, 0x16, 0x0a, 0x14, 0x48, - 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x71, 0x22, 0x3a, 0x0a, 0x15, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x21, 0x0a, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x53, - 0x65, 0x6c, 0x65, 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, - 0x13, 0x0a, 0x11, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x44, 0x72, 0x61, - 0x77, 0x52, 0x65, 0x71, 0x22, 0x37, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 0x52, 0x65, 0x73, 0x70, 0x12, 0x21, 0x0a, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x53, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x27, 0x0a, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x22, 0x13, 0x0a, 0x11, 0x48, + 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 0x52, 0x65, 0x71, + 0x22, 0x3b, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x44, 0x72, + 0x61, 0x77, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, + 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x27, 0x0a, 0x0f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x35, 0x0a, 0x10, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x61, - 0x76, 0x65, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x21, 0x0a, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x53, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x29, 0x0a, - 0x11, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, - 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x56, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, - 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x21, - 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, - 0x42, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 0x52, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x12, 0x1d, 0x0a, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x09, 0x2e, 0x41, 0x74, 0x6e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x61, 0x74, 0x6e, 0x6f, - 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x39, 0x0a, 0x10, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x61, + 0x76, 0x65, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, + 0x63, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, + 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, + 0x64, 0x22, 0x29, 0x0a, 0x11, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, + 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x5a, 0x0a, 0x12, + 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, + 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x04, 0x61, 0x74, 0x6e, + 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x41, 0x74, 0x6e, 0x6f, 0x44, 0x61, + 0x74, 0x61, 0x52, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2673,7 +2583,7 @@ func file_hero_hero_msg_proto_rawDescGZIP() []byte { return file_hero_hero_msg_proto_rawDescData } -var file_hero_hero_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 54) +var file_hero_hero_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 52) var file_hero_hero_msg_proto_goTypes = []interface{}{ (*HeroInfoReq)(nil), // 0: HeroInfoReq (*HeroInfoResp)(nil), // 1: HeroInfoResp @@ -2714,63 +2624,59 @@ var file_hero_hero_msg_proto_goTypes = []interface{}{ (*HeroPeachRewardResp)(nil), // 36: HeroPeachRewardResp (*HeroAppointHeroReq)(nil), // 37: HeroAppointHeroReq (*HeroAppointHeroResp)(nil), // 38: HeroAppointHeroResp - (*HeroSelectGetListReq)(nil), // 39: HeroSelectGetListReq - (*HeroSelectGetListResp)(nil), // 40: HeroSelectGetListResp - (*HeroSelectDrawReq)(nil), // 41: HeroSelectDrawReq - (*HeroSelectDrawResp)(nil), // 42: HeroSelectDrawResp - (*HeroSaveCardReq)(nil), // 43: HeroSaveCardReq - (*HeroSaveCardResp)(nil), // 44: HeroSaveCardResp - (*HeroSelectCardReq)(nil), // 45: HeroSelectCardReq - (*HeroSelectCardResp)(nil), // 46: HeroSelectCardResp - nil, // 47: HeroStrengthenUplvReq.ItemEntry - nil, // 48: HeroStrengthenUpSkillReq.ItemEntry - nil, // 49: HeroPropertyPush.PropertyEntry - nil, // 50: HeroPropertyPush.AddPropertyEntry - nil, // 51: HeroDrawCardResp.FirstGetEntry - nil, // 52: HeroFusionReq.HerosEntry - nil, // 53: HeroPeachRewardResp.PeachEntry - (*DBHero)(nil), // 54: DBHero - (*UserAtno)(nil), // 55: UserAtno - (*DBHeroRecord)(nil), // 56: DBHeroRecord - (*DBHeroTalent)(nil), // 57: DBHeroTalent - (*DBSelectDraw)(nil), // 58: DBSelectDraw + (*HeroSelectDrawReq)(nil), // 39: HeroSelectDrawReq + (*HeroSelectDrawResp)(nil), // 40: HeroSelectDrawResp + (*HeroSaveCardReq)(nil), // 41: HeroSaveCardReq + (*HeroSaveCardResp)(nil), // 42: HeroSaveCardResp + (*HeroSelectCardReq)(nil), // 43: HeroSelectCardReq + (*HeroSelectCardResp)(nil), // 44: HeroSelectCardResp + nil, // 45: HeroStrengthenUplvReq.ItemEntry + nil, // 46: HeroStrengthenUpSkillReq.ItemEntry + nil, // 47: HeroPropertyPush.PropertyEntry + nil, // 48: HeroPropertyPush.AddPropertyEntry + nil, // 49: HeroDrawCardResp.FirstGetEntry + nil, // 50: HeroFusionReq.HerosEntry + nil, // 51: HeroPeachRewardResp.PeachEntry + (*DBHero)(nil), // 52: DBHero + (*UserAtno)(nil), // 53: UserAtno + (*DBHeroRecord)(nil), // 54: DBHeroRecord + (*DBHeroTalent)(nil), // 55: DBHeroTalent } var file_hero_hero_msg_proto_depIdxs = []int32{ - 54, // 0: HeroInfoResp.base:type_name -> DBHero - 54, // 1: HeroListResp.list:type_name -> DBHero - 47, // 2: HeroStrengthenUplvReq.item:type_name -> HeroStrengthenUplvReq.ItemEntry - 54, // 3: HeroStrengthenUplvResp.hero:type_name -> DBHero - 54, // 4: HeroStrengthenUpStarResp.hero:type_name -> DBHero - 48, // 5: HeroStrengthenUpSkillReq.item:type_name -> HeroStrengthenUpSkillReq.ItemEntry - 54, // 6: HeroStrengthenUpSkillResp.hero:type_name -> DBHero - 54, // 7: HeroAwakenResp.hero:type_name -> DBHero - 49, // 8: HeroPropertyPush.property:type_name -> HeroPropertyPush.PropertyEntry - 50, // 9: HeroPropertyPush.addProperty:type_name -> HeroPropertyPush.AddPropertyEntry - 54, // 10: HeroLockResp.hero:type_name -> DBHero - 54, // 11: HeroGetSpecifiedResp.hero:type_name -> DBHero - 55, // 12: AtnoData.atno:type_name -> UserAtno + 52, // 0: HeroInfoResp.base:type_name -> DBHero + 52, // 1: HeroListResp.list:type_name -> DBHero + 45, // 2: HeroStrengthenUplvReq.item:type_name -> HeroStrengthenUplvReq.ItemEntry + 52, // 3: HeroStrengthenUplvResp.hero:type_name -> DBHero + 52, // 4: HeroStrengthenUpStarResp.hero:type_name -> DBHero + 46, // 5: HeroStrengthenUpSkillReq.item:type_name -> HeroStrengthenUpSkillReq.ItemEntry + 52, // 6: HeroStrengthenUpSkillResp.hero:type_name -> DBHero + 52, // 7: HeroAwakenResp.hero:type_name -> DBHero + 47, // 8: HeroPropertyPush.property:type_name -> HeroPropertyPush.PropertyEntry + 48, // 9: HeroPropertyPush.addProperty:type_name -> HeroPropertyPush.AddPropertyEntry + 52, // 10: HeroLockResp.hero:type_name -> DBHero + 52, // 11: HeroGetSpecifiedResp.hero:type_name -> DBHero + 53, // 12: AtnoData.atno:type_name -> UserAtno 19, // 13: HeroDrawCardResp.data:type_name -> AtnoData - 55, // 14: HeroDrawCardResp.wish:type_name -> UserAtno - 56, // 15: HeroDrawCardResp.record:type_name -> DBHeroRecord - 51, // 16: HeroDrawCardResp.firstGet:type_name -> HeroDrawCardResp.FirstGetEntry - 54, // 17: HeroChangePush.list:type_name -> DBHero - 56, // 18: HeroDrawCardFloorResp.record:type_name -> DBHeroRecord - 52, // 19: HeroFusionReq.heros:type_name -> HeroFusionReq.HerosEntry - 57, // 20: HeroTalentListResp.telnet:type_name -> DBHeroTalent - 57, // 21: HeroTalentLearnResp.telnet:type_name -> DBHeroTalent - 57, // 22: HeroTalentResetResp.telnet:type_name -> DBHeroTalent - 53, // 23: HeroPeachRewardResp.peach:type_name -> HeroPeachRewardResp.PeachEntry - 55, // 24: HeroPeachRewardResp.atno:type_name -> UserAtno - 58, // 25: HeroSelectGetListResp.data:type_name -> DBSelectDraw - 58, // 26: HeroSelectDrawResp.data:type_name -> DBSelectDraw - 58, // 27: HeroSaveCardResp.data:type_name -> DBSelectDraw - 58, // 28: HeroSelectCardResp.data:type_name -> DBSelectDraw - 19, // 29: HeroSelectCardResp.atno:type_name -> AtnoData - 30, // [30:30] is the sub-list for method output_type - 30, // [30:30] is the sub-list for method input_type - 30, // [30:30] is the sub-list for extension type_name - 30, // [30:30] is the sub-list for extension extendee - 0, // [0:30] is the sub-list for field type_name + 53, // 14: HeroDrawCardResp.wish:type_name -> UserAtno + 54, // 15: HeroDrawCardResp.record:type_name -> DBHeroRecord + 49, // 16: HeroDrawCardResp.firstGet:type_name -> HeroDrawCardResp.FirstGetEntry + 52, // 17: HeroChangePush.list:type_name -> DBHero + 54, // 18: HeroDrawCardFloorResp.record:type_name -> DBHeroRecord + 50, // 19: HeroFusionReq.heros:type_name -> HeroFusionReq.HerosEntry + 55, // 20: HeroTalentListResp.telnet:type_name -> DBHeroTalent + 55, // 21: HeroTalentLearnResp.telnet:type_name -> DBHeroTalent + 55, // 22: HeroTalentResetResp.telnet:type_name -> DBHeroTalent + 51, // 23: HeroPeachRewardResp.peach:type_name -> HeroPeachRewardResp.PeachEntry + 53, // 24: HeroPeachRewardResp.atno:type_name -> UserAtno + 54, // 25: HeroSelectDrawResp.record:type_name -> DBHeroRecord + 54, // 26: HeroSaveCardResp.record:type_name -> DBHeroRecord + 54, // 27: HeroSelectCardResp.record:type_name -> DBHeroRecord + 19, // 28: HeroSelectCardResp.atno:type_name -> AtnoData + 29, // [29:29] is the sub-list for method output_type + 29, // [29:29] is the sub-list for method input_type + 29, // [29:29] is the sub-list for extension type_name + 29, // [29:29] is the sub-list for extension extendee + 0, // [0:29] is the sub-list for field type_name } func init() { file_hero_hero_msg_proto_init() } @@ -3250,30 +3156,6 @@ func file_hero_hero_msg_proto_init() { } } file_hero_hero_msg_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HeroSelectGetListReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_hero_hero_msg_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HeroSelectGetListResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_hero_hero_msg_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroSelectDrawReq); i { case 0: return &v.state @@ -3285,7 +3167,7 @@ func file_hero_hero_msg_proto_init() { return nil } } - file_hero_hero_msg_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + file_hero_hero_msg_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroSelectDrawResp); i { case 0: return &v.state @@ -3297,7 +3179,7 @@ func file_hero_hero_msg_proto_init() { return nil } } - file_hero_hero_msg_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + file_hero_hero_msg_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroSaveCardReq); i { case 0: return &v.state @@ -3309,7 +3191,7 @@ func file_hero_hero_msg_proto_init() { return nil } } - file_hero_hero_msg_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + file_hero_hero_msg_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroSaveCardResp); i { case 0: return &v.state @@ -3321,7 +3203,7 @@ func file_hero_hero_msg_proto_init() { return nil } } - file_hero_hero_msg_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { + file_hero_hero_msg_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroSelectCardReq); i { case 0: return &v.state @@ -3333,7 +3215,7 @@ func file_hero_hero_msg_proto_init() { return nil } } - file_hero_hero_msg_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { + file_hero_hero_msg_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroSelectCardResp); i { case 0: return &v.state @@ -3352,7 +3234,7 @@ func file_hero_hero_msg_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_hero_hero_msg_proto_rawDesc, NumEnums: 0, - NumMessages: 54, + NumMessages: 52, NumExtensions: 0, NumServices: 0, }, diff --git a/sys/configure/structs/Game.BuffEffectType.go b/sys/configure/structs/Game.BuffEffectType.go index 50a9b18f4..7a9749e29 100644 --- a/sys/configure/structs/Game.BuffEffectType.go +++ b/sys/configure/structs/Game.BuffEffectType.go @@ -20,4 +20,5 @@ const ( GameBuffEffectType_Overall = 8 GameBuffEffectType_Shifu = 9 GameBuffEffectType_Dot = 10 + GameBuffEffectType_CanRollBuff = 11 ) diff --git a/sys/configure/structs/Game.StoneStageData.go b/sys/configure/structs/Game.StoneStageData.go index aa07e6d30..225150682 100644 --- a/sys/configure/structs/Game.StoneStageData.go +++ b/sys/configure/structs/Game.StoneStageData.go @@ -12,6 +12,7 @@ import "errors" type GameStoneStageData struct { Id int32 + StageType int32 StageId int32 PreviouStage int32 StageName string @@ -36,6 +37,7 @@ func (*GameStoneStageData) GetTypeId() int32 { func (_v *GameStoneStageData)Deserialize(_buf map[string]interface{}) (err error) { { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Id"].(float64); !_ok_ { err = errors.New("Id error"); return }; _v.Id = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["StageType"].(float64); !_ok_ { err = errors.New("StageType error"); return }; _v.StageType = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["StageId"].(float64); !_ok_ { err = errors.New("StageId error"); return }; _v.StageId = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["PreviouStage"].(float64); !_ok_ { err = errors.New("PreviouStage error"); return }; _v.PreviouStage = int32(_tempNum_) } {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["StageName"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.StageName error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.StageName, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } } diff --git a/sys/configure/structs/game.globalData.go b/sys/configure/structs/game.globalData.go index 1c2c3fe86..fa449a1d6 100644 --- a/sys/configure/structs/game.globalData.go +++ b/sys/configure/structs/game.globalData.go @@ -265,6 +265,7 @@ type GameGlobalData struct { Playerexname string Initper *Gameatn Catchbugturn int32 + NewDrawcardAttemptsNums int32 } const TypeId_GameGlobalData = 477542761 @@ -1061,6 +1062,7 @@ func (_v *GameGlobalData)Deserialize(_buf map[string]interface{}) (err error) { { var _ok_ bool; if _v.Playerexname, _ok_ = _buf["playerexname"].(string); !_ok_ { err = errors.New("playerexname error"); return } } { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["initper"].(map[string]interface{}); !_ok_ { err = errors.New("initper error"); return }; if _v.Initper, err = DeserializeGameatn(_x_); err != nil { return } } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["catchbugturn"].(float64); !_ok_ { err = errors.New("catchbugturn error"); return }; _v.Catchbugturn = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["NewDrawcardAttempts_Nums"].(float64); !_ok_ { err = errors.New("NewDrawcardAttempts_Nums error"); return }; _v.NewDrawcardAttemptsNums = int32(_tempNum_) } return } From 98f1234891cb93a4efee0bdd67dc279a591bea54 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Mon, 4 Dec 2023 18:42:59 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E6=9C=80=E5=A4=A7=E6=AC=A1=E6=95=B0?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/hero/api_selectdraw.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/modules/hero/api_selectdraw.go b/modules/hero/api_selectdraw.go index 4da0848a0..0d2fe9809 100644 --- a/modules/hero/api_selectdraw.go +++ b/modules/hero/api_selectdraw.go @@ -57,11 +57,10 @@ func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDra return } - if cfgGlobal.NewDrawcardAttemptsNums >= heroRecord.Selectcount { // 次数校验 + if cfgGlobal.NewDrawcardAttemptsNums <= heroRecord.Selectcount { // 次数校验 errdata = &pb.ErrorData{ - Code: pb.ErrorCode_HeroSelectMaxCount, - Title: pb.ErrorCode_HeroSelectMaxCount.ToString(), - Message: err.Error(), + Code: pb.ErrorCode_HeroSelectMaxCount, + Title: pb.ErrorCode_HeroSelectMaxCount.ToString(), } return } @@ -225,6 +224,8 @@ func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDra return } - session.SendMsg(string(this.module.GetType()), "selectdraw", &pb.HeroSelectDrawResp{}) + session.SendMsg(string(this.module.GetType()), "selectdraw", &pb.HeroSelectDrawResp{ + Record: heroRecord, + }) return } From 5911673177ebab4942c71350f7b19841dffdc091 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Tue, 5 Dec 2023 10:02:09 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E6=96=B0=E6=89=8B=E6=8B=9B=E5=8B=9F?= =?UTF-8?q?=E5=8D=8F=E8=AE=AE=E6=95=B4=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/hero/api_drawCard.go | 135 +++++++-------- pb/hero_msg.pb.go | 310 +++++++++++++++++------------------ 2 files changed, 217 insertions(+), 228 deletions(-) diff --git a/modules/hero/api_drawCard.go b/modules/hero/api_drawCard.go index 854483347..87ee4886c 100644 --- a/modules/hero/api_drawCard.go +++ b/modules/hero/api_drawCard.go @@ -36,14 +36,29 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq atno []*pb.UserAtno IsBaodiPool bool // 是否是保底卡池 appointmap map[int32]string // 指定次数抽卡到指定卡池 - // 首次获得英雄 - firstGet map[string]bool - reward []*cfg.Gameatn // 许愿石奖励 + + reward []*cfg.Gameatn // 许愿石奖励 ) update = make(map[string]interface{}) appointmap = make(map[int32]string) - firstGet = make(map[string]bool) szCards = make([]string, 0) + if req.DrawType == 1 { // 新手抽卡校验 + if heroRecord.Newcomplete { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_HeroSelectDrawComplete, + Title: pb.ErrorCode_HeroSelectDrawComplete.ToString(), + } + return + } + if cfgGlobal.NewDrawcardAttemptsNums <= heroRecord.Selectcount { // 次数校验 + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_HeroSelectMaxCount, + Title: pb.ErrorCode_HeroSelectMaxCount.ToString(), + } + return + } + this.module.api.SelectDraw(session, nil) + } if heroRecord, err = this.module.modelRecord.GetHeroRecord(session.GetUserId()); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, @@ -102,12 +117,10 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq return } var hero *pb.DBHero - firstGet[heroRecord.WishHero] = false if hero, atno, errdata = this.module.ModuleHero.CreateOneHero(session, heroRecord.WishHero); errdata == nil { for _, v := range atno { if v.A == "hero" && v.T == heroRecord.WishHero && v.N == 1 { - firstGet[heroRecord.WishHero] = true if user, err := this.module.ModuleUser.GetUser(session.GetUserId()); err == nil { // 广播 首次获得英雄 if HeroConf, err := this.module.configure.GetHeroConfig(heroRecord.WishHero); err == nil { this.chat.SendSysChatToWorld(comm.ChatSystem13, hero, HeroConf.Star, 0, user.Name, v.T) @@ -130,7 +143,6 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq update["wish"] = heroRecord.Wish this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), update) } - rsp.FirstGet = firstGet session.SendMsg(string(this.module.GetType()), DrawCard, rsp) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "HeroDrawCardReq", atno) @@ -269,15 +281,6 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq } } } - //抽出5星英雄后A次抽奖内不会再抽到5星英雄(普通卡池+阵营卡池) - // if heroRecord.Race[req.DrawType] >= cfgGlobal.DrawCardContinuousRestrictionStar5 && Is5Star { - // if IsBaodiPool { - // strPool[len(strPool)-1] = drawConf.P3pool - // } else { - // strPool[len(strPool)-1] = drawConf.N3pool - // } - // Is5Star = false - // } } } // 通过卡池获得最终的英雄 @@ -309,68 +312,72 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq update["daycount"] = heroRecord.Daycount update["baodi4"] = heroRecord.Baodi4 update["baodi5"] = heroRecord.Baodi5 + if req.DrawType == 1 { + heroRecord.Selectcount += 1 // 抽卡次数+1 + heroRecord.Cur = szCards + update["selectcount"] = heroRecord.Selectcount + update["cur"] = heroRecord.Cur + } else { + for _, heroId := range szCards { + //var + var ( + hero *pb.DBHero + HeroConf *cfg.GameHeroData + ) + if HeroConf, err = this.module.configure.GetHeroConfig(heroId); err == nil { + szStar = append(szStar, HeroConf.Star) // 获得许愿石 + var tmp *cfg.Gameatn + if HeroConf.Star == 4 { + tmp = this.module.ModuleTools.GetGlobalConf().RewardStar4 + reward = append(reward, tmp) + } else if HeroConf.Star == 5 { + tmp = this.module.ModuleTools.GetGlobalConf().RewardStar5 + reward = append(reward, tmp) - for _, heroId := range szCards { - //var - var ( - hero *pb.DBHero - HeroConf *cfg.GameHeroData - ) - if HeroConf, err = this.module.configure.GetHeroConfig(heroId); err == nil { - szStar = append(szStar, HeroConf.Star) // 获得许愿石 - var tmp *cfg.Gameatn - if HeroConf.Star == 4 { - tmp = this.module.ModuleTools.GetGlobalConf().RewardStar4 - reward = append(reward, tmp) - } else if HeroConf.Star == 5 { - tmp = this.module.ModuleTools.GetGlobalConf().RewardStar5 - reward = append(reward, tmp) + if req.DrawType == comm.DrawCardType5 { // 限时招募 + if heroRecord.LimitHero == "" { + if conf := this.module.configure.GetApportHeroReplaceConfig(); conf != nil { + heroRecord.LimitHero = conf.InitHero + update["limitHero"] = heroRecord.LimitHero + } + } + heroId = heroRecord.LimitHero // 替换成心愿英雄 + } + } + if tmp != nil { + if rsp.Wish == nil { + rsp.Wish = &pb.UserAtno{ + A: tmp.A, + T: tmp.T, + N: tmp.N, + } + } else { + rsp.Wish.N += tmp.N + } + } + } - if req.DrawType == comm.DrawCardType5 { // 限时招募 - if heroRecord.LimitHero == "" { - if conf := this.module.configure.GetApportHeroReplaceConfig(); conf != nil { - heroRecord.LimitHero = conf.InitHero - update["limitHero"] = heroRecord.LimitHero + var atno []*pb.UserAtno + if hero, atno, errdata = this.module.ModuleHero.CreateOneHero(session, heroId); errdata == nil { + for _, v := range atno { + if v.A == "hero" && v.T == heroId && v.N == 1 { + if user, err := this.module.ModuleUser.GetUser(session.GetUserId()); err == nil { // 广播 首次获得英雄 + this.chat.SendSysChatToWorld(comm.ChatSystem13, hero, HeroConf.Star, 0, user.Name, v.T) } } - heroId = heroRecord.LimitHero // 替换成心愿英雄 } - } - if tmp != nil { - if rsp.Wish == nil { - rsp.Wish = &pb.UserAtno{ - A: tmp.A, - T: tmp.T, - N: tmp.N, - } - } else { - rsp.Wish.N += tmp.N - } - } - } - firstGet[heroId] = false - var atno []*pb.UserAtno - if hero, atno, errdata = this.module.ModuleHero.CreateOneHero(session, heroId); errdata == nil { - for _, v := range atno { - if v.A == "hero" && v.T == heroId && v.N == 1 { - firstGet[heroId] = true - if user, err := this.module.ModuleUser.GetUser(session.GetUserId()); err == nil { // 广播 首次获得英雄 - this.chat.SendSysChatToWorld(comm.ChatSystem13, hero, HeroConf.Star, 0, user.Name, v.T) - } - } + rsp.Data = append(rsp.Data, &pb.AtnoData{Atno: atno}) } - - rsp.Data = append(rsp.Data, &pb.AtnoData{Atno: atno}) } } + this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), update) // 发放许愿石奖励 if errdata, atno = this.module.DispenseAtno(session, reward, true); errdata != nil { return } - rsp.FirstGet = firstGet - this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), update) + session.SendMsg(string(this.module.GetType()), DrawCard, rsp) // 任务统计 this.module.SendTaskMsg(session, szStar, req.DrawCount, req.DrawType) diff --git a/pb/hero_msg.pb.go b/pb/hero_msg.pb.go index d8ae91e36..b0461f5f8 100644 --- a/pb/hero_msg.pb.go +++ b/pb/hero_msg.pb.go @@ -1071,10 +1071,9 @@ type HeroDrawCardResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Data []*AtnoData `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - Wish *UserAtno `protobuf:"bytes,2,opt,name=wish,proto3" json:"wish"` // 获得许愿石 - Record *DBHeroRecord `protobuf:"bytes,3,opt,name=record,proto3" json:"record"` // 扩展数据 - FirstGet map[string]bool `protobuf:"bytes,4,rep,name=firstGet,proto3" json:"firstGet" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 首次获得英雄 + Data []*AtnoData `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` + Wish *UserAtno `protobuf:"bytes,2,opt,name=wish,proto3" json:"wish"` // 获得许愿石 + Record *DBHeroRecord `protobuf:"bytes,3,opt,name=record,proto3" json:"record"` // 扩展数据 } func (x *HeroDrawCardResp) Reset() { @@ -1130,13 +1129,6 @@ func (x *HeroDrawCardResp) GetRecord() *DBHeroRecord { return nil } -func (x *HeroDrawCardResp) GetFirstGet() map[string]bool { - if x != nil { - return x.FirstGet - } - return nil -} - // 英雄变化推送 type HeroChangePush struct { state protoimpl.MessageState @@ -2451,124 +2443,116 @@ var file_hero_hero_msg_proto_rawDesc = []byte{ 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x22, 0x29, 0x0a, 0x08, 0x41, 0x74, 0x6e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, - 0x74, 0x6e, 0x6f, 0x52, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x22, 0xf1, 0x01, 0x0a, 0x10, 0x48, 0x65, - 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, - 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x41, - 0x74, 0x6e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, - 0x04, 0x77, 0x69, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x55, 0x73, - 0x65, 0x72, 0x41, 0x74, 0x6e, 0x6f, 0x52, 0x04, 0x77, 0x69, 0x73, 0x68, 0x12, 0x25, 0x0a, 0x06, - 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, - 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, - 0x6f, 0x72, 0x64, 0x12, 0x3b, 0x0a, 0x08, 0x66, 0x69, 0x72, 0x73, 0x74, 0x47, 0x65, 0x74, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, - 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x69, 0x72, 0x73, 0x74, 0x47, 0x65, - 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x66, 0x69, 0x72, 0x73, 0x74, 0x47, 0x65, 0x74, - 0x1a, 0x3b, 0x0a, 0x0d, 0x46, 0x69, 0x72, 0x73, 0x74, 0x47, 0x65, 0x74, 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, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x2d, 0x0a, - 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, - 0x1b, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x07, 0x2e, - 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x16, 0x0a, 0x14, - 0x48, 0x65, 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61, 0x72, 0x64, 0x46, 0x6c, 0x6f, 0x6f, - 0x72, 0x52, 0x65, 0x71, 0x22, 0x3e, 0x0a, 0x15, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, - 0x43, 0x61, 0x72, 0x64, 0x46, 0x6c, 0x6f, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, - 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, - 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, - 0x63, 0x6f, 0x72, 0x64, 0x22, 0x92, 0x01, 0x0a, 0x0d, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x75, 0x73, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x2f, - 0x0a, 0x05, 0x68, 0x65, 0x72, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, - 0x48, 0x65, 0x72, 0x6f, 0x46, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x2e, 0x48, 0x65, - 0x72, 0x6f, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x68, 0x65, 0x72, 0x6f, 0x73, 0x1a, - 0x38, 0x0a, 0x0a, 0x48, 0x65, 0x72, 0x6f, 0x73, 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, 0x22, 0x28, 0x0a, 0x0e, 0x48, 0x65, 0x72, - 0x6f, 0x46, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x68, - 0x65, 0x72, 0x6f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, - 0x6f, 0x69, 0x64, 0x22, 0x13, 0x0a, 0x11, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, - 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x3b, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, - 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, - 0x0a, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, - 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x74, - 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x22, 0x5e, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, - 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x74, - 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, - 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x12, 0x16, 0x0a, - 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, - 0x65, 0x72, 0x6f, 0x69, 0x64, 0x22, 0x58, 0x0a, 0x13, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, - 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, - 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, - 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6c, - 0x6e, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x22, - 0x2a, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x65, 0x74, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x13, 0x48, - 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, - 0x74, 0x52, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x22, 0x42, 0x0a, 0x0a, 0x48, 0x65, 0x72, - 0x6f, 0x42, 0x75, 0x79, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x75, 0x79, 0x54, 0x79, - 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x62, 0x75, 0x79, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x75, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x75, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x55, 0x0a, - 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x75, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, - 0x49, 0x73, 0x53, 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x49, 0x73, - 0x53, 0x75, 0x63, 0x63, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x12, 0x16, 0x0a, 0x06, - 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x65, - 0x6e, 0x62, 0x75, 0x79, 0x22, 0x2a, 0x0a, 0x10, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x69, 0x72, 0x73, - 0x74, 0x47, 0x65, 0x74, 0x50, 0x75, 0x73, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, - 0x49, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, - 0x22, 0x4c, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x65, 0x61, 0x63, 0x68, 0x52, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x43, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, 0x65, 0x77, 0x61, 0x72, - 0x64, 0x43, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x41, 0x6c, 0x6c, 0x47, 0x65, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x62, 0x41, 0x6c, 0x6c, 0x47, 0x65, 0x74, 0x22, 0xa5, - 0x01, 0x0a, 0x13, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x65, 0x61, 0x63, 0x68, 0x52, 0x65, 0x77, 0x61, - 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x35, 0x0a, 0x05, 0x70, 0x65, 0x61, 0x63, 0x68, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x65, 0x61, 0x63, - 0x68, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x50, 0x65, 0x61, 0x63, - 0x68, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x70, 0x65, 0x61, 0x63, 0x68, 0x12, 0x1d, 0x0a, - 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x55, 0x73, - 0x65, 0x72, 0x41, 0x74, 0x6e, 0x6f, 0x52, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x1a, 0x38, 0x0a, 0x0a, - 0x50, 0x65, 0x61, 0x63, 0x68, 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, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x48, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x70, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, + 0x74, 0x6e, 0x6f, 0x52, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x22, 0x77, 0x0a, 0x10, 0x48, 0x65, 0x72, + 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x41, 0x74, + 0x6e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x04, + 0x77, 0x69, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x55, 0x73, 0x65, + 0x72, 0x41, 0x74, 0x6e, 0x6f, 0x52, 0x04, 0x77, 0x69, 0x73, 0x68, 0x12, 0x25, 0x0a, 0x06, 0x72, + 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, + 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, + 0x72, 0x64, 0x22, 0x2d, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x50, 0x75, 0x73, 0x68, 0x12, 0x1b, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x6c, 0x69, 0x73, + 0x74, 0x22, 0x16, 0x0a, 0x14, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61, 0x72, + 0x64, 0x46, 0x6c, 0x6f, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x22, 0x3e, 0x0a, 0x15, 0x48, 0x65, 0x72, + 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61, 0x72, 0x64, 0x46, 0x6c, 0x6f, 0x6f, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, + 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x92, 0x01, 0x0a, 0x0d, 0x48, 0x65, + 0x72, 0x6f, 0x46, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x68, + 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, + 0x6f, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x05, 0x68, 0x65, 0x72, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x71, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x68, + 0x65, 0x72, 0x6f, 0x73, 0x1a, 0x38, 0x0a, 0x0a, 0x48, 0x65, 0x72, 0x6f, 0x73, 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, 0x22, 0x28, + 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, + 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x22, 0x13, 0x0a, 0x11, 0x48, 0x65, 0x72, 0x6f, + 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x3b, 0x0a, + 0x12, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, + 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x22, 0x5e, 0x0a, 0x12, 0x48, 0x65, + 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x65, 0x71, + 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x05, + 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x62, 0x6a, + 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x22, 0x58, 0x0a, 0x13, 0x48, 0x65, + 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x12, 0x25, 0x0a, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, + 0x52, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x61, 0x6c, 0x65, + 0x6e, 0x74, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, 0x61, 0x6c, 0x65, + 0x6e, 0x74, 0x49, 0x44, 0x22, 0x2a, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x62, + 0x6a, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, + 0x22, 0x3c, 0x0a, 0x13, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, + 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x22, 0x42, + 0x0a, 0x0a, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x75, 0x79, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, + 0x62, 0x75, 0x79, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x62, + 0x75, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x75, 0x79, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x75, 0x79, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x22, 0x55, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x75, 0x79, 0x52, 0x65, 0x73, + 0x70, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x73, 0x53, 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x06, 0x49, 0x73, 0x53, 0x75, 0x63, 0x63, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x6e, 0x65, + 0x62, 0x75, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, + 0x79, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x22, 0x2a, 0x0a, 0x10, 0x48, 0x65, 0x72, + 0x6f, 0x46, 0x69, 0x72, 0x73, 0x74, 0x47, 0x65, 0x74, 0x50, 0x75, 0x73, 0x68, 0x12, 0x16, 0x0a, + 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x68, + 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0x4c, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x65, 0x61, + 0x63, 0x68, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x72, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x43, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x43, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x41, 0x6c, + 0x6c, 0x47, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x62, 0x41, 0x6c, 0x6c, + 0x47, 0x65, 0x74, 0x22, 0xa5, 0x01, 0x0a, 0x13, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x65, 0x61, 0x63, + 0x68, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x35, 0x0a, 0x05, 0x70, + 0x65, 0x61, 0x63, 0x68, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x48, 0x65, 0x72, + 0x6f, 0x50, 0x65, 0x61, 0x63, 0x68, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, + 0x2e, 0x50, 0x65, 0x61, 0x63, 0x68, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x70, 0x65, 0x61, + 0x63, 0x68, 0x12, 0x1d, 0x0a, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x09, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, 0x74, 0x6e, 0x6f, 0x52, 0x04, 0x61, 0x74, 0x6e, + 0x6f, 0x1a, 0x38, 0x0a, 0x0a, 0x50, 0x65, 0x61, 0x63, 0x68, 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, 0x08, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x48, 0x0a, 0x12, 0x48, + 0x65, 0x72, 0x6f, 0x41, 0x70, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, + 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x72, 0x61, 0x77, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x72, 0x61, 0x77, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, + 0x65, 0x72, 0x6f, 0x69, 0x64, 0x22, 0x49, 0x0a, 0x13, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x70, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x72, 0x61, 0x77, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x72, 0x61, 0x77, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, - 0x22, 0x49, 0x0a, 0x13, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x70, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, - 0x65, 0x72, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x72, 0x61, 0x77, 0x54, - 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x72, 0x61, 0x77, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x22, 0x13, 0x0a, 0x11, 0x48, - 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 0x52, 0x65, 0x71, - 0x22, 0x3b, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x44, 0x72, - 0x61, 0x77, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, - 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x27, 0x0a, - 0x0f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, - 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x39, 0x0a, 0x10, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x61, - 0x76, 0x65, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, - 0x63, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, - 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, - 0x64, 0x22, 0x29, 0x0a, 0x11, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, - 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x5a, 0x0a, 0x12, - 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, - 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x04, 0x61, 0x74, 0x6e, - 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x41, 0x74, 0x6e, 0x6f, 0x44, 0x61, - 0x74, 0x61, 0x52, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, - 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x22, 0x13, 0x0a, 0x11, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x44, 0x72, + 0x61, 0x77, 0x52, 0x65, 0x71, 0x22, 0x3b, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x72, + 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, + 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, + 0x72, 0x64, 0x22, 0x27, 0x0a, 0x0f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x43, 0x61, + 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x39, 0x0a, 0x10, 0x48, + 0x65, 0x72, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x25, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, + 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x29, 0x0a, 0x11, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x22, 0x5a, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, + 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, + 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1d, + 0x0a, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x41, + 0x74, 0x6e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x42, 0x06, 0x5a, + 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2583,7 +2567,7 @@ func file_hero_hero_msg_proto_rawDescGZIP() []byte { return file_hero_hero_msg_proto_rawDescData } -var file_hero_hero_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 52) +var file_hero_hero_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 51) var file_hero_hero_msg_proto_goTypes = []interface{}{ (*HeroInfoReq)(nil), // 0: HeroInfoReq (*HeroInfoResp)(nil), // 1: HeroInfoResp @@ -2634,49 +2618,47 @@ var file_hero_hero_msg_proto_goTypes = []interface{}{ nil, // 46: HeroStrengthenUpSkillReq.ItemEntry nil, // 47: HeroPropertyPush.PropertyEntry nil, // 48: HeroPropertyPush.AddPropertyEntry - nil, // 49: HeroDrawCardResp.FirstGetEntry - nil, // 50: HeroFusionReq.HerosEntry - nil, // 51: HeroPeachRewardResp.PeachEntry - (*DBHero)(nil), // 52: DBHero - (*UserAtno)(nil), // 53: UserAtno - (*DBHeroRecord)(nil), // 54: DBHeroRecord - (*DBHeroTalent)(nil), // 55: DBHeroTalent + nil, // 49: HeroFusionReq.HerosEntry + nil, // 50: HeroPeachRewardResp.PeachEntry + (*DBHero)(nil), // 51: DBHero + (*UserAtno)(nil), // 52: UserAtno + (*DBHeroRecord)(nil), // 53: DBHeroRecord + (*DBHeroTalent)(nil), // 54: DBHeroTalent } var file_hero_hero_msg_proto_depIdxs = []int32{ - 52, // 0: HeroInfoResp.base:type_name -> DBHero - 52, // 1: HeroListResp.list:type_name -> DBHero + 51, // 0: HeroInfoResp.base:type_name -> DBHero + 51, // 1: HeroListResp.list:type_name -> DBHero 45, // 2: HeroStrengthenUplvReq.item:type_name -> HeroStrengthenUplvReq.ItemEntry - 52, // 3: HeroStrengthenUplvResp.hero:type_name -> DBHero - 52, // 4: HeroStrengthenUpStarResp.hero:type_name -> DBHero + 51, // 3: HeroStrengthenUplvResp.hero:type_name -> DBHero + 51, // 4: HeroStrengthenUpStarResp.hero:type_name -> DBHero 46, // 5: HeroStrengthenUpSkillReq.item:type_name -> HeroStrengthenUpSkillReq.ItemEntry - 52, // 6: HeroStrengthenUpSkillResp.hero:type_name -> DBHero - 52, // 7: HeroAwakenResp.hero:type_name -> DBHero + 51, // 6: HeroStrengthenUpSkillResp.hero:type_name -> DBHero + 51, // 7: HeroAwakenResp.hero:type_name -> DBHero 47, // 8: HeroPropertyPush.property:type_name -> HeroPropertyPush.PropertyEntry 48, // 9: HeroPropertyPush.addProperty:type_name -> HeroPropertyPush.AddPropertyEntry - 52, // 10: HeroLockResp.hero:type_name -> DBHero - 52, // 11: HeroGetSpecifiedResp.hero:type_name -> DBHero - 53, // 12: AtnoData.atno:type_name -> UserAtno + 51, // 10: HeroLockResp.hero:type_name -> DBHero + 51, // 11: HeroGetSpecifiedResp.hero:type_name -> DBHero + 52, // 12: AtnoData.atno:type_name -> UserAtno 19, // 13: HeroDrawCardResp.data:type_name -> AtnoData - 53, // 14: HeroDrawCardResp.wish:type_name -> UserAtno - 54, // 15: HeroDrawCardResp.record:type_name -> DBHeroRecord - 49, // 16: HeroDrawCardResp.firstGet:type_name -> HeroDrawCardResp.FirstGetEntry - 52, // 17: HeroChangePush.list:type_name -> DBHero - 54, // 18: HeroDrawCardFloorResp.record:type_name -> DBHeroRecord - 50, // 19: HeroFusionReq.heros:type_name -> HeroFusionReq.HerosEntry - 55, // 20: HeroTalentListResp.telnet:type_name -> DBHeroTalent - 55, // 21: HeroTalentLearnResp.telnet:type_name -> DBHeroTalent - 55, // 22: HeroTalentResetResp.telnet:type_name -> DBHeroTalent - 51, // 23: HeroPeachRewardResp.peach:type_name -> HeroPeachRewardResp.PeachEntry - 53, // 24: HeroPeachRewardResp.atno:type_name -> UserAtno - 54, // 25: HeroSelectDrawResp.record:type_name -> DBHeroRecord - 54, // 26: HeroSaveCardResp.record:type_name -> DBHeroRecord - 54, // 27: HeroSelectCardResp.record:type_name -> DBHeroRecord - 19, // 28: HeroSelectCardResp.atno:type_name -> AtnoData - 29, // [29:29] is the sub-list for method output_type - 29, // [29:29] is the sub-list for method input_type - 29, // [29:29] is the sub-list for extension type_name - 29, // [29:29] is the sub-list for extension extendee - 0, // [0:29] is the sub-list for field type_name + 52, // 14: HeroDrawCardResp.wish:type_name -> UserAtno + 53, // 15: HeroDrawCardResp.record:type_name -> DBHeroRecord + 51, // 16: HeroChangePush.list:type_name -> DBHero + 53, // 17: HeroDrawCardFloorResp.record:type_name -> DBHeroRecord + 49, // 18: HeroFusionReq.heros:type_name -> HeroFusionReq.HerosEntry + 54, // 19: HeroTalentListResp.telnet:type_name -> DBHeroTalent + 54, // 20: HeroTalentLearnResp.telnet:type_name -> DBHeroTalent + 54, // 21: HeroTalentResetResp.telnet:type_name -> DBHeroTalent + 50, // 22: HeroPeachRewardResp.peach:type_name -> HeroPeachRewardResp.PeachEntry + 52, // 23: HeroPeachRewardResp.atno:type_name -> UserAtno + 53, // 24: HeroSelectDrawResp.record:type_name -> DBHeroRecord + 53, // 25: HeroSaveCardResp.record:type_name -> DBHeroRecord + 53, // 26: HeroSelectCardResp.record:type_name -> DBHeroRecord + 19, // 27: HeroSelectCardResp.atno:type_name -> AtnoData + 28, // [28:28] is the sub-list for method output_type + 28, // [28:28] is the sub-list for method input_type + 28, // [28:28] is the sub-list for extension type_name + 28, // [28:28] is the sub-list for extension extendee + 0, // [0:28] is the sub-list for field type_name } func init() { file_hero_hero_msg_proto_init() } @@ -3234,7 +3216,7 @@ func file_hero_hero_msg_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_hero_hero_msg_proto_rawDesc, NumEnums: 0, - NumMessages: 52, + NumMessages: 51, NumExtensions: 0, NumServices: 0, }, From cb8418d79a376361daf5f88ba733f940dd54010e Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Tue, 5 Dec 2023 10:03:19 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E4=B9=8B=E5=90=8E=E5=8D=8F=E8=AE=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/hero/api_drawCard.go | 1 - modules/hero/api_selectdraw.go | 231 --------------------------- pb/hero_msg.pb.go | 274 ++++++++++----------------------- 3 files changed, 78 insertions(+), 428 deletions(-) delete mode 100644 modules/hero/api_selectdraw.go diff --git a/modules/hero/api_drawCard.go b/modules/hero/api_drawCard.go index 87ee4886c..485e882a6 100644 --- a/modules/hero/api_drawCard.go +++ b/modules/hero/api_drawCard.go @@ -57,7 +57,6 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq } return } - this.module.api.SelectDraw(session, nil) } if heroRecord, err = this.module.modelRecord.GetHeroRecord(session.GetUserId()); err != nil { errdata = &pb.ErrorData{ diff --git a/modules/hero/api_selectdraw.go b/modules/hero/api_selectdraw.go deleted file mode 100644 index 0d2fe9809..000000000 --- a/modules/hero/api_selectdraw.go +++ /dev/null @@ -1,231 +0,0 @@ -package hero - -import ( - "fmt" - "go_dreamfactory/comm" - "go_dreamfactory/pb" - cfg "go_dreamfactory/sys/configure/structs" -) - -//参数校验 -func (this *apiComp) SelectDrawCheck(session comm.IUserSession, req *pb.HeroSelectDrawReq) (errdata *pb.ErrorData) { - return -} - -func (this *apiComp) SelectDraw(session comm.IUserSession, req *pb.HeroSelectDrawReq) (errdata *pb.ErrorData) { - var ( - err error - drawType int32 - heroRecord *pb.DBHeroRecord - cfgGlobal *cfg.GameGlobalData // 全局配置 - - szCards []string // 最终抽到的卡牌 - drawCount int32 // 抽卡次数 - costRes []*cfg.Gameatn // 消耗 - star4Count int32 // 10连抽4星数量 - star5Count int32 // 10连抽5星数量 - strPool []string // 10连跨多个卡池情况 - update map[string]interface{} - drawConf *cfg.GameDrawPoolData - dCount int32 - IsBaodiPool bool // 是否是保底卡池 - appointmap map[int32]string // 指定次数抽卡到指定卡池 - ) - - if heroRecord, err = this.module.modelRecord.GetHeroRecord(session.GetUserId()); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } - if heroRecord.Newcomplete { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_HeroSelectDrawComplete, - Title: pb.ErrorCode_HeroSelectDrawComplete.ToString(), - } - return - } - cfgGlobal = this.module.ModuleTools.GetGlobalConf() // 读取抽卡配置文件 - if cfgGlobal == nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ConfigNoFound, - Title: pb.ErrorCode_ConfigNoFound.ToString(), - Message: fmt.Sprintf("GetGlobalConf not found"), - } - return - } - - if cfgGlobal.NewDrawcardAttemptsNums <= heroRecord.Selectcount { // 次数校验 - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_HeroSelectMaxCount, - Title: pb.ErrorCode_HeroSelectMaxCount.ToString(), - } - return - } - drawType = comm.DrawCardTypeNew // 抽卡类型 1 - drawCount = 10 // 10连 - update = make(map[string]interface{}) - appointmap = make(map[int32]string) - szCards = make([]string, 0) - - // 准备数据 - ///////////////////////////////////// - drawConf, err = this.module.configure.GetHeroDrawConfigByType(drawType) // 获取新的抽卡配置 - if err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ReqParameterError, - Title: pb.ErrorCode_ReqParameterError.ToString(), - Message: err.Error(), - } - return - } - - for _, v := range drawConf.RecruitmentType { - appointmap[v.K] = v.S // 指定次抽数据 - } - - //////////////////////////////////////////////////////// - - if true { // 普通卡池抽卡 - ////// 获取消耗 - if costRes, errdata = this.module.modelHero.CheckDrawCardRes(session, drawConf, 0, drawCount); errdata != nil { - return - } - dCount = heroRecord.Count[drawType] // 获取当前阵容抽卡次数 - // 校验是否达到保底卡池 - if drawConf.Protect >= dCount { - IsBaodiPool = true - } - ///// 获取消耗 end - for i := 1; i <= int(drawCount); i++ { // 一张一张的抽 - heroRecord.Race[drawType] += 1 - dCount++ - heroRecord.Baodi5[drawType]++ - heroRecord.Baodi4[drawType]++ - if v, ok := appointmap[dCount]; ok { // 优先校验是否是指定抽 - strPool = append(strPool, v) //找到了 - continue - } - Is5Star := false - starWeight := []int32{drawConf.Star3w, drawConf.Star4w, drawConf.Star5w} // 随机获取三星 - if drawConf.Permission != -1 && heroRecord.Baodi5[drawType] > 0 { // 橙权递增 - starWeight[2] += this.module.configure.GetHeroDrawWeightConfigById(drawConf.Permission, heroRecord.Baodi5[drawType]) - } - starIndex := comm.GetRandW(starWeight) // 3 4 5 星索引 - if IsBaodiPool { - if starIndex == 0 { - strPool = append(strPool, drawConf.P3pool) - } else if starIndex == 1 { - star4Count++ - heroRecord.Baodi4[drawType] = 0 - strPool = append(strPool, drawConf.P4pool) - } else if starIndex == 2 { - star5Count++ - heroRecord.Baodi5[drawType] = 0 - strPool = append(strPool, drawConf.P5pool) - Is5Star = true - } - } else { - if starIndex == 0 { - strPool = append(strPool, drawConf.N3pool) - } else if starIndex == 1 { - star4Count++ - heroRecord.Baodi4[drawType] = 0 - strPool = append(strPool, drawConf.N4pool) - } else if starIndex == 2 { - star5Count++ - heroRecord.Baodi5[drawType] = 0 - strPool = append(strPool, drawConf.N5pool) - Is5Star = true - } - } - // 判断是否必出5星 - if heroRecord.Baodi5[drawType] >= drawConf.Baidi5 && !Is5Star { - heroRecord.Baodi5[drawType] = 0 - star5Count++ - if IsBaodiPool { - strPool[len(strPool)-1] = drawConf.P5pool - } else { - strPool[len(strPool)-1] = drawConf.N5pool - } - Is5Star = true - continue - } - // 判断是否必出4星 - if heroRecord.Baodi4[drawType] >= drawConf.Baodi4 { - heroRecord.Baodi4[drawType] = 0 - star4Count++ - if IsBaodiPool { - strPool[len(strPool)-1] = drawConf.P4pool - } else { - strPool[len(strPool)-1] = drawConf.N4pool - } - continue - } - - if star4Count >= cfgGlobal.Draw10Star4Max { // 10连抽最大4星数量 - if IsBaodiPool { - strPool[len(strPool)-1] = drawConf.P3pool - } else { - strPool[len(strPool)-1] = drawConf.N3pool - } - } - if star5Count >= cfgGlobal.Draw10Star5Max { // 10连抽最大5星数量 - if IsBaodiPool { - strPool[len(strPool)-1] = drawConf.P3pool - } else { - strPool[len(strPool)-1] = drawConf.N3pool - } - } - } - } - // 通过卡池获得最终的英雄 - for _, v := range strPool { - card, err := this.module.configure.GetHeroByPool(v) - if err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ConfigNoFound, - Title: pb.ErrorCode_ConfigNoFound.ToString(), - Message: err.Error(), - } - return - } - szCards = append(szCards, card) - } - - // 消耗道具 - if errdata = this.module.ConsumeRes(session, costRes, true); errdata != nil { - return - } - heroRecord.Totalcount += dCount - heroRecord.Daycount += dCount - - heroRecord.Count[drawType] = dCount - update["drawcount"] = dCount - update["count"] = heroRecord.Count - update["totalcount"] = heroRecord.Totalcount - update["race"] = heroRecord.Race - update["daycount"] = heroRecord.Daycount - update["baodi4"] = heroRecord.Baodi4 - update["baodi5"] = heroRecord.Baodi5 - // 抽卡次数+1 - heroRecord.Selectcount += 1 - heroRecord.Cur = szCards - update["selectcount"] = heroRecord.Selectcount - update["cur"] = heroRecord.Cur - if err = this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), update); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.String(), - Message: err.Error(), - } - return - } - - session.SendMsg(string(this.module.GetType()), "selectdraw", &pb.HeroSelectDrawResp{ - Record: heroRecord, - }) - return -} diff --git a/pb/hero_msg.pb.go b/pb/hero_msg.pb.go index b0461f5f8..97c7d4f9f 100644 --- a/pb/hero_msg.pb.go +++ b/pb/hero_msg.pb.go @@ -2054,92 +2054,6 @@ func (x *HeroAppointHeroResp) GetHeroid() string { return "" } -// 选择抽卡协议 -type HeroSelectDrawReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *HeroSelectDrawReq) Reset() { - *x = HeroSelectDrawReq{} - if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[39] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *HeroSelectDrawReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*HeroSelectDrawReq) ProtoMessage() {} - -func (x *HeroSelectDrawReq) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[39] - 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 HeroSelectDrawReq.ProtoReflect.Descriptor instead. -func (*HeroSelectDrawReq) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{39} -} - -type HeroSelectDrawResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Record *DBHeroRecord `protobuf:"bytes,1,opt,name=record,proto3" json:"record"` // 扩展数据 -} - -func (x *HeroSelectDrawResp) Reset() { - *x = HeroSelectDrawResp{} - if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[40] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *HeroSelectDrawResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*HeroSelectDrawResp) ProtoMessage() {} - -func (x *HeroSelectDrawResp) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[40] - 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 HeroSelectDrawResp.ProtoReflect.Descriptor instead. -func (*HeroSelectDrawResp) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{40} -} - -func (x *HeroSelectDrawResp) GetRecord() *DBHeroRecord { - if x != nil { - return x.Record - } - return nil -} - type HeroSaveCardReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2151,7 +2065,7 @@ type HeroSaveCardReq struct { func (x *HeroSaveCardReq) Reset() { *x = HeroSaveCardReq{} if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[41] + mi := &file_hero_hero_msg_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2164,7 +2078,7 @@ func (x *HeroSaveCardReq) String() string { func (*HeroSaveCardReq) ProtoMessage() {} func (x *HeroSaveCardReq) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[41] + mi := &file_hero_hero_msg_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2177,7 +2091,7 @@ func (x *HeroSaveCardReq) ProtoReflect() protoreflect.Message { // Deprecated: Use HeroSaveCardReq.ProtoReflect.Descriptor instead. func (*HeroSaveCardReq) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{41} + return file_hero_hero_msg_proto_rawDescGZIP(), []int{39} } func (x *HeroSaveCardReq) GetIndex() int32 { @@ -2198,7 +2112,7 @@ type HeroSaveCardResp struct { func (x *HeroSaveCardResp) Reset() { *x = HeroSaveCardResp{} if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[42] + mi := &file_hero_hero_msg_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2211,7 +2125,7 @@ func (x *HeroSaveCardResp) String() string { func (*HeroSaveCardResp) ProtoMessage() {} func (x *HeroSaveCardResp) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[42] + mi := &file_hero_hero_msg_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2224,7 +2138,7 @@ func (x *HeroSaveCardResp) ProtoReflect() protoreflect.Message { // Deprecated: Use HeroSaveCardResp.ProtoReflect.Descriptor instead. func (*HeroSaveCardResp) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{42} + return file_hero_hero_msg_proto_rawDescGZIP(), []int{40} } func (x *HeroSaveCardResp) GetRecord() *DBHeroRecord { @@ -2246,7 +2160,7 @@ type HeroSelectCardReq struct { func (x *HeroSelectCardReq) Reset() { *x = HeroSelectCardReq{} if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[43] + mi := &file_hero_hero_msg_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2259,7 +2173,7 @@ func (x *HeroSelectCardReq) String() string { func (*HeroSelectCardReq) ProtoMessage() {} func (x *HeroSelectCardReq) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[43] + mi := &file_hero_hero_msg_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2272,7 +2186,7 @@ func (x *HeroSelectCardReq) ProtoReflect() protoreflect.Message { // Deprecated: Use HeroSelectCardReq.ProtoReflect.Descriptor instead. func (*HeroSelectCardReq) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{43} + return file_hero_hero_msg_proto_rawDescGZIP(), []int{41} } func (x *HeroSelectCardReq) GetIndex() int32 { @@ -2294,7 +2208,7 @@ type HeroSelectCardResp struct { func (x *HeroSelectCardResp) Reset() { *x = HeroSelectCardResp{} if protoimpl.UnsafeEnabled { - mi := &file_hero_hero_msg_proto_msgTypes[44] + mi := &file_hero_hero_msg_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2307,7 +2221,7 @@ func (x *HeroSelectCardResp) String() string { func (*HeroSelectCardResp) ProtoMessage() {} func (x *HeroSelectCardResp) ProtoReflect() protoreflect.Message { - mi := &file_hero_hero_msg_proto_msgTypes[44] + mi := &file_hero_hero_msg_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2320,7 +2234,7 @@ func (x *HeroSelectCardResp) ProtoReflect() protoreflect.Message { // Deprecated: Use HeroSelectCardResp.ProtoReflect.Descriptor instead. func (*HeroSelectCardResp) Descriptor() ([]byte, []int) { - return file_hero_hero_msg_proto_rawDescGZIP(), []int{44} + return file_hero_hero_msg_proto_rawDescGZIP(), []int{42} } func (x *HeroSelectCardResp) GetRecord() *DBHeroRecord { @@ -2532,27 +2446,22 @@ var file_hero_hero_msg_proto_rawDesc = []byte{ 0x64, 0x72, 0x61, 0x77, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x72, 0x61, 0x77, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, - 0x22, 0x13, 0x0a, 0x11, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x44, 0x72, - 0x61, 0x77, 0x52, 0x65, 0x71, 0x22, 0x3b, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x44, 0x72, 0x61, 0x77, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x72, - 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, - 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, - 0x72, 0x64, 0x22, 0x27, 0x0a, 0x0f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x43, 0x61, - 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x39, 0x0a, 0x10, 0x48, - 0x65, 0x72, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x25, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, - 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x29, 0x0a, 0x11, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, - 0x6c, 0x65, 0x63, 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x22, 0x5a, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, - 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, - 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1d, - 0x0a, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x41, - 0x74, 0x6e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x42, 0x06, 0x5a, - 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x22, 0x27, 0x0a, 0x0f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x43, 0x61, 0x72, 0x64, + 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x39, 0x0a, 0x10, 0x48, 0x65, 0x72, + 0x6f, 0x53, 0x61, 0x76, 0x65, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, + 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, + 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, + 0x63, 0x6f, 0x72, 0x64, 0x22, 0x29, 0x0a, 0x11, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, + 0x5a, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x61, 0x72, + 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, + 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x04, + 0x61, 0x74, 0x6e, 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x41, 0x74, 0x6e, + 0x6f, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x61, 0x74, 0x6e, 0x6f, 0x42, 0x06, 0x5a, 0x04, 0x2e, + 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2567,7 +2476,7 @@ func file_hero_hero_msg_proto_rawDescGZIP() []byte { return file_hero_hero_msg_proto_rawDescData } -var file_hero_hero_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 51) +var file_hero_hero_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 49) var file_hero_hero_msg_proto_goTypes = []interface{}{ (*HeroInfoReq)(nil), // 0: HeroInfoReq (*HeroInfoResp)(nil), // 1: HeroInfoResp @@ -2608,57 +2517,54 @@ var file_hero_hero_msg_proto_goTypes = []interface{}{ (*HeroPeachRewardResp)(nil), // 36: HeroPeachRewardResp (*HeroAppointHeroReq)(nil), // 37: HeroAppointHeroReq (*HeroAppointHeroResp)(nil), // 38: HeroAppointHeroResp - (*HeroSelectDrawReq)(nil), // 39: HeroSelectDrawReq - (*HeroSelectDrawResp)(nil), // 40: HeroSelectDrawResp - (*HeroSaveCardReq)(nil), // 41: HeroSaveCardReq - (*HeroSaveCardResp)(nil), // 42: HeroSaveCardResp - (*HeroSelectCardReq)(nil), // 43: HeroSelectCardReq - (*HeroSelectCardResp)(nil), // 44: HeroSelectCardResp - nil, // 45: HeroStrengthenUplvReq.ItemEntry - nil, // 46: HeroStrengthenUpSkillReq.ItemEntry - nil, // 47: HeroPropertyPush.PropertyEntry - nil, // 48: HeroPropertyPush.AddPropertyEntry - nil, // 49: HeroFusionReq.HerosEntry - nil, // 50: HeroPeachRewardResp.PeachEntry - (*DBHero)(nil), // 51: DBHero - (*UserAtno)(nil), // 52: UserAtno - (*DBHeroRecord)(nil), // 53: DBHeroRecord - (*DBHeroTalent)(nil), // 54: DBHeroTalent + (*HeroSaveCardReq)(nil), // 39: HeroSaveCardReq + (*HeroSaveCardResp)(nil), // 40: HeroSaveCardResp + (*HeroSelectCardReq)(nil), // 41: HeroSelectCardReq + (*HeroSelectCardResp)(nil), // 42: HeroSelectCardResp + nil, // 43: HeroStrengthenUplvReq.ItemEntry + nil, // 44: HeroStrengthenUpSkillReq.ItemEntry + nil, // 45: HeroPropertyPush.PropertyEntry + nil, // 46: HeroPropertyPush.AddPropertyEntry + nil, // 47: HeroFusionReq.HerosEntry + nil, // 48: HeroPeachRewardResp.PeachEntry + (*DBHero)(nil), // 49: DBHero + (*UserAtno)(nil), // 50: UserAtno + (*DBHeroRecord)(nil), // 51: DBHeroRecord + (*DBHeroTalent)(nil), // 52: DBHeroTalent } var file_hero_hero_msg_proto_depIdxs = []int32{ - 51, // 0: HeroInfoResp.base:type_name -> DBHero - 51, // 1: HeroListResp.list:type_name -> DBHero - 45, // 2: HeroStrengthenUplvReq.item:type_name -> HeroStrengthenUplvReq.ItemEntry - 51, // 3: HeroStrengthenUplvResp.hero:type_name -> DBHero - 51, // 4: HeroStrengthenUpStarResp.hero:type_name -> DBHero - 46, // 5: HeroStrengthenUpSkillReq.item:type_name -> HeroStrengthenUpSkillReq.ItemEntry - 51, // 6: HeroStrengthenUpSkillResp.hero:type_name -> DBHero - 51, // 7: HeroAwakenResp.hero:type_name -> DBHero - 47, // 8: HeroPropertyPush.property:type_name -> HeroPropertyPush.PropertyEntry - 48, // 9: HeroPropertyPush.addProperty:type_name -> HeroPropertyPush.AddPropertyEntry - 51, // 10: HeroLockResp.hero:type_name -> DBHero - 51, // 11: HeroGetSpecifiedResp.hero:type_name -> DBHero - 52, // 12: AtnoData.atno:type_name -> UserAtno + 49, // 0: HeroInfoResp.base:type_name -> DBHero + 49, // 1: HeroListResp.list:type_name -> DBHero + 43, // 2: HeroStrengthenUplvReq.item:type_name -> HeroStrengthenUplvReq.ItemEntry + 49, // 3: HeroStrengthenUplvResp.hero:type_name -> DBHero + 49, // 4: HeroStrengthenUpStarResp.hero:type_name -> DBHero + 44, // 5: HeroStrengthenUpSkillReq.item:type_name -> HeroStrengthenUpSkillReq.ItemEntry + 49, // 6: HeroStrengthenUpSkillResp.hero:type_name -> DBHero + 49, // 7: HeroAwakenResp.hero:type_name -> DBHero + 45, // 8: HeroPropertyPush.property:type_name -> HeroPropertyPush.PropertyEntry + 46, // 9: HeroPropertyPush.addProperty:type_name -> HeroPropertyPush.AddPropertyEntry + 49, // 10: HeroLockResp.hero:type_name -> DBHero + 49, // 11: HeroGetSpecifiedResp.hero:type_name -> DBHero + 50, // 12: AtnoData.atno:type_name -> UserAtno 19, // 13: HeroDrawCardResp.data:type_name -> AtnoData - 52, // 14: HeroDrawCardResp.wish:type_name -> UserAtno - 53, // 15: HeroDrawCardResp.record:type_name -> DBHeroRecord - 51, // 16: HeroChangePush.list:type_name -> DBHero - 53, // 17: HeroDrawCardFloorResp.record:type_name -> DBHeroRecord - 49, // 18: HeroFusionReq.heros:type_name -> HeroFusionReq.HerosEntry - 54, // 19: HeroTalentListResp.telnet:type_name -> DBHeroTalent - 54, // 20: HeroTalentLearnResp.telnet:type_name -> DBHeroTalent - 54, // 21: HeroTalentResetResp.telnet:type_name -> DBHeroTalent - 50, // 22: HeroPeachRewardResp.peach:type_name -> HeroPeachRewardResp.PeachEntry - 52, // 23: HeroPeachRewardResp.atno:type_name -> UserAtno - 53, // 24: HeroSelectDrawResp.record:type_name -> DBHeroRecord - 53, // 25: HeroSaveCardResp.record:type_name -> DBHeroRecord - 53, // 26: HeroSelectCardResp.record:type_name -> DBHeroRecord - 19, // 27: HeroSelectCardResp.atno:type_name -> AtnoData - 28, // [28:28] is the sub-list for method output_type - 28, // [28:28] is the sub-list for method input_type - 28, // [28:28] is the sub-list for extension type_name - 28, // [28:28] is the sub-list for extension extendee - 0, // [0:28] is the sub-list for field type_name + 50, // 14: HeroDrawCardResp.wish:type_name -> UserAtno + 51, // 15: HeroDrawCardResp.record:type_name -> DBHeroRecord + 49, // 16: HeroChangePush.list:type_name -> DBHero + 51, // 17: HeroDrawCardFloorResp.record:type_name -> DBHeroRecord + 47, // 18: HeroFusionReq.heros:type_name -> HeroFusionReq.HerosEntry + 52, // 19: HeroTalentListResp.telnet:type_name -> DBHeroTalent + 52, // 20: HeroTalentLearnResp.telnet:type_name -> DBHeroTalent + 52, // 21: HeroTalentResetResp.telnet:type_name -> DBHeroTalent + 48, // 22: HeroPeachRewardResp.peach:type_name -> HeroPeachRewardResp.PeachEntry + 50, // 23: HeroPeachRewardResp.atno:type_name -> UserAtno + 51, // 24: HeroSaveCardResp.record:type_name -> DBHeroRecord + 51, // 25: HeroSelectCardResp.record:type_name -> DBHeroRecord + 19, // 26: HeroSelectCardResp.atno:type_name -> AtnoData + 27, // [27:27] is the sub-list for method output_type + 27, // [27:27] is the sub-list for method input_type + 27, // [27:27] is the sub-list for extension type_name + 27, // [27:27] is the sub-list for extension extendee + 0, // [0:27] is the sub-list for field type_name } func init() { file_hero_hero_msg_proto_init() } @@ -3138,30 +3044,6 @@ func file_hero_hero_msg_proto_init() { } } file_hero_hero_msg_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HeroSelectDrawReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_hero_hero_msg_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HeroSelectDrawResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_hero_hero_msg_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroSaveCardReq); i { case 0: return &v.state @@ -3173,7 +3055,7 @@ func file_hero_hero_msg_proto_init() { return nil } } - file_hero_hero_msg_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + file_hero_hero_msg_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroSaveCardResp); i { case 0: return &v.state @@ -3185,7 +3067,7 @@ func file_hero_hero_msg_proto_init() { return nil } } - file_hero_hero_msg_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + file_hero_hero_msg_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroSelectCardReq); i { case 0: return &v.state @@ -3197,7 +3079,7 @@ func file_hero_hero_msg_proto_init() { return nil } } - file_hero_hero_msg_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + file_hero_hero_msg_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroSelectCardResp); i { case 0: return &v.state @@ -3216,7 +3098,7 @@ func file_hero_hero_msg_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_hero_hero_msg_proto_rawDesc, NumEnums: 0, - NumMessages: 51, + NumMessages: 49, NumExtensions: 0, NumServices: 0, }, From f89bda83722f1f5032802e2e5e6e9bde7d2b3f30 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Tue, 5 Dec 2023 11:25:42 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E6=A8=A1=E6=8B=9F=E6=8A=BD=E5=8D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- comm/imodule.go | 2 - modules/hero/api_drawCard.go | 160 +++++++++++++++++++-------------- modules/hero/api_selectcard.go | 2 +- modules/hero/model_hero.go | 116 ++++++++++++++++++++++++ services/worker/main.go | 2 + 5 files changed, 213 insertions(+), 69 deletions(-) diff --git a/comm/imodule.go b/comm/imodule.go index 324a71e9e..51f8a8030 100644 --- a/comm/imodule.go +++ b/comm/imodule.go @@ -149,8 +149,6 @@ type ( // 检查圣桃树奖励是否发放 CheckPeachReward(session IUserSession, ctime int64) - CreateOneHero(session IUserSession, heroCfgId string) (hero *pb.DBHero, atno []*pb.UserAtno, errdata *pb.ErrorData) - // 通过卡池随机获取指定数量的英雄卡 GetRandomCardByCardPool(uid string, count int32) (cards []string, err error) } diff --git a/modules/hero/api_drawCard.go b/modules/hero/api_drawCard.go index 485e882a6..596699be9 100644 --- a/modules/hero/api_drawCard.go +++ b/modules/hero/api_drawCard.go @@ -42,6 +42,19 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq update = make(map[string]interface{}) appointmap = make(map[int32]string) szCards = make([]string, 0) + if heroRecord, err = this.module.modelRecord.GetHeroRecord(session.GetUserId()); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + + cfgGlobal = this.module.ModuleTools.GetGlobalConf() // 读取抽卡配置文件 + if cfgGlobal == nil { + return + } if req.DrawType == 1 { // 新手抽卡校验 if heroRecord.Newcomplete { errdata = &pb.ErrorData{ @@ -58,14 +71,6 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq return } } - if heroRecord, err = this.module.modelRecord.GetHeroRecord(session.GetUserId()); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } rsp := &pb.HeroDrawCardResp{ Data: []*pb.AtnoData{}, @@ -117,7 +122,7 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq } var hero *pb.DBHero - if hero, atno, errdata = this.module.ModuleHero.CreateOneHero(session, heroRecord.WishHero); errdata == nil { + if hero, atno, errdata = this.module.CreateOneHero(session, heroRecord.WishHero); errdata == nil { for _, v := range atno { if v.A == "hero" && v.T == heroRecord.WishHero && v.N == 1 { if user, err := this.module.ModuleUser.GetUser(session.GetUserId()); err == nil { // 广播 首次获得英雄 @@ -167,11 +172,6 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq //////////////////////////////////////////////////////// - cfgGlobal = this.module.ModuleTools.GetGlobalConf() // 读取抽卡配置文件 - if cfgGlobal == nil { - return - } - // 每日抽卡上限校验 if cfgGlobal.DrawToplimit < heroRecord.Daycount+req.DrawCount { errdata = &pb.ErrorData{ @@ -311,53 +311,73 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq update["daycount"] = heroRecord.Daycount update["baodi4"] = heroRecord.Baodi4 update["baodi5"] = heroRecord.Baodi5 - if req.DrawType == 1 { - heroRecord.Selectcount += 1 // 抽卡次数+1 - heroRecord.Cur = szCards - update["selectcount"] = heroRecord.Selectcount - update["cur"] = heroRecord.Cur - } else { - for _, heroId := range szCards { - //var - var ( - hero *pb.DBHero - HeroConf *cfg.GameHeroData - ) - if HeroConf, err = this.module.configure.GetHeroConfig(heroId); err == nil { - szStar = append(szStar, HeroConf.Star) // 获得许愿石 - var tmp *cfg.Gameatn - if HeroConf.Star == 4 { - tmp = this.module.ModuleTools.GetGlobalConf().RewardStar4 - reward = append(reward, tmp) - } else if HeroConf.Star == 5 { - tmp = this.module.ModuleTools.GetGlobalConf().RewardStar5 - reward = append(reward, tmp) - if req.DrawType == comm.DrawCardType5 { // 限时招募 - if heroRecord.LimitHero == "" { - if conf := this.module.configure.GetApportHeroReplaceConfig(); conf != nil { - heroRecord.LimitHero = conf.InitHero - update["limitHero"] = heroRecord.LimitHero - } + for _, heroId := range szCards { + //var + var ( + hero *pb.DBHero + HeroConf *cfg.GameHeroData + ) + if HeroConf, err = this.module.configure.GetHeroConfig(heroId); err == nil { + szStar = append(szStar, HeroConf.Star) // 获得许愿石 + var tmp *cfg.Gameatn + if HeroConf.Star == 4 { + tmp = this.module.ModuleTools.GetGlobalConf().RewardStar4 + reward = append(reward, tmp) + } else if HeroConf.Star == 5 { + tmp = this.module.ModuleTools.GetGlobalConf().RewardStar5 + reward = append(reward, tmp) + + if req.DrawType == comm.DrawCardType5 { // 限时招募 + if heroRecord.LimitHero == "" { + if conf := this.module.configure.GetApportHeroReplaceConfig(); conf != nil { + heroRecord.LimitHero = conf.InitHero + update["limitHero"] = heroRecord.LimitHero } - heroId = heroRecord.LimitHero // 替换成心愿英雄 - } - } - if tmp != nil { - if rsp.Wish == nil { - rsp.Wish = &pb.UserAtno{ - A: tmp.A, - T: tmp.T, - N: tmp.N, - } - } else { - rsp.Wish.N += tmp.N } + heroId = heroRecord.LimitHero // 替换成心愿英雄 } } + if tmp != nil { + if rsp.Wish == nil { + rsp.Wish = &pb.UserAtno{ + A: tmp.A, + T: tmp.T, + N: tmp.N, + } + } else { + rsp.Wish.N += tmp.N + } + } + } - var atno []*pb.UserAtno - if hero, atno, errdata = this.module.ModuleHero.CreateOneHero(session, heroId); errdata == nil { + var atno []*pb.UserAtno + + if req.DrawType == 1 { + heroRecord.Selectcount += 1 // 抽卡次数+1 + heroRecord.Cur = szCards + update["selectcount"] = heroRecord.Selectcount + update["cur"] = heroRecord.Cur + + if hero, atno, err = this.module.modelHero.imitateHero(session, heroId); err == nil { + for _, v := range atno { + if v.A == "hero" && v.T == heroId && v.N == 1 { + if user, err := this.module.ModuleUser.GetUser(session.GetUserId()); err == nil { // 广播 首次获得英雄 + this.chat.SendSysChatToWorld(comm.ChatSystem13, hero, HeroConf.Star, 0, user.Name, v.T) + } + } + } + rsp.Data = append(rsp.Data, &pb.AtnoData{Atno: atno}) + } else { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_HeroNoExist, + Title: pb.ErrorCode_HeroNoExist.ToString(), + Message: err.Error(), + } + return + } + } else { + if hero, atno, errdata = this.module.CreateOneHero(session, heroId); errdata == nil { for _, v := range atno { if v.A == "hero" && v.T == heroId && v.N == 1 { if user, err := this.module.ModuleUser.GetUser(session.GetUserId()); err == nil { // 广播 首次获得英雄 @@ -372,18 +392,26 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq } this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), update) - // 发放许愿石奖励 - if errdata, atno = this.module.DispenseAtno(session, reward, true); errdata != nil { - return + + if req.DrawType != 1 { + if errdata, atno = this.module.DispenseAtno(session, reward, true); errdata != nil { // 发放许愿石奖励 + return + } + } + session.SendMsg(string(this.module.GetType()), DrawCard, rsp) + + if req.DrawType != 1 { + // 任务统计 + this.module.SendTaskMsg(session, szStar, req.DrawCount, req.DrawType) + go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "HeroDrawCardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResDelType, "HeroDrawCardReq", costRes) + }) + } else { + go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { + this.module.WriteUserLog(session.GetUserId(), comm.GMResDelType, "HeroDrawCardReq", costRes) + }) } - session.SendMsg(string(this.module.GetType()), DrawCard, rsp) - // 任务统计 - this.module.SendTaskMsg(session, szStar, req.DrawCount, req.DrawType) - - go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "HeroDrawCardReq", atno) - this.module.WriteUserLog(session.GetUserId(), comm.GMResDelType, "HeroDrawCardReq", costRes) - }) return } diff --git a/modules/hero/api_selectcard.go b/modules/hero/api_selectcard.go index 8dd288379..2ae4dbc66 100644 --- a/modules/hero/api_selectcard.go +++ b/modules/hero/api_selectcard.go @@ -70,7 +70,7 @@ func (this *apiComp) SelectCard(session comm.IUserSession, req *pb.HeroSelectCar } var atno []*pb.UserAtno - if hero, atno, errdata = this.module.ModuleHero.CreateOneHero(session, heroId); errdata == nil { + if hero, atno, errdata = this.module.CreateOneHero(session, heroId); errdata == nil { for _, v := range atno { if v.A == "hero" && v.T == heroId && v.N == 1 { if user, err := this.module.ModuleUser.GetUser(session.GetUserId()); err == nil { // 广播 首次获得英雄 diff --git a/modules/hero/model_hero.go b/modules/hero/model_hero.go index d6b72f534..13236e2a9 100644 --- a/modules/hero/model_hero.go +++ b/modules/hero/model_hero.go @@ -977,3 +977,119 @@ func (this *ModelHero) GetDrawCardReward(session comm.IUserSession, szCards []st }) return } + +// 模拟获得英雄 +func (this *ModelHero) imitateHero(session comm.IUserSession, heroCfgId string) (hero *pb.DBHero, atno []*pb.UserAtno, err error) { + heros := make([]*pb.DBHero, 0) + uid := session.GetUserId() + heroCfg, _ := this.module.configure.GetHeroConfig(heroCfgId) + bFirst := true + if heroCfg == nil { + err = errors.New("not found hero configID") + this.module.Errorf("not found hero configID:%s", heroCfgId) + return + } + + if err = this.GetList(uid, &heros); err != nil { + this.module.Errorf("err:%v", err) + } + + for _, obj := range heros { + if obj.HeroID == heroCfgId { + hero = obj + bFirst = false + atno = append(atno, &pb.UserAtno{ // 有英雄的时候 数量给0 + A: "hero", + T: hero.HeroID, + N: 0, + O: hero.Id, + }) + break + } + } + + if bFirst { // 没有当前英雄 + hero, err = this.initHeroOverlying(uid, heroCfgId, 1) + if err != nil { + return + } + atno = append(atno, &pb.UserAtno{ + A: "hero", + T: hero.HeroID, + N: 1, + O: hero.Id, + }) + } + + rst, err := this.module.ModuleUser.GetUserExpand(session.GetUserId()) + if err != nil { + return + } + if rst.Expitem == nil { + rst.Expitem = make(map[string]int32) + } + if rst.Herofrag == nil { + rst.Herofrag = make(map[string]int32) + } + // 转碎片处理 + + bAdd := false + //守护之星 获得 + if heroCfg.Herofragnum > 0 { + if v, ok := rst.Herofrag[hero.HeroID]; !ok { + rst.Herofrag[hero.HeroID] = 1 + bAdd = true + } else if heroCfg.Herofragnum > v { + rst.Herofrag[hero.HeroID] += 1 + bAdd = true + } + } + if bAdd { + for _, v := range heroCfg.Herofrag { + atno = append(atno, &pb.UserAtno{ + A: v.A, + T: v.T, + N: v.N, + }) + } + } else { + list := this.module.ModuleTools.GetGlobalConf().Moonshopmoney + if list != nil { + for pos, v := range list { + if int32(pos)+3 == heroCfg.Star && v > 0 { + + atno = append(atno, &pb.UserAtno{ + A: "attr", + T: "moongold", + N: v, + }) + break + } + } + } + } + bAdd = false // 初始化 + // expitem 获得 + if heroCfg.Expitemnum > 0 { + if v, ok := rst.Expitem[hero.HeroID]; ok { + if heroCfg.Expitemnum > v { + rst.Expitem[hero.HeroID] += 1 + bAdd = true + } + } else { + rst.Expitem[hero.HeroID] = 1 + bAdd = true + } + } + if bAdd { + for _, v := range heroCfg.Expitem { + atno = append(atno, &pb.UserAtno{ + A: v.A, + T: v.T, + N: v.N, + }) + } + } + + return +} diff --git a/services/worker/main.go b/services/worker/main.go index 978f2c063..93aac8849 100644 --- a/services/worker/main.go +++ b/services/worker/main.go @@ -47,6 +47,7 @@ import ( "go_dreamfactory/modules/mail" "go_dreamfactory/modules/maincity" "go_dreamfactory/modules/mainline" + "go_dreamfactory/modules/monkey" "go_dreamfactory/modules/moonfantasy" "go_dreamfactory/modules/moonlv" "go_dreamfactory/modules/notify" @@ -190,6 +191,7 @@ func main() { catchbugs.NewModule(), moonlv.NewModule(), whackamole.NewModule(), + monkey.NewModule(), ) }