From a9c24b2c196bac1514db1f1ac09493df44ed6412 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Tue, 19 Dec 2023 20:47:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=89=E6=B6=88=E6=88=98=E4=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- comm/imodule.go | 2 + modules/entertainment/api_receive.go | 82 +++++++ modules/entertainment/configure.go | 52 ++++- modules/entertainment/module.go | 21 ++ modules/pay/module.go | 25 ++- pb/entertain_db.pb.go | 318 +++++++++++++++++---------- pb/entertain_msg.pb.go | 225 +++++++++++++++---- pb/friend_msg.pb.go | 111 +++++----- pb/pay_db.pb.go | 24 +- 9 files changed, 631 insertions(+), 229 deletions(-) create mode 100644 modules/entertainment/api_receive.go diff --git a/comm/imodule.go b/comm/imodule.go index 28c826f1f..159a729b8 100644 --- a/comm/imodule.go +++ b/comm/imodule.go @@ -694,6 +694,8 @@ type ( UserOffline(roomid string, uid string) (err error) //主动认输 AdmitDefeat(roomid string, uid string) (err error) + + IPayDelivery } IMoonlv interface { IBuriedUpdateNotify diff --git a/modules/entertainment/api_receive.go b/modules/entertainment/api_receive.go new file mode 100644 index 000000000..bdf4da719 --- /dev/null +++ b/modules/entertainment/api_receive.go @@ -0,0 +1,82 @@ +package entertainment + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/pb" + cfg "go_dreamfactory/sys/configure/structs" +) + +// 参数校验 +func (this *apiComp) ReceiveCheck(session comm.IUserSession, req *pb.EntertainReceiveReq) (errdata *pb.ErrorData) { + + return +} + +// /获取系统公告 +func (this *apiComp) Receive(session comm.IUserSession, req *pb.EntertainReceiveReq) (errdata *pb.ErrorData) { + var ( + info *pb.DBXXLData + warorder *pb.Warorder + confs []*cfg.GamePassCheckData + awards []*cfg.Gameatn + award []*pb.UserAtno + err error + progress int32 + ) + if errdata = this.ReceiveCheck(session, req); errdata != nil { + return + } + if info, err = this.module.model.getEntertainmList(session.GetUserId()); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + if confs, err = this.module.configure.getorder(req.Rtype); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_ConfigNoFound, + Title: pb.ErrorCode_ConfigNoFound.ToString(), + Message: err.Error(), + } + return + } + progress = int32(this.module.ModuleUser.QueryAttributeValue(session.GetUserId(), comm.Consumeexp)) + awards = make([]*cfg.Gameatn, 0) + for _, v := range confs { + if v.Parameter <= progress { + if warorder.Freeprogress < v.Parameter { + awards = append(awards, v.FreeReward...) + + } + if warorder.Vip { + if warorder.Payprogress < v.Parameter { + awards = append(awards, v.PayReward...) + } + } + } + } + warorder.Freeprogress = progress + if warorder.Vip { + warorder.Payprogress = progress + } + warorder.Freeprogress = 1 + if warorder.Vip { + warorder.Payprogress = 1 + } + + if errdata, award = this.module.DispenseAtno(session, awards, true); errdata != nil { + return + } + this.module.model.Change(session.GetUserId(), map[string]interface{}{ + "freeprogress": info.Freeprogress, + "payprogress": info.Payprogress, + }) + session.SendMsg(string(this.module.GetType()), "receive", &pb.EntertainReceiveResp{Info: info, Award: award}) + + go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { + this.module.WriteUserLog(session.GetUserId(), req, comm.GMResAddType, "EntertainReceiveReq", award) + }) + return +} diff --git a/modules/entertainment/configure.go b/modules/entertainment/configure.go index f8fba4406..2cedf5f7e 100644 --- a/modules/entertainment/configure.go +++ b/modules/entertainment/configure.go @@ -19,6 +19,7 @@ const ( game_playingmethod = "game_playingmethod.json" consume_box = "game_consumebox.json" game_playerskill = "game_playerskill.json" + game_passcheck = "game_passcheck.json" ) // /配置管理组件 @@ -27,6 +28,7 @@ type configureComp struct { module *Entertainment lock sync.RWMutex block map[int32]*cfg.GameBlockData + order map[int32][]*cfg.GamePassCheckData //战令 } const moduleName = "entertainment" @@ -43,7 +45,7 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp game_playerskill: cfg.NewGamePlayerSkill, }) configure.RegisterConfigure(game_block, cfg.NewGameBlock, this.LoadGameBlock) - + configure.RegisterConfigure(game_passcheck, cfg.NewGamePassCheck, this.updatePassCheck) return } @@ -288,3 +290,51 @@ func (this *configureComp) GetGamePlaySkill(skillid int32) (conf *cfg.GamePlayer err = comm.NewNotFoundConfErr(moduleName, game_playerskill, skillid) return } + +// 更新任务配置表 +func (this *configureComp) updatePassCheck() { + gwt, err := this.getPassCheckCfg() + if err != nil { + this.module.Error("世界任务配置表异常!") + return + } + + orderConf := make(map[int32][]*cfg.GamePassCheckData) + for _, v := range gwt.GetDataList() { + if _, ok := orderConf[v.PasscheckType]; !ok { + orderConf[v.PasscheckType] = make([]*cfg.GamePassCheckData, 0) + } + orderConf[v.PasscheckType] = append(orderConf[v.PasscheckType], v) + } + + this.lock.Lock() + this.order = orderConf + this.lock.Unlock() +} + +func (this *configureComp) getorder(wtype int32) (results []*cfg.GamePassCheckData, err error) { + this.lock.RLock() + defer this.lock.RUnlock() + var ok bool + if results, ok = this.order[wtype]; !ok { + err = fmt.Errorf("no found wtype:%d", wtype) + } + return +} + +// 读取任务配置表 +func (this *configureComp) getPassCheckCfg() (data *cfg.GamePassCheck, err error) { + var ( + v interface{} + ok bool + ) + if v, err = this.GetConfigure(game_passcheck); err != nil { + return + } else { + if data, ok = v.(*cfg.GamePassCheck); !ok { + err = fmt.Errorf("%T is *cfg.GameWorldTask", v) + return + } + } + return +} diff --git a/modules/entertainment/module.go b/modules/entertainment/module.go index 8ff2c5842..61fe110b5 100644 --- a/modules/entertainment/module.go +++ b/modules/entertainment/module.go @@ -325,3 +325,24 @@ func (this *Entertainment) ConsumXxlSkillCard(session comm.IUserSession, skillCa }) return } +func (this *Entertainment) Delivery(session comm.IUserSession, pId int32) (errdata *pb.ErrorData, items []*pb.UserAtno) { + + var ( + result *pb.DBXXLData + err error + ) + + if result, err = this.model.getEntertainmList(session.GetUserId()); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Message: err.Error(), + } + return + } + + result.Vip = true + this.model.Change(session.GetUserId(), map[string]interface{}{ + "vip": result.Vip, + }) + return +} diff --git a/modules/pay/module.go b/modules/pay/module.go index 0b6eb420a..481813c14 100644 --- a/modules/pay/module.go +++ b/modules/pay/module.go @@ -29,13 +29,14 @@ type Pay struct { modelPayUser *modelPayUserComp modelDiamond *modelDiamondComp modelDaily *modelDailyComp - modelActivity *modelActivityComp //活动礼包 - privilege comm.IPayDelivery //月卡 - warorder comm.IWarorder //战令 - shopcenter comm.IPayDelivery //购物中心 - addrecharge comm.IAddrecharge //累充系统 - pushgiftbag comm.IPushgiftbag //推送礼包 - island comm.IIsland //海岛战令 + modelActivity *modelActivityComp //活动礼包 + privilege comm.IPayDelivery //月卡 + warorder comm.IWarorder //战令 + shopcenter comm.IPayDelivery //购物中心 + addrecharge comm.IAddrecharge //累充系统 + pushgiftbag comm.IPushgiftbag //推送礼包 + island comm.IIsland //海岛战令 + xxlPass comm.IEntertainment //三消战令 configure *configureComp } @@ -81,6 +82,10 @@ func (this *Pay) Start() (err error) { return } this.island = module.(comm.IIsland) + if module, err = this.service.GetModule(comm.ModuleEntertainment); err != nil { + return + } + this.xxlPass = module.(comm.IEntertainment) this.service.RegisterFunctionName(string(comm.Rpc_ModulePayDelivery), this.Rpc_ModulePayDelivery) return } @@ -205,6 +210,12 @@ func (this *Pay) Rpc_ModulePayDelivery(ctx context.Context, args *pb.HttpPayDeli return } break + case pb.DBPayType_XxlPass: + if errdata, items = this.xxlPass.Delivery(session, order.Pid); errdata != nil { + reply.Code = errdata.Code + return + } + break } this.addrecharge.RechargeIntegral(session, conf.Integral) //记录累充积分 for _, v := range res { diff --git a/pb/entertain_db.pb.go b/pb/entertain_db.pb.go index beebfa7ff..ae44958c3 100644 --- a/pb/entertain_db.pb.go +++ b/pb/entertain_db.pb.go @@ -267,6 +267,45 @@ func (x *PlayerData) GetSkill() map[int32]int32 { return nil } +//战令 +type XxlWarorder struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *XxlWarorder) Reset() { + *x = XxlWarorder{} + if protoimpl.UnsafeEnabled { + mi := &file_entertain_entertain_db_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *XxlWarorder) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*XxlWarorder) ProtoMessage() {} + +func (x *XxlWarorder) ProtoReflect() protoreflect.Message { + mi := &file_entertain_entertain_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 XxlWarorder.ProtoReflect.Descriptor instead. +func (*XxlWarorder) Descriptor() ([]byte, []int) { + return file_entertain_entertain_db_proto_rawDescGZIP(), []int{3} +} + // 消消乐匹配数据 type DBXXLMatch struct { state protoimpl.MessageState @@ -282,7 +321,7 @@ type DBXXLMatch struct { func (x *DBXXLMatch) Reset() { *x = DBXXLMatch{} if protoimpl.UnsafeEnabled { - mi := &file_entertain_entertain_db_proto_msgTypes[3] + mi := &file_entertain_entertain_db_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -295,7 +334,7 @@ func (x *DBXXLMatch) String() string { func (*DBXXLMatch) ProtoMessage() {} func (x *DBXXLMatch) ProtoReflect() protoreflect.Message { - mi := &file_entertain_entertain_db_proto_msgTypes[3] + mi := &file_entertain_entertain_db_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -308,7 +347,7 @@ func (x *DBXXLMatch) ProtoReflect() protoreflect.Message { // Deprecated: Use DBXXLMatch.ProtoReflect.Descriptor instead. func (*DBXXLMatch) Descriptor() ([]byte, []int) { - return file_entertain_entertain_db_proto_rawDescGZIP(), []int{3} + return file_entertain_entertain_db_proto_rawDescGZIP(), []int{4} } func (x *DBXXLMatch) GetUserinfo() *BaseUserInfo { @@ -351,7 +390,7 @@ type BoxData struct { func (x *BoxData) Reset() { *x = BoxData{} if protoimpl.UnsafeEnabled { - mi := &file_entertain_entertain_db_proto_msgTypes[4] + mi := &file_entertain_entertain_db_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -364,7 +403,7 @@ func (x *BoxData) String() string { func (*BoxData) ProtoMessage() {} func (x *BoxData) ProtoReflect() protoreflect.Message { - mi := &file_entertain_entertain_db_proto_msgTypes[4] + mi := &file_entertain_entertain_db_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -377,7 +416,7 @@ func (x *BoxData) ProtoReflect() protoreflect.Message { // Deprecated: Use BoxData.ProtoReflect.Descriptor instead. func (*BoxData) Descriptor() ([]byte, []int) { - return file_entertain_entertain_db_proto_rawDescGZIP(), []int{4} + return file_entertain_entertain_db_proto_rawDescGZIP(), []int{5} } func (x *BoxData) GetBoxid() int32 { @@ -406,19 +445,22 @@ type DBXXLData struct { Rtime int64 `protobuf:"varint,5,opt,name=rtime,proto3" json:"rtime"` // 刷新时间 (客户端不用) Playtype []int32 `protobuf:"varint,6,rep,packed,name=playtype,proto3" json:"playtype"` // 每天随机玩法 // map boxid = 7; // 宝箱 key 宝箱id value 可领取的时间 - Box []*BoxData `protobuf:"bytes,7,rep,name=box,proto3" json:"box"` - Roomid string `protobuf:"bytes,8,opt,name=roomid,proto3" json:"roomid"` // 房间id 重连用 - ServicePath string `protobuf:"bytes,9,opt,name=servicePath,proto3" json:"servicePath"` // 目标服务节点 重连RPC用 - Etime int64 `protobuf:"varint,10,opt,name=etime,proto3" json:"etime"` // 赛季结束时间 - Touxiang int32 `protobuf:"varint,11,opt,name=touxiang,proto3" json:"touxiang"` // 今天投降的次数 - Skill map[int32]int32 `protobuf:"bytes,12,rep,name=skill,proto3" json:"skill" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key 技能id value 数量(可为0) - Liansheng int32 `protobuf:"varint,13,opt,name=liansheng,proto3" json:"liansheng"` // 连胜 + Box []*BoxData `protobuf:"bytes,7,rep,name=box,proto3" json:"box"` + Roomid string `protobuf:"bytes,8,opt,name=roomid,proto3" json:"roomid"` // 房间id 重连用 + ServicePath string `protobuf:"bytes,9,opt,name=servicePath,proto3" json:"servicePath"` // 目标服务节点 重连RPC用 + Etime int64 `protobuf:"varint,10,opt,name=etime,proto3" json:"etime"` // 赛季结束时间 + Touxiang int32 `protobuf:"varint,11,opt,name=touxiang,proto3" json:"touxiang"` // 今天投降的次数 + Skill map[int32]int32 `protobuf:"bytes,12,rep,name=skill,proto3" json:"skill" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key 技能id value 数量(可为0) + Liansheng int32 `protobuf:"varint,13,opt,name=liansheng,proto3" json:"liansheng"` // 连胜 + Freeprogress int32 `protobuf:"varint,14,opt,name=freeprogress,proto3" json:"freeprogress"` //已领取进度 + Payprogress int32 `protobuf:"varint,15,opt,name=payprogress,proto3" json:"payprogress"` + Vip bool `protobuf:"varint,16,opt,name=vip,proto3" json:"vip"` // 是否购买 } func (x *DBXXLData) Reset() { *x = DBXXLData{} if protoimpl.UnsafeEnabled { - mi := &file_entertain_entertain_db_proto_msgTypes[5] + mi := &file_entertain_entertain_db_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -431,7 +473,7 @@ func (x *DBXXLData) String() string { func (*DBXXLData) ProtoMessage() {} func (x *DBXXLData) ProtoReflect() protoreflect.Message { - mi := &file_entertain_entertain_db_proto_msgTypes[5] + mi := &file_entertain_entertain_db_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -444,7 +486,7 @@ func (x *DBXXLData) ProtoReflect() protoreflect.Message { // Deprecated: Use DBXXLData.ProtoReflect.Descriptor instead. func (*DBXXLData) Descriptor() ([]byte, []int) { - return file_entertain_entertain_db_proto_rawDescGZIP(), []int{5} + return file_entertain_entertain_db_proto_rawDescGZIP(), []int{6} } func (x *DBXXLData) GetId() string { @@ -538,6 +580,27 @@ func (x *DBXXLData) GetLiansheng() int32 { return 0 } +func (x *DBXXLData) GetFreeprogress() int32 { + if x != nil { + return x.Freeprogress + } + return 0 +} + +func (x *DBXXLData) GetPayprogress() int32 { + if x != nil { + return x.Payprogress + } + return 0 +} + +func (x *DBXXLData) GetVip() bool { + if x != nil { + return x.Vip + } + return false +} + // 三消游戏规则 type DBXxlRules struct { state protoimpl.MessageState @@ -554,7 +617,7 @@ type DBXxlRules struct { func (x *DBXxlRules) Reset() { *x = DBXxlRules{} if protoimpl.UnsafeEnabled { - mi := &file_entertain_entertain_db_proto_msgTypes[6] + mi := &file_entertain_entertain_db_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -567,7 +630,7 @@ func (x *DBXxlRules) String() string { func (*DBXxlRules) ProtoMessage() {} func (x *DBXxlRules) ProtoReflect() protoreflect.Message { - mi := &file_entertain_entertain_db_proto_msgTypes[6] + mi := &file_entertain_entertain_db_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -580,7 +643,7 @@ func (x *DBXxlRules) ProtoReflect() protoreflect.Message { // Deprecated: Use DBXxlRules.ProtoReflect.Descriptor instead. func (*DBXxlRules) Descriptor() ([]byte, []int) { - return file_entertain_entertain_db_proto_rawDescGZIP(), []int{6} + return file_entertain_entertain_db_proto_rawDescGZIP(), []int{7} } func (x *DBXxlRules) GetRoomType() int32 { @@ -657,80 +720,86 @@ var file_entertain_entertain_db_proto_rawDesc = []byte{ 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, - 0xd7, 0x01, 0x0a, 0x0a, 0x44, 0x42, 0x58, 0x58, 0x4c, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x29, - 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x08, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x61, 0x72, - 0x64, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x61, 0x72, 0x64, 0x69, - 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x65, 0x78, 0x70, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x65, 0x78, - 0x70, 0x12, 0x2c, 0x0a, 0x05, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x16, 0x2e, 0x44, 0x42, 0x58, 0x58, 0x4c, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x53, 0x6b, - 0x69, 0x6c, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x1a, - 0x38, 0x0a, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 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, 0x3b, 0x0a, 0x07, 0x42, 0x6f, 0x78, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x6f, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x05, 0x62, 0x6f, 0x78, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, - 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6f, 0x70, - 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x22, 0xba, 0x04, 0x0a, 0x09, 0x44, 0x42, 0x58, 0x58, 0x4c, - 0x44, 0x61, 0x74, 0x61, 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, 0x2e, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x44, 0x42, 0x58, 0x58, 0x4c, 0x44, 0x61, - 0x74, 0x61, 0x2e, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, - 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x63, 0x61, 0x72, 0x64, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x44, 0x42, 0x58, 0x58, 0x4c, 0x44, 0x61, 0x74, 0x61, - 0x2e, 0x43, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x63, 0x61, 0x72, 0x64, - 0x12, 0x14, 0x0a, 0x05, 0x72, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x05, 0x72, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x74, 0x79, - 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x03, 0x62, 0x6f, 0x78, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x08, 0x2e, 0x42, 0x6f, 0x78, 0x44, 0x61, 0x74, 0x61, 0x52, 0x03, 0x62, 0x6f, 0x78, 0x12, 0x16, - 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x72, 0x6f, 0x6f, 0x6d, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x50, 0x61, 0x74, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1a, - 0x0a, 0x08, 0x74, 0x6f, 0x75, 0x78, 0x69, 0x61, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x74, 0x6f, 0x75, 0x78, 0x69, 0x61, 0x6e, 0x67, 0x12, 0x2b, 0x0a, 0x05, 0x73, 0x6b, - 0x69, 0x6c, 0x6c, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x44, 0x42, 0x58, 0x58, - 0x4c, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x52, 0x05, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x61, 0x6e, 0x73, - 0x68, 0x65, 0x6e, 0x67, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x61, 0x6e, - 0x73, 0x68, 0x65, 0x6e, 0x67, 0x1a, 0x39, 0x0a, 0x0b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x1a, 0x37, 0x0a, 0x09, 0x43, 0x61, 0x72, 0x64, 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, 0x38, 0x0a, 0x0a, 0x53, 0x6b, 0x69, - 0x6c, 0x6c, 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, 0xac, 0x02, 0x0a, 0x0a, 0x44, 0x42, 0x58, 0x78, 0x6c, 0x52, 0x75, 0x6c, - 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x6f, 0x6f, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x52, 0x6f, 0x6f, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, - 0x0a, 0x05, 0x63, 0x61, 0x72, 0x64, 0x31, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, - 0x61, 0x72, 0x64, 0x31, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x61, 0x72, 0x64, 0x32, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x61, 0x72, 0x64, 0x32, 0x12, 0x2f, 0x0a, 0x06, 0x73, 0x6b, - 0x69, 0x6c, 0x6c, 0x31, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x44, 0x42, 0x58, - 0x78, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x2e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x31, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x06, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x31, 0x12, 0x2f, 0x0a, 0x06, 0x73, - 0x6b, 0x69, 0x6c, 0x6c, 0x32, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x44, 0x42, - 0x58, 0x78, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x2e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x32, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x32, 0x1a, 0x39, 0x0a, 0x0b, - 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x31, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x0d, 0x0a, 0x0b, 0x58, 0x78, 0x6c, 0x57, 0x61, 0x72, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x22, 0xd7, + 0x01, 0x0a, 0x0a, 0x44, 0x42, 0x58, 0x58, 0x4c, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x29, 0x0a, + 0x08, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, + 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x61, 0x72, 0x64, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x61, 0x72, 0x64, 0x69, 0x64, + 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x65, 0x78, 0x70, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x65, 0x78, 0x70, + 0x12, 0x2c, 0x0a, 0x05, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x16, 0x2e, 0x44, 0x42, 0x58, 0x58, 0x4c, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x53, 0x6b, 0x69, + 0x6c, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x1a, 0x38, + 0x0a, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 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, 0x3b, 0x0a, 0x07, 0x42, 0x6f, 0x78, 0x44, + 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x6f, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x62, 0x6f, 0x78, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x65, + 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6f, 0x70, 0x65, + 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x92, 0x05, 0x0a, 0x09, 0x44, 0x42, 0x58, 0x58, 0x4c, 0x44, + 0x61, 0x74, 0x61, 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, 0x2e, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x44, 0x42, 0x58, 0x58, 0x4c, 0x44, 0x61, 0x74, + 0x61, 0x2e, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x72, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x63, 0x61, 0x72, 0x64, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x44, 0x42, 0x58, 0x58, 0x4c, 0x44, 0x61, 0x74, 0x61, 0x2e, + 0x43, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x63, 0x61, 0x72, 0x64, 0x12, + 0x14, 0x0a, 0x05, 0x72, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, + 0x72, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x74, 0x79, 0x70, + 0x65, 0x12, 0x1a, 0x0a, 0x03, 0x62, 0x6f, 0x78, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, + 0x2e, 0x42, 0x6f, 0x78, 0x44, 0x61, 0x74, 0x61, 0x52, 0x03, 0x62, 0x6f, 0x78, 0x12, 0x16, 0x0a, + 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, + 0x6f, 0x6f, 0x6d, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x50, 0x61, 0x74, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x74, 0x6f, 0x75, 0x78, 0x69, 0x61, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x74, 0x6f, 0x75, 0x78, 0x69, 0x61, 0x6e, 0x67, 0x12, 0x2b, 0x0a, 0x05, 0x73, 0x6b, 0x69, + 0x6c, 0x6c, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x44, 0x42, 0x58, 0x58, 0x4c, + 0x44, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x05, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x61, 0x6e, 0x73, 0x68, + 0x65, 0x6e, 0x67, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x61, 0x6e, 0x73, + 0x68, 0x65, 0x6e, 0x67, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x72, 0x65, 0x65, 0x70, 0x72, 0x6f, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x66, 0x72, 0x65, 0x65, + 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x79, 0x70, + 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x70, + 0x61, 0x79, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x69, + 0x70, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x76, 0x69, 0x70, 0x1a, 0x39, 0x0a, 0x0b, + 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x53, 0x6b, 0x69, 0x6c, 0x6c, - 0x32, 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, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x33, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x43, 0x61, 0x72, 0x64, 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, 0x38, 0x0a, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 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, 0xac, 0x02, 0x0a, 0x0a, 0x44, + 0x42, 0x58, 0x78, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x6f, 0x6f, + 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x52, 0x6f, 0x6f, + 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x61, 0x72, 0x64, 0x31, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x61, 0x72, 0x64, 0x31, 0x12, 0x14, 0x0a, 0x05, 0x63, + 0x61, 0x72, 0x64, 0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x61, 0x72, 0x64, + 0x32, 0x12, 0x2f, 0x0a, 0x06, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x31, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x17, 0x2e, 0x44, 0x42, 0x58, 0x78, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x2e, 0x53, + 0x6b, 0x69, 0x6c, 0x6c, 0x31, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x73, 0x6b, 0x69, 0x6c, + 0x6c, 0x31, 0x12, 0x2f, 0x0a, 0x06, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x32, 0x18, 0x05, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x44, 0x42, 0x58, 0x78, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x2e, + 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x32, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x73, 0x6b, 0x69, + 0x6c, 0x6c, 0x32, 0x1a, 0x39, 0x0a, 0x0b, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x31, 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, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x32, 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, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, + 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -745,36 +814,37 @@ func file_entertain_entertain_db_proto_rawDescGZIP() []byte { return file_entertain_entertain_db_proto_rawDescData } -var file_entertain_entertain_db_proto_msgTypes = make([]protoimpl.MessageInfo, 14) +var file_entertain_entertain_db_proto_msgTypes = make([]protoimpl.MessageInfo, 15) var file_entertain_entertain_db_proto_goTypes = []interface{}{ (*MapData)(nil), // 0: MapData (*GirdeData)(nil), // 1: GirdeData (*PlayerData)(nil), // 2: PlayerData - (*DBXXLMatch)(nil), // 3: DBXXLMatch - (*BoxData)(nil), // 4: BoxData - (*DBXXLData)(nil), // 5: DBXXLData - (*DBXxlRules)(nil), // 6: DBXxlRules - nil, // 7: PlayerData.SkillEntry - nil, // 8: DBXXLMatch.SkillEntry - nil, // 9: DBXXLData.RewardEntry - nil, // 10: DBXXLData.CardEntry - nil, // 11: DBXXLData.SkillEntry - nil, // 12: DBXxlRules.Skill1Entry - nil, // 13: DBXxlRules.Skill2Entry - (*BaseUserInfo)(nil), // 14: BaseUserInfo + (*XxlWarorder)(nil), // 3: XxlWarorder + (*DBXXLMatch)(nil), // 4: DBXXLMatch + (*BoxData)(nil), // 5: BoxData + (*DBXXLData)(nil), // 6: DBXXLData + (*DBXxlRules)(nil), // 7: DBXxlRules + nil, // 8: PlayerData.SkillEntry + nil, // 9: DBXXLMatch.SkillEntry + nil, // 10: DBXXLData.RewardEntry + nil, // 11: DBXXLData.CardEntry + nil, // 12: DBXXLData.SkillEntry + nil, // 13: DBXxlRules.Skill1Entry + nil, // 14: DBXxlRules.Skill2Entry + (*BaseUserInfo)(nil), // 15: BaseUserInfo } var file_entertain_entertain_db_proto_depIdxs = []int32{ 1, // 0: MapData.data:type_name -> GirdeData - 14, // 1: PlayerData.userinfo:type_name -> BaseUserInfo - 7, // 2: PlayerData.skill:type_name -> PlayerData.SkillEntry - 14, // 3: DBXXLMatch.userinfo:type_name -> BaseUserInfo - 8, // 4: DBXXLMatch.skill:type_name -> DBXXLMatch.SkillEntry - 9, // 5: DBXXLData.reward:type_name -> DBXXLData.RewardEntry - 10, // 6: DBXXLData.card:type_name -> DBXXLData.CardEntry - 4, // 7: DBXXLData.box:type_name -> BoxData - 11, // 8: DBXXLData.skill:type_name -> DBXXLData.SkillEntry - 12, // 9: DBXxlRules.skill1:type_name -> DBXxlRules.Skill1Entry - 13, // 10: DBXxlRules.skill2:type_name -> DBXxlRules.Skill2Entry + 15, // 1: PlayerData.userinfo:type_name -> BaseUserInfo + 8, // 2: PlayerData.skill:type_name -> PlayerData.SkillEntry + 15, // 3: DBXXLMatch.userinfo:type_name -> BaseUserInfo + 9, // 4: DBXXLMatch.skill:type_name -> DBXXLMatch.SkillEntry + 10, // 5: DBXXLData.reward:type_name -> DBXXLData.RewardEntry + 11, // 6: DBXXLData.card:type_name -> DBXXLData.CardEntry + 5, // 7: DBXXLData.box:type_name -> BoxData + 12, // 8: DBXXLData.skill:type_name -> DBXXLData.SkillEntry + 13, // 9: DBXxlRules.skill1:type_name -> DBXxlRules.Skill1Entry + 14, // 10: DBXxlRules.skill2:type_name -> DBXxlRules.Skill2Entry 11, // [11:11] is the sub-list for method output_type 11, // [11:11] is the sub-list for method input_type 11, // [11:11] is the sub-list for extension type_name @@ -826,7 +896,7 @@ func file_entertain_entertain_db_proto_init() { } } file_entertain_entertain_db_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DBXXLMatch); i { + switch v := v.(*XxlWarorder); i { case 0: return &v.state case 1: @@ -838,7 +908,7 @@ func file_entertain_entertain_db_proto_init() { } } file_entertain_entertain_db_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BoxData); i { + switch v := v.(*DBXXLMatch); i { case 0: return &v.state case 1: @@ -850,7 +920,7 @@ func file_entertain_entertain_db_proto_init() { } } file_entertain_entertain_db_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DBXXLData); i { + switch v := v.(*BoxData); i { case 0: return &v.state case 1: @@ -862,6 +932,18 @@ func file_entertain_entertain_db_proto_init() { } } file_entertain_entertain_db_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DBXXLData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_entertain_entertain_db_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DBXxlRules); i { case 0: return &v.state @@ -880,7 +962,7 @@ func file_entertain_entertain_db_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_entertain_entertain_db_proto_rawDesc, NumEnums: 0, - NumMessages: 14, + NumMessages: 15, NumExtensions: 0, NumServices: 0, }, diff --git a/pb/entertain_msg.pb.go b/pb/entertain_msg.pb.go index 803b53da0..4fa698d51 100644 --- a/pb/entertain_msg.pb.go +++ b/pb/entertain_msg.pb.go @@ -2251,6 +2251,109 @@ func (x *EntertainSurrenderResp) GetLeftcount() int32 { return 0 } +// 战令奖励领取 +type EntertainReceiveReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Rtype int32 `protobuf:"varint,1,opt,name=Rtype,proto3" json:"Rtype"` +} + +func (x *EntertainReceiveReq) Reset() { + *x = EntertainReceiveReq{} + if protoimpl.UnsafeEnabled { + mi := &file_entertain_entertain_msg_proto_msgTypes[40] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EntertainReceiveReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EntertainReceiveReq) ProtoMessage() {} + +func (x *EntertainReceiveReq) ProtoReflect() protoreflect.Message { + mi := &file_entertain_entertain_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 EntertainReceiveReq.ProtoReflect.Descriptor instead. +func (*EntertainReceiveReq) Descriptor() ([]byte, []int) { + return file_entertain_entertain_msg_proto_rawDescGZIP(), []int{40} +} + +func (x *EntertainReceiveReq) GetRtype() int32 { + if x != nil { + return x.Rtype + } + return 0 +} + +type EntertainReceiveResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Info *DBXXLData `protobuf:"bytes,1,opt,name=info,proto3" json:"info"` + Award []*UserAtno `protobuf:"bytes,4,rep,name=award,proto3" json:"award"` //奖励 +} + +func (x *EntertainReceiveResp) Reset() { + *x = EntertainReceiveResp{} + if protoimpl.UnsafeEnabled { + mi := &file_entertain_entertain_msg_proto_msgTypes[41] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EntertainReceiveResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EntertainReceiveResp) ProtoMessage() {} + +func (x *EntertainReceiveResp) ProtoReflect() protoreflect.Message { + mi := &file_entertain_entertain_msg_proto_msgTypes[41] + 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 EntertainReceiveResp.ProtoReflect.Descriptor instead. +func (*EntertainReceiveResp) Descriptor() ([]byte, []int) { + return file_entertain_entertain_msg_proto_rawDescGZIP(), []int{41} +} + +func (x *EntertainReceiveResp) GetInfo() *DBXXLData { + if x != nil { + return x.Info + } + return nil +} + +func (x *EntertainReceiveResp) GetAward() []*UserAtno { + if x != nil { + return x.Award + } + return nil +} + var File_entertain_entertain_msg_proto protoreflect.FileDescriptor var file_entertain_entertain_msg_proto_rawDesc = []byte{ @@ -2471,8 +2574,16 @@ var file_entertain_entertain_msg_proto_rawDesc = []byte{ 0x36, 0x0a, 0x16, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x53, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x65, 0x66, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x65, - 0x66, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, - 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x66, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2b, 0x0a, 0x13, 0x45, 0x6e, 0x74, 0x65, 0x72, + 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x12, 0x14, + 0x0a, 0x05, 0x52, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x52, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x57, 0x0a, 0x14, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, + 0x6e, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x04, + 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x44, 0x42, 0x58, + 0x58, 0x4c, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x05, + 0x61, 0x77, 0x61, 0x72, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x55, 0x73, + 0x65, 0x72, 0x41, 0x74, 0x6e, 0x6f, 0x52, 0x05, 0x61, 0x77, 0x61, 0x72, 0x64, 0x42, 0x06, 0x5a, + 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2487,7 +2598,7 @@ func file_entertain_entertain_msg_proto_rawDescGZIP() []byte { return file_entertain_entertain_msg_proto_rawDescData } -var file_entertain_entertain_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 42) +var file_entertain_entertain_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 44) var file_entertain_entertain_msg_proto_goTypes = []interface{}{ (*EntertainMatchReq)(nil), // 0: EntertainMatchReq (*EntertainMatchResp)(nil), // 1: EntertainMatchResp @@ -2529,47 +2640,51 @@ var file_entertain_entertain_msg_proto_goTypes = []interface{}{ (*EntertainStarTimerPush)(nil), // 37: EntertainStarTimerPush (*EntertainSurrenderReq)(nil), // 38: EntertainSurrenderReq (*EntertainSurrenderResp)(nil), // 39: EntertainSurrenderResp - nil, // 40: EntertainChangePush.CardEntry - nil, // 41: EntertainChangePush.SkillEntry - (*PlayerData)(nil), // 42: PlayerData - (*MapData)(nil), // 43: MapData - (*UserAtno)(nil), // 44: UserAtno - (*BoxData)(nil), // 45: BoxData - (*DBXXLData)(nil), // 46: DBXXLData + (*EntertainReceiveReq)(nil), // 40: EntertainReceiveReq + (*EntertainReceiveResp)(nil), // 41: EntertainReceiveResp + nil, // 42: EntertainChangePush.CardEntry + nil, // 43: EntertainChangePush.SkillEntry + (*PlayerData)(nil), // 44: PlayerData + (*MapData)(nil), // 45: MapData + (*UserAtno)(nil), // 46: UserAtno + (*BoxData)(nil), // 47: BoxData + (*DBXXLData)(nil), // 48: DBXXLData } var file_entertain_entertain_msg_proto_depIdxs = []int32{ - 42, // 0: EntertainStartGamePush.user1:type_name -> PlayerData - 42, // 1: EntertainStartGamePush.user2:type_name -> PlayerData - 43, // 2: EntertainStartGamePush.mpadata:type_name -> MapData - 43, // 3: EntertainOperatorRstPush.mpadata:type_name -> MapData - 42, // 4: EntertainOperatorRstPush.user1:type_name -> PlayerData - 42, // 5: EntertainOperatorRstPush.user2:type_name -> PlayerData - 42, // 6: EntertainGameOverPush.user1:type_name -> PlayerData - 42, // 7: EntertainGameOverPush.user2:type_name -> PlayerData - 43, // 8: EntertainGameOverPush.mpadata:type_name -> MapData - 44, // 9: EntertainGameOverPush.reward:type_name -> UserAtno - 45, // 10: EntertainGameOverPush.box:type_name -> BoxData - 42, // 11: EntertainEnterRoomPush.user1:type_name -> PlayerData - 42, // 12: EntertainEnterRoomPush.user2:type_name -> PlayerData - 43, // 13: EntertainReconnectResp.mpadata:type_name -> MapData - 42, // 14: EntertainReconnectResp.user1:type_name -> PlayerData - 42, // 15: EntertainReconnectResp.user2:type_name -> PlayerData - 43, // 16: EntertainRefreshPlatResp.mpadata:type_name -> MapData - 43, // 17: EntertainRefreshPush.mpadata:type_name -> MapData - 46, // 18: EntertainGetListResp.data:type_name -> DBXXLData - 46, // 19: EntertainRewardResp.data:type_name -> DBXXLData - 44, // 20: EntertainRewardResp.reward:type_name -> UserAtno - 40, // 21: EntertainChangePush.card:type_name -> EntertainChangePush.CardEntry - 41, // 22: EntertainChangePush.skill:type_name -> EntertainChangePush.SkillEntry - 42, // 23: EntertainJoinCreateRoomPush.user1:type_name -> PlayerData - 42, // 24: EntertainJoinCreateRoomPush.user2:type_name -> PlayerData - 45, // 25: EntertainBoxRewardResp.box:type_name -> BoxData - 44, // 26: EntertainBoxRewardResp.reward:type_name -> UserAtno - 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 + 44, // 0: EntertainStartGamePush.user1:type_name -> PlayerData + 44, // 1: EntertainStartGamePush.user2:type_name -> PlayerData + 45, // 2: EntertainStartGamePush.mpadata:type_name -> MapData + 45, // 3: EntertainOperatorRstPush.mpadata:type_name -> MapData + 44, // 4: EntertainOperatorRstPush.user1:type_name -> PlayerData + 44, // 5: EntertainOperatorRstPush.user2:type_name -> PlayerData + 44, // 6: EntertainGameOverPush.user1:type_name -> PlayerData + 44, // 7: EntertainGameOverPush.user2:type_name -> PlayerData + 45, // 8: EntertainGameOverPush.mpadata:type_name -> MapData + 46, // 9: EntertainGameOverPush.reward:type_name -> UserAtno + 47, // 10: EntertainGameOverPush.box:type_name -> BoxData + 44, // 11: EntertainEnterRoomPush.user1:type_name -> PlayerData + 44, // 12: EntertainEnterRoomPush.user2:type_name -> PlayerData + 45, // 13: EntertainReconnectResp.mpadata:type_name -> MapData + 44, // 14: EntertainReconnectResp.user1:type_name -> PlayerData + 44, // 15: EntertainReconnectResp.user2:type_name -> PlayerData + 45, // 16: EntertainRefreshPlatResp.mpadata:type_name -> MapData + 45, // 17: EntertainRefreshPush.mpadata:type_name -> MapData + 48, // 18: EntertainGetListResp.data:type_name -> DBXXLData + 48, // 19: EntertainRewardResp.data:type_name -> DBXXLData + 46, // 20: EntertainRewardResp.reward:type_name -> UserAtno + 42, // 21: EntertainChangePush.card:type_name -> EntertainChangePush.CardEntry + 43, // 22: EntertainChangePush.skill:type_name -> EntertainChangePush.SkillEntry + 44, // 23: EntertainJoinCreateRoomPush.user1:type_name -> PlayerData + 44, // 24: EntertainJoinCreateRoomPush.user2:type_name -> PlayerData + 47, // 25: EntertainBoxRewardResp.box:type_name -> BoxData + 46, // 26: EntertainBoxRewardResp.reward:type_name -> UserAtno + 48, // 27: EntertainReceiveResp.info:type_name -> DBXXLData + 46, // 28: EntertainReceiveResp.award:type_name -> UserAtno + 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_entertain_entertain_msg_proto_init() } @@ -3060,6 +3175,30 @@ func file_entertain_entertain_msg_proto_init() { return nil } } + file_entertain_entertain_msg_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EntertainReceiveReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_entertain_entertain_msg_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EntertainReceiveResp); 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{ @@ -3067,7 +3206,7 @@ func file_entertain_entertain_msg_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_entertain_entertain_msg_proto_rawDesc, NumEnums: 0, - NumMessages: 42, + NumMessages: 44, NumExtensions: 0, NumServices: 0, }, diff --git a/pb/friend_msg.pb.go b/pb/friend_msg.pb.go index 69b693872..c1630366b 100644 --- a/pb/friend_msg.pb.go +++ b/pb/friend_msg.pb.go @@ -1848,7 +1848,8 @@ type FriendGetrewardResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Received int32 `protobuf:"varint,1,opt,name=received,proto3" json:"received"` + Received int32 `protobuf:"varint,1,opt,name=received,proto3" json:"received"` + Atno []*UserAtno `protobuf:"bytes,2,rep,name=atno,proto3" json:"atno"` // 奖励 } func (x *FriendGetrewardResp) Reset() { @@ -1890,6 +1891,13 @@ func (x *FriendGetrewardResp) GetReceived() int32 { return 0 } +func (x *FriendGetrewardResp) GetAtno() []*UserAtno { + if x != nil { + return x.Atno + } + return nil +} + // 助战英雄更新推送 type FriendAssistHeroUpdatePush struct { state protoimpl.MessageState @@ -2483,49 +2491,51 @@ var file_friend_friend_msg_proto_rawDesc = []byte{ 0x64, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x14, 0x0a, 0x12, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x47, 0x65, 0x74, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x22, 0x31, + 0x6e, 0x64, 0x47, 0x65, 0x74, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x22, 0x50, 0x0a, 0x13, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x47, 0x65, 0x74, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, - 0x64, 0x22, 0x41, 0x0a, 0x1a, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x73, 0x73, 0x69, 0x73, - 0x74, 0x48, 0x65, 0x72, 0x6f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, - 0x23, 0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0b, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x06, 0x66, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x22, 0x19, 0x0a, 0x17, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x73, - 0x73, 0x69, 0x73, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, - 0x41, 0x0a, 0x18, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x48, - 0x65, 0x72, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x07, 0x66, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x07, 0x66, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x73, 0x22, 0x34, 0x0a, 0x14, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x47, 0x65, 0x74, 0x52, - 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x22, 0x4d, 0x0a, 0x15, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, + 0x64, 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, + 0x22, 0x41, 0x0a, 0x1a, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, + 0x48, 0x65, 0x72, 0x6f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, 0x23, + 0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, + 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x06, 0x66, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x22, 0x19, 0x0a, 0x17, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x73, 0x73, + 0x69, 0x73, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x41, + 0x0a, 0x18, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x48, 0x65, + 0x72, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x07, 0x66, 0x72, + 0x69, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x46, 0x72, + 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x07, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x73, 0x22, 0x34, 0x0a, 0x14, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x47, 0x65, 0x74, 0x52, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x22, 0x4d, 0x0a, 0x15, 0x46, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, + 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x53, 0x0a, 0x12, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x41, 0x64, 0x64, 0x41, 0x67, 0x72, 0x65, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1c, 0x0a, 0x09, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, + 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x53, 0x0a, 0x12, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x50, 0x75, 0x73, + 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x12, - 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x53, 0x0a, 0x12, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x41, 0x64, 0x64, 0x41, 0x67, 0x72, 0x65, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1c, 0x0a, - 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x04, 0x69, - 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x53, 0x0a, 0x12, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x50, 0x75, - 0x73, 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, - 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, - 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04, 0x69, 0x6e, 0x66, - 0x6f, 0x22, 0x4c, 0x0a, 0x16, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5a, 0x61, 0x6e, 0x41, 0x6e, - 0x64, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x7a, - 0x61, 0x6e, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x7a, 0x61, 0x6e, 0x69, - 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x69, 0x64, 0x22, - 0x38, 0x0a, 0x17, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5a, 0x61, 0x6e, 0x41, 0x6e, 0x64, 0x52, - 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 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, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, - 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, + 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, + 0x22, 0x4c, 0x0a, 0x16, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5a, 0x61, 0x6e, 0x41, 0x6e, 0x64, + 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x7a, 0x61, + 0x6e, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x7a, 0x61, 0x6e, 0x69, 0x64, + 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x69, 0x64, 0x22, 0x38, + 0x0a, 0x17, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5a, 0x61, 0x6e, 0x41, 0x6e, 0x64, 0x52, 0x65, + 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 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, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2602,16 +2612,17 @@ var file_friend_friend_msg_proto_depIdxs = []int32{ 0, // 6: FriendZanlistResp.list:type_name -> FriendBase 0, // 7: FriendAssistlistResp.list:type_name -> FriendBase 47, // 8: FriendAssistlistResp.record:type_name -> AssistRecord - 0, // 9: FriendAssistHeroUpdatePush.friend:type_name -> FriendBase - 0, // 10: FriendAssistHeroListResp.friends:type_name -> FriendBase - 0, // 11: FriendAddAgreePush.info:type_name -> FriendBase - 0, // 12: FriendAddApplyPush.info:type_name -> FriendBase - 48, // 13: FriendZanAndReceiveResp.atno:type_name -> UserAtno - 14, // [14:14] is the sub-list for method output_type - 14, // [14:14] is the sub-list for method input_type - 14, // [14:14] is the sub-list for extension type_name - 14, // [14:14] is the sub-list for extension extendee - 0, // [0:14] is the sub-list for field type_name + 48, // 9: FriendGetrewardResp.atno:type_name -> UserAtno + 0, // 10: FriendAssistHeroUpdatePush.friend:type_name -> FriendBase + 0, // 11: FriendAssistHeroListResp.friends:type_name -> FriendBase + 0, // 12: FriendAddAgreePush.info:type_name -> FriendBase + 0, // 13: FriendAddApplyPush.info:type_name -> FriendBase + 48, // 14: FriendZanAndReceiveResp.atno:type_name -> UserAtno + 15, // [15:15] is the sub-list for method output_type + 15, // [15:15] is the sub-list for method input_type + 15, // [15:15] is the sub-list for extension type_name + 15, // [15:15] is the sub-list for extension extendee + 0, // [0:15] is the sub-list for field type_name } func init() { file_friend_friend_msg_proto_init() } diff --git a/pb/pay_db.pb.go b/pb/pay_db.pb.go index 5e1d5ee74..43ed6dfad 100644 --- a/pb/pay_db.pb.go +++ b/pb/pay_db.pb.go @@ -32,6 +32,7 @@ const ( DBPayType_ActivityFunds DBPayType = 5 //6.活动基金 DBPayType_PushgiftBag DBPayType = 6 //7.推送礼包 DBPayType_IsLandBattlePass DBPayType = 7 //8.海岛战令 + DBPayType_XxlPass DBPayType = 8 // 9 三消战令 ) // Enum value maps for DBPayType. @@ -45,6 +46,7 @@ var ( 5: "ActivityFunds", 6: "PushgiftBag", 7: "IsLandBattlePass", + 8: "XxlPass", } DBPayType_value = map[string]int32{ "DiamondShop": 0, @@ -55,6 +57,7 @@ var ( "ActivityFunds": 5, "PushgiftBag": 6, "IsLandBattlePass": 7, + "XxlPass": 8, } ) @@ -789,7 +792,7 @@ var file_pay_pay_db_proto_rawDesc = []byte{ 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x62, 0x75, 0x79, 0x6e, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, - 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x2a, 0x9a, 0x01, 0x0a, 0x09, 0x44, 0x42, 0x50, 0x61, + 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x2a, 0xa7, 0x01, 0x0a, 0x09, 0x44, 0x42, 0x50, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x53, 0x68, 0x6f, 0x70, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x61, 0x63, 0x6b, 0x73, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, 0x61, 0x73, 0x73, @@ -799,15 +802,16 @@ var file_pay_pay_db_proto_rawDesc = []byte{ 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x75, 0x73, 0x68, 0x67, 0x69, 0x66, 0x74, 0x42, 0x61, 0x67, 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x49, 0x73, 0x4c, 0x61, 0x6e, 0x64, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, - 0x73, 0x73, 0x10, 0x07, 0x2a, 0x76, 0x0a, 0x0f, 0x44, 0x42, 0x50, 0x61, 0x79, 0x4f, 0x72, 0x64, - 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x61, 0x79, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x5f, 0x55, 0x6e, 0x70, 0x61, 0x69, 0x64, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, - 0x50, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x50, 0x61, 0x69, 0x64, 0x10, 0x01, 0x12, - 0x13, 0x0a, 0x0f, 0x50, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x46, 0x69, 0x6e, 0x69, - 0x73, 0x68, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x5f, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x61, 0x79, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x10, 0x04, 0x42, 0x06, 0x5a, 0x04, - 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x73, 0x73, 0x10, 0x07, 0x12, 0x0b, 0x0a, 0x07, 0x58, 0x78, 0x6c, 0x50, 0x61, 0x73, 0x73, 0x10, + 0x08, 0x2a, 0x76, 0x0a, 0x0f, 0x44, 0x42, 0x50, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, + 0x5f, 0x55, 0x6e, 0x70, 0x61, 0x69, 0x64, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x61, 0x79, + 0x4f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x50, 0x61, 0x69, 0x64, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, + 0x50, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x10, + 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x43, 0x61, + 0x6e, 0x63, 0x65, 0x6c, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x61, 0x79, 0x4f, 0x72, 0x64, + 0x65, 0x72, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x10, 0x04, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, + 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var (