// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.28.0 // protoc v3.20.0 // source: hero/hero_msg.proto package pb import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) //英雄基础信息 type HeroInfoReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid"` // uid 查自己不传也可以 HeroId []string `protobuf:"bytes,2,rep,name=heroId,proto3" json:"heroId"` //英雄唯一ID } func (x *HeroInfoReq) Reset() { *x = HeroInfoReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroInfoReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroInfoReq) ProtoMessage() {} func (x *HeroInfoReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use HeroInfoReq.ProtoReflect.Descriptor instead. func (*HeroInfoReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{0} } func (x *HeroInfoReq) GetUid() string { if x != nil { return x.Uid } return "" } func (x *HeroInfoReq) GetHeroId() []string { if x != nil { return x.HeroId } return nil } type HeroInfoResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid"` Base []*DBHero `protobuf:"bytes,2,rep,name=base,proto3" json:"base"` } func (x *HeroInfoResp) Reset() { *x = HeroInfoResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroInfoResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroInfoResp) ProtoMessage() {} func (x *HeroInfoResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use HeroInfoResp.ProtoReflect.Descriptor instead. func (*HeroInfoResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{1} } func (x *HeroInfoResp) GetUid() string { if x != nil { return x.Uid } return "" } func (x *HeroInfoResp) GetBase() []*DBHero { if x != nil { return x.Base } return nil } //英雄列表 type HeroListReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *HeroListReq) Reset() { *x = HeroListReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroListReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroListReq) ProtoMessage() {} func (x *HeroListReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[2] 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 HeroListReq.ProtoReflect.Descriptor instead. func (*HeroListReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{2} } type HeroListResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields List []*DBHero `protobuf:"bytes,1,rep,name=list,proto3" json:"list"` } func (x *HeroListResp) Reset() { *x = HeroListResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroListResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroListResp) ProtoMessage() {} func (x *HeroListResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_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 HeroListResp.ProtoReflect.Descriptor instead. func (*HeroListResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{3} } func (x *HeroListResp) GetList() []*DBHero { if x != nil { return x.List } return nil } type MapStringInt32 struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Key string `protobuf:"bytes,1,opt,name=Key,proto3" json:"Key"` Value int32 `protobuf:"varint,2,opt,name=Value,proto3" json:"Value"` } func (x *MapStringInt32) Reset() { *x = MapStringInt32{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MapStringInt32) String() string { return protoimpl.X.MessageStringOf(x) } func (*MapStringInt32) ProtoMessage() {} func (x *MapStringInt32) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[4] 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 MapStringInt32.ProtoReflect.Descriptor instead. func (*MapStringInt32) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{4} } func (x *MapStringInt32) GetKey() string { if x != nil { return x.Key } return "" } func (x *MapStringInt32) GetValue() int32 { if x != nil { return x.Value } return 0 } // 卡牌升级 type HeroStrengthenUplvReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields HeroObjID string `protobuf:"bytes,1,opt,name=heroObjID,proto3" json:"heroObjID"` // 英雄对象ID ExpCards []*MapStringInt32 `protobuf:"bytes,2,rep,name=expCards,proto3" json:"expCards"` } func (x *HeroStrengthenUplvReq) Reset() { *x = HeroStrengthenUplvReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroStrengthenUplvReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroStrengthenUplvReq) ProtoMessage() {} func (x *HeroStrengthenUplvReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[5] 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 HeroStrengthenUplvReq.ProtoReflect.Descriptor instead. func (*HeroStrengthenUplvReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{5} } func (x *HeroStrengthenUplvReq) GetHeroObjID() string { if x != nil { return x.HeroObjID } return "" } func (x *HeroStrengthenUplvReq) GetExpCards() []*MapStringInt32 { if x != nil { return x.ExpCards } return nil } // 卡牌升级返回 type HeroStrengthenUplvResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hero *DBHero `protobuf:"bytes,1,opt,name=hero,proto3" json:"hero"` // 英雄对象 } func (x *HeroStrengthenUplvResp) Reset() { *x = HeroStrengthenUplvResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroStrengthenUplvResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroStrengthenUplvResp) ProtoMessage() {} func (x *HeroStrengthenUplvResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[6] 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 HeroStrengthenUplvResp.ProtoReflect.Descriptor instead. func (*HeroStrengthenUplvResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{6} } func (x *HeroStrengthenUplvResp) GetHero() *DBHero { if x != nil { return x.Hero } return nil } type CostCardData struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields CostCardObj string `protobuf:"bytes,1,opt,name=costCardObj,proto3" json:"costCardObj"` // 对象ID Amount int32 `protobuf:"varint,2,opt,name=amount,proto3" json:"amount"` // 数量 } func (x *CostCardData) Reset() { *x = CostCardData{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CostCardData) String() string { return protoimpl.X.MessageStringOf(x) } func (*CostCardData) ProtoMessage() {} func (x *CostCardData) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[7] 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 CostCardData.ProtoReflect.Descriptor instead. func (*CostCardData) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{7} } func (x *CostCardData) GetCostCardObj() string { if x != nil { return x.CostCardObj } return "" } func (x *CostCardData) GetAmount() int32 { if x != nil { return x.Amount } return 0 } // 卡牌升星 type HeroStrengthenUpStarReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields HeroObjID string `protobuf:"bytes,1,opt,name=heroObjID,proto3" json:"heroObjID"` // 英雄对象ID Hero []*CostCardData `protobuf:"bytes,2,rep,name=hero,proto3" json:"hero"` // 消耗卡牌对象ID HeroRace []*CostCardData `protobuf:"bytes,3,rep,name=heroRace,proto3" json:"heroRace"` // 消耗种族卡牌对象ID } func (x *HeroStrengthenUpStarReq) Reset() { *x = HeroStrengthenUpStarReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroStrengthenUpStarReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroStrengthenUpStarReq) ProtoMessage() {} func (x *HeroStrengthenUpStarReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[8] 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 HeroStrengthenUpStarReq.ProtoReflect.Descriptor instead. func (*HeroStrengthenUpStarReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{8} } func (x *HeroStrengthenUpStarReq) GetHeroObjID() string { if x != nil { return x.HeroObjID } return "" } func (x *HeroStrengthenUpStarReq) GetHero() []*CostCardData { if x != nil { return x.Hero } return nil } func (x *HeroStrengthenUpStarReq) GetHeroRace() []*CostCardData { if x != nil { return x.HeroRace } return nil } // 卡牌升星返回 type HeroStrengthenUpStarResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hero *DBHero `protobuf:"bytes,1,opt,name=hero,proto3" json:"hero"` // 英雄对象 } func (x *HeroStrengthenUpStarResp) Reset() { *x = HeroStrengthenUpStarResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroStrengthenUpStarResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroStrengthenUpStarResp) ProtoMessage() {} func (x *HeroStrengthenUpStarResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[9] 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 HeroStrengthenUpStarResp.ProtoReflect.Descriptor instead. func (*HeroStrengthenUpStarResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{9} } func (x *HeroStrengthenUpStarResp) GetHero() *DBHero { if x != nil { return x.Hero } return nil } // 卡牌技能升级 type HeroStrengthenUpSkillReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields HeroObjID string `protobuf:"bytes,1,opt,name=heroObjID,proto3" json:"heroObjID"` // 英雄对象ID CostCardObj []string `protobuf:"bytes,2,rep,name=costCardObj,proto3" json:"costCardObj"` // 消耗技能升级卡 } func (x *HeroStrengthenUpSkillReq) Reset() { *x = HeroStrengthenUpSkillReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroStrengthenUpSkillReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroStrengthenUpSkillReq) ProtoMessage() {} func (x *HeroStrengthenUpSkillReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[10] 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 HeroStrengthenUpSkillReq.ProtoReflect.Descriptor instead. func (*HeroStrengthenUpSkillReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{10} } func (x *HeroStrengthenUpSkillReq) GetHeroObjID() string { if x != nil { return x.HeroObjID } return "" } func (x *HeroStrengthenUpSkillReq) GetCostCardObj() []string { if x != nil { return x.CostCardObj } return nil } // 卡牌技能升级返回 type HeroStrengthenUpSkillResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hero *DBHero `protobuf:"bytes,1,opt,name=hero,proto3" json:"hero"` // 英雄对象 } func (x *HeroStrengthenUpSkillResp) Reset() { *x = HeroStrengthenUpSkillResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroStrengthenUpSkillResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroStrengthenUpSkillResp) ProtoMessage() {} func (x *HeroStrengthenUpSkillResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[11] 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 HeroStrengthenUpSkillResp.ProtoReflect.Descriptor instead. func (*HeroStrengthenUpSkillResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{11} } func (x *HeroStrengthenUpSkillResp) GetHero() *DBHero { if x != nil { return x.Hero } return nil } // 共鸣英雄 type HeroResonanceReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields HeroObjID string `protobuf:"bytes,1,opt,name=heroObjID,proto3" json:"heroObjID"` // 英雄对象ID CostObjID []string `protobuf:"bytes,2,rep,name=costObjID,proto3" json:"costObjID"` // 消耗对象 } func (x *HeroResonanceReq) Reset() { *x = HeroResonanceReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroResonanceReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroResonanceReq) ProtoMessage() {} func (x *HeroResonanceReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[12] 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 HeroResonanceReq.ProtoReflect.Descriptor instead. func (*HeroResonanceReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{12} } func (x *HeroResonanceReq) GetHeroObjID() string { if x != nil { return x.HeroObjID } return "" } func (x *HeroResonanceReq) GetCostObjID() []string { if x != nil { return x.CostObjID } return nil } type HeroResonanceResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hero *DBHero `protobuf:"bytes,1,opt,name=hero,proto3" json:"hero"` // 英雄对象 Energy int32 `protobuf:"varint,2,opt,name=energy,proto3" json:"energy"` // 共鸣成功 获得的能量点数 UpStarCard *DBHero `protobuf:"bytes,3,opt,name=upStarCard,proto3" json:"upStarCard"` //共鸣成功 获得的升星卡 } func (x *HeroResonanceResp) Reset() { *x = HeroResonanceResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroResonanceResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroResonanceResp) ProtoMessage() {} func (x *HeroResonanceResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[13] 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 HeroResonanceResp.ProtoReflect.Descriptor instead. func (*HeroResonanceResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{13} } func (x *HeroResonanceResp) GetHero() *DBHero { if x != nil { return x.Hero } return nil } func (x *HeroResonanceResp) GetEnergy() int32 { if x != nil { return x.Energy } return 0 } func (x *HeroResonanceResp) GetUpStarCard() *DBHero { if x != nil { return x.UpStarCard } return nil } // 重置共鸣属性 type HeroResonanceResetReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields HeroObjID string `protobuf:"bytes,1,opt,name=heroObjID,proto3" json:"heroObjID"` // 英雄对象ID } func (x *HeroResonanceResetReq) Reset() { *x = HeroResonanceResetReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroResonanceResetReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroResonanceResetReq) ProtoMessage() {} func (x *HeroResonanceResetReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[14] 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 HeroResonanceResetReq.ProtoReflect.Descriptor instead. func (*HeroResonanceResetReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{14} } func (x *HeroResonanceResetReq) GetHeroObjID() string { if x != nil { return x.HeroObjID } return "" } type HeroResonanceResetResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hero *DBHero `protobuf:"bytes,1,opt,name=hero,proto3" json:"hero"` // 英雄对象 Energy int32 `protobuf:"varint,2,opt,name=energy,proto3" json:"energy"` // 能量点数 } func (x *HeroResonanceResetResp) Reset() { *x = HeroResonanceResetResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroResonanceResetResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroResonanceResetResp) ProtoMessage() {} func (x *HeroResonanceResetResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[15] 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 HeroResonanceResetResp.ProtoReflect.Descriptor instead. func (*HeroResonanceResetResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{15} } func (x *HeroResonanceResetResp) GetHero() *DBHero { if x != nil { return x.Hero } return nil } func (x *HeroResonanceResetResp) GetEnergy() int32 { if x != nil { return x.Energy } return 0 } type EnergyData struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields UseEnergy int32 `protobuf:"varint,1,opt,name=useEnergy,proto3" json:"useEnergy"` // 使用的能量点数 UseType string `protobuf:"bytes,2,opt,name=useType,proto3" json:"useType"` // 使用的类型 (攻击、血量、防御) } func (x *EnergyData) Reset() { *x = EnergyData{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EnergyData) String() string { return protoimpl.X.MessageStringOf(x) } func (*EnergyData) ProtoMessage() {} func (x *EnergyData) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[16] 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 EnergyData.ProtoReflect.Descriptor instead. func (*EnergyData) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{16} } func (x *EnergyData) GetUseEnergy() int32 { if x != nil { return x.UseEnergy } return 0 } func (x *EnergyData) GetUseType() string { if x != nil { return x.UseType } return "" } // 使用能量点数 type HeroResonanceUseEnergyReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields HeroObjID string `protobuf:"bytes,1,opt,name=heroObjID,proto3" json:"heroObjID"` // 英雄对象ID Energy []*EnergyData `protobuf:"bytes,2,rep,name=energy,proto3" json:"energy"` } func (x *HeroResonanceUseEnergyReq) Reset() { *x = HeroResonanceUseEnergyReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroResonanceUseEnergyReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroResonanceUseEnergyReq) ProtoMessage() {} func (x *HeroResonanceUseEnergyReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[17] 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 HeroResonanceUseEnergyReq.ProtoReflect.Descriptor instead. func (*HeroResonanceUseEnergyReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{17} } func (x *HeroResonanceUseEnergyReq) GetHeroObjID() string { if x != nil { return x.HeroObjID } return "" } func (x *HeroResonanceUseEnergyReq) GetEnergy() []*EnergyData { if x != nil { return x.Energy } return nil } type HeroResonanceUseEnergyResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hero *DBHero `protobuf:"bytes,1,opt,name=hero,proto3" json:"hero"` // 英雄对象 } func (x *HeroResonanceUseEnergyResp) Reset() { *x = HeroResonanceUseEnergyResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroResonanceUseEnergyResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroResonanceUseEnergyResp) ProtoMessage() {} func (x *HeroResonanceUseEnergyResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[18] 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 HeroResonanceUseEnergyResp.ProtoReflect.Descriptor instead. func (*HeroResonanceUseEnergyResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{18} } func (x *HeroResonanceUseEnergyResp) GetHero() *DBHero { if x != nil { return x.Hero } return nil } // 觉醒 type HeroAwakenReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields HeroObjID string `protobuf:"bytes,1,opt,name=heroObjID,proto3" json:"heroObjID"` // 英雄对象ID } func (x *HeroAwakenReq) Reset() { *x = HeroAwakenReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroAwakenReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroAwakenReq) ProtoMessage() {} func (x *HeroAwakenReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[19] 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 HeroAwakenReq.ProtoReflect.Descriptor instead. func (*HeroAwakenReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{19} } func (x *HeroAwakenReq) GetHeroObjID() string { if x != nil { return x.HeroObjID } return "" } // 觉醒返回 type HeroAwakenResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hero *DBHero `protobuf:"bytes,1,opt,name=hero,proto3" json:"hero"` // 英雄对象 } func (x *HeroAwakenResp) Reset() { *x = HeroAwakenResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroAwakenResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroAwakenResp) ProtoMessage() {} func (x *HeroAwakenResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[20] 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 HeroAwakenResp.ProtoReflect.Descriptor instead. func (*HeroAwakenResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{20} } func (x *HeroAwakenResp) GetHero() *DBHero { if x != nil { return x.Hero } return nil } //英雄属性推送 type HeroPropertyPush struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields HeroId string `protobuf:"bytes,1,opt,name=heroId,proto3" json:"heroId"` //英雄唯一ID Property map[string]int32 `protobuf:"bytes,2,rep,name=property,proto3" json:"property" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //基础属性 AddProperty map[string]int32 `protobuf:"bytes,3,rep,name=addProperty,proto3" json:"addProperty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //附加属性 } func (x *HeroPropertyPush) Reset() { *x = HeroPropertyPush{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroPropertyPush) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroPropertyPush) ProtoMessage() {} func (x *HeroPropertyPush) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[21] 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 HeroPropertyPush.ProtoReflect.Descriptor instead. func (*HeroPropertyPush) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{21} } func (x *HeroPropertyPush) GetHeroId() string { if x != nil { return x.HeroId } return "" } func (x *HeroPropertyPush) GetProperty() map[string]int32 { if x != nil { return x.Property } return nil } func (x *HeroPropertyPush) GetAddProperty() map[string]int32 { if x != nil { return x.AddProperty } return nil } // 英雄锁定 type HeroLockReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Heroid string `protobuf:"bytes,1,opt,name=heroid,proto3" json:"heroid"` } func (x *HeroLockReq) Reset() { *x = HeroLockReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroLockReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroLockReq) ProtoMessage() {} func (x *HeroLockReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[22] 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 HeroLockReq.ProtoReflect.Descriptor instead. func (*HeroLockReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{22} } func (x *HeroLockReq) GetHeroid() string { if x != nil { return x.Heroid } return "" } // 英雄锁定返回 type HeroLockResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hero *DBHero `protobuf:"bytes,1,opt,name=hero,proto3" json:"hero"` // 英雄对象 } func (x *HeroLockResp) Reset() { *x = HeroLockResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroLockResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroLockResp) ProtoMessage() {} func (x *HeroLockResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[23] 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 HeroLockResp.ProtoReflect.Descriptor instead. func (*HeroLockResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{23} } func (x *HeroLockResp) GetHero() *DBHero { if x != nil { return x.Hero } return nil } // 测试用(获取指定星级等级的英雄) type HeroGetSpecifiedReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields HeroCoinfigID string `protobuf:"bytes,1,opt,name=heroCoinfigID,proto3" json:"heroCoinfigID"` // 英雄配置ID Amount int32 `protobuf:"varint,2,opt,name=Amount,proto3" json:"Amount"` // 数量 Star int32 `protobuf:"varint,3,opt,name=star,proto3" json:"star"` // 星级 Lv int32 `protobuf:"varint,4,opt,name=lv,proto3" json:"lv"` // 等级 } func (x *HeroGetSpecifiedReq) Reset() { *x = HeroGetSpecifiedReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroGetSpecifiedReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroGetSpecifiedReq) ProtoMessage() {} func (x *HeroGetSpecifiedReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[24] 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 HeroGetSpecifiedReq.ProtoReflect.Descriptor instead. func (*HeroGetSpecifiedReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{24} } func (x *HeroGetSpecifiedReq) GetHeroCoinfigID() string { if x != nil { return x.HeroCoinfigID } return "" } func (x *HeroGetSpecifiedReq) GetAmount() int32 { if x != nil { return x.Amount } return 0 } func (x *HeroGetSpecifiedReq) GetStar() int32 { if x != nil { return x.Star } return 0 } func (x *HeroGetSpecifiedReq) GetLv() int32 { if x != nil { return x.Lv } return 0 } type HeroGetSpecifiedResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hero *DBHero `protobuf:"bytes,1,opt,name=hero,proto3" json:"hero"` // 英雄对象 } func (x *HeroGetSpecifiedResp) Reset() { *x = HeroGetSpecifiedResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroGetSpecifiedResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroGetSpecifiedResp) ProtoMessage() {} func (x *HeroGetSpecifiedResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[25] 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 HeroGetSpecifiedResp.ProtoReflect.Descriptor instead. func (*HeroGetSpecifiedResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{25} } func (x *HeroGetSpecifiedResp) GetHero() *DBHero { if x != nil { return x.Hero } return nil } // 抽卡 type HeroDrawCardReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields DrawType int32 `protobuf:"varint,1,opt,name=drawType,proto3" json:"drawType"` // 抽卡类型 0 普通 DrawCount int32 `protobuf:"varint,2,opt,name=drawCount,proto3" json:"drawCount"` // 抽卡次数 } func (x *HeroDrawCardReq) Reset() { *x = HeroDrawCardReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroDrawCardReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroDrawCardReq) ProtoMessage() {} func (x *HeroDrawCardReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[26] 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 HeroDrawCardReq.ProtoReflect.Descriptor instead. func (*HeroDrawCardReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{26} } func (x *HeroDrawCardReq) GetDrawType() int32 { if x != nil { return x.DrawType } return 0 } func (x *HeroDrawCardReq) GetDrawCount() int32 { if x != nil { return x.DrawCount } return 0 } type HeroDrawCardResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Heroes []string `protobuf:"bytes,1,rep,name=heroes,proto3" json:"heroes"` // 返回英雄的configID } func (x *HeroDrawCardResp) Reset() { *x = HeroDrawCardResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroDrawCardResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroDrawCardResp) ProtoMessage() {} func (x *HeroDrawCardResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[27] 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 HeroDrawCardResp.ProtoReflect.Descriptor instead. func (*HeroDrawCardResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{27} } func (x *HeroDrawCardResp) GetHeroes() []string { if x != nil { return x.Heroes } return nil } // 英雄变化推送 type HeroChangePush struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields List []*DBHero `protobuf:"bytes,1,rep,name=list,proto3" json:"list"` } func (x *HeroChangePush) Reset() { *x = HeroChangePush{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroChangePush) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroChangePush) ProtoMessage() {} func (x *HeroChangePush) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[28] 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 HeroChangePush.ProtoReflect.Descriptor instead. func (*HeroChangePush) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{28} } func (x *HeroChangePush) GetList() []*DBHero { if x != nil { return x.List } return nil } type HeroDrawCardFloorReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *HeroDrawCardFloorReq) Reset() { *x = HeroDrawCardFloorReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroDrawCardFloorReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroDrawCardFloorReq) ProtoMessage() {} func (x *HeroDrawCardFloorReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[29] 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 HeroDrawCardFloorReq.ProtoReflect.Descriptor instead. func (*HeroDrawCardFloorReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{29} } // 获取抽卡保底次数 type HeroDrawCardFloorResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Star4 int32 `protobuf:"varint,1,opt,name=star4,proto3" json:"star4"` Star5 int32 `protobuf:"varint,2,opt,name=star5,proto3" json:"star5"` Onebuy int32 `protobuf:"varint,3,opt,name=onebuy,proto3" json:"onebuy"` // 单次购买次数 Tenbuy int32 `protobuf:"varint,4,opt,name=tenbuy,proto3" json:"tenbuy"` // 十连购买次数 } func (x *HeroDrawCardFloorResp) Reset() { *x = HeroDrawCardFloorResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroDrawCardFloorResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroDrawCardFloorResp) ProtoMessage() {} func (x *HeroDrawCardFloorResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[30] 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 HeroDrawCardFloorResp.ProtoReflect.Descriptor instead. func (*HeroDrawCardFloorResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{30} } func (x *HeroDrawCardFloorResp) GetStar4() int32 { if x != nil { return x.Star4 } return 0 } func (x *HeroDrawCardFloorResp) GetStar5() int32 { if x != nil { return x.Star5 } return 0 } func (x *HeroDrawCardFloorResp) GetOnebuy() int32 { if x != nil { return x.Onebuy } return 0 } func (x *HeroDrawCardFloorResp) GetTenbuy() int32 { if x != nil { return x.Tenbuy } return 0 } // 英雄融合 type HeroFusionReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields HeroId string `protobuf:"bytes,1,opt,name=heroId,proto3" json:"heroId"` // 英雄配置表id Heros map[string]int32 `protobuf:"bytes,2,rep,name=heros,proto3" json:"heros" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key heroObjID value 数量 } func (x *HeroFusionReq) Reset() { *x = HeroFusionReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroFusionReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroFusionReq) ProtoMessage() {} func (x *HeroFusionReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[31] 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 HeroFusionReq.ProtoReflect.Descriptor instead. func (*HeroFusionReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{31} } func (x *HeroFusionReq) GetHeroId() string { if x != nil { return x.HeroId } return "" } func (x *HeroFusionReq) GetHeros() map[string]int32 { if x != nil { return x.Heros } return nil } type HeroFusionResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Heroid string `protobuf:"bytes,1,opt,name=heroid,proto3" json:"heroid"` // 获得新英雄 } func (x *HeroFusionResp) Reset() { *x = HeroFusionResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroFusionResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroFusionResp) ProtoMessage() {} func (x *HeroFusionResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[32] 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 HeroFusionResp.ProtoReflect.Descriptor instead. func (*HeroFusionResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{32} } func (x *HeroFusionResp) GetHeroid() string { if x != nil { return x.Heroid } return "" } // 天赋学习 type HeroTalentListReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *HeroTalentListReq) Reset() { *x = HeroTalentListReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroTalentListReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroTalentListReq) ProtoMessage() {} func (x *HeroTalentListReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[33] 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 HeroTalentListReq.ProtoReflect.Descriptor instead. func (*HeroTalentListReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{33} } type HeroTalentListResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Telnet []*DBHeroTalent `protobuf:"bytes,1,rep,name=telnet,proto3" json:"telnet"` } func (x *HeroTalentListResp) Reset() { *x = HeroTalentListResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroTalentListResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroTalentListResp) ProtoMessage() {} func (x *HeroTalentListResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[34] 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 HeroTalentListResp.ProtoReflect.Descriptor instead. func (*HeroTalentListResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{34} } func (x *HeroTalentListResp) GetTelnet() []*DBHeroTalent { if x != nil { return x.Telnet } return nil } // 天赋学习 type HeroTalentLearnReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields TalentID int32 `protobuf:"varint,1,opt,name=talentID,proto3" json:"talentID"` // 天赋ID ObjId string `protobuf:"bytes,2,opt,name=objId,proto3" json:"objId"` // 对象唯一id Heroid string `protobuf:"bytes,3,opt,name=heroid,proto3" json:"heroid"` //配置表的英雄id } func (x *HeroTalentLearnReq) Reset() { *x = HeroTalentLearnReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroTalentLearnReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroTalentLearnReq) ProtoMessage() {} func (x *HeroTalentLearnReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[35] 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 HeroTalentLearnReq.ProtoReflect.Descriptor instead. func (*HeroTalentLearnReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{35} } func (x *HeroTalentLearnReq) GetTalentID() int32 { if x != nil { return x.TalentID } return 0 } func (x *HeroTalentLearnReq) GetObjId() string { if x != nil { return x.ObjId } return "" } func (x *HeroTalentLearnReq) GetHeroid() string { if x != nil { return x.Heroid } return "" } type HeroTalentLearnResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Telnet *DBHeroTalent `protobuf:"bytes,1,opt,name=telnet,proto3" json:"telnet"` TalentID int32 `protobuf:"varint,2,opt,name=talentID,proto3" json:"talentID"` // 刚学习的天赋ID } func (x *HeroTalentLearnResp) Reset() { *x = HeroTalentLearnResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroTalentLearnResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroTalentLearnResp) ProtoMessage() {} func (x *HeroTalentLearnResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[36] 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 HeroTalentLearnResp.ProtoReflect.Descriptor instead. func (*HeroTalentLearnResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{36} } func (x *HeroTalentLearnResp) GetTelnet() *DBHeroTalent { if x != nil { return x.Telnet } return nil } func (x *HeroTalentLearnResp) GetTalentID() int32 { if x != nil { return x.TalentID } return 0 } // 重置天赋 type HeroTalentResetReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ObjId string `protobuf:"bytes,1,opt,name=objId,proto3" json:"objId"` // 对象唯一id } func (x *HeroTalentResetReq) Reset() { *x = HeroTalentResetReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroTalentResetReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroTalentResetReq) ProtoMessage() {} func (x *HeroTalentResetReq) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[37] 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 HeroTalentResetReq.ProtoReflect.Descriptor instead. func (*HeroTalentResetReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{37} } func (x *HeroTalentResetReq) GetObjId() string { if x != nil { return x.ObjId } return "" } type HeroTalentResetResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Telnet *DBHeroTalent `protobuf:"bytes,1,opt,name=telnet,proto3" json:"telnet"` } func (x *HeroTalentResetResp) Reset() { *x = HeroTalentResetResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroTalentResetResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroTalentResetResp) ProtoMessage() {} func (x *HeroTalentResetResp) ProtoReflect() protoreflect.Message { mi := &file_hero_hero_msg_proto_msgTypes[38] 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 HeroTalentResetResp.ProtoReflect.Descriptor instead. func (*HeroTalentResetResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{38} } func (x *HeroTalentResetResp) GetTelnet() *DBHeroTalent { if x != nil { return x.Telnet } return nil } type HeroBuyReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields BuyType int32 `protobuf:"varint,1,opt,name=buyType,proto3" json:"buyType"` //类型 BuyCount int32 `protobuf:"varint,2,opt,name=buyCount,proto3" json:"buyCount"` // 购买的数量 } func (x *HeroBuyReq) Reset() { *x = HeroBuyReq{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroBuyReq) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroBuyReq) ProtoMessage() {} func (x *HeroBuyReq) 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 HeroBuyReq.ProtoReflect.Descriptor instead. func (*HeroBuyReq) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{39} } func (x *HeroBuyReq) GetBuyType() int32 { if x != nil { return x.BuyType } return 0 } func (x *HeroBuyReq) GetBuyCount() int32 { if x != nil { return x.BuyCount } return 0 } type HeroBuyResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields IsSucc bool `protobuf:"varint,1,opt,name=IsSucc,proto3" json:"IsSucc"` Onebuy int32 `protobuf:"varint,3,opt,name=onebuy,proto3" json:"onebuy"` // 单次购买次数 Tenbuy int32 `protobuf:"varint,4,opt,name=tenbuy,proto3" json:"tenbuy"` // 十连购买次数 } func (x *HeroBuyResp) Reset() { *x = HeroBuyResp{} if protoimpl.UnsafeEnabled { mi := &file_hero_hero_msg_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeroBuyResp) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeroBuyResp) ProtoMessage() {} func (x *HeroBuyResp) 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 HeroBuyResp.ProtoReflect.Descriptor instead. func (*HeroBuyResp) Descriptor() ([]byte, []int) { return file_hero_hero_msg_proto_rawDescGZIP(), []int{40} } func (x *HeroBuyResp) GetIsSucc() bool { if x != nil { return x.IsSucc } return false } func (x *HeroBuyResp) GetOnebuy() int32 { if x != nil { return x.Onebuy } return 0 } func (x *HeroBuyResp) GetTenbuy() int32 { if x != nil { return x.Tenbuy } return 0 } var File_hero_hero_msg_proto protoreflect.FileDescriptor var file_hero_hero_msg_proto_rawDesc = []byte{ 0x0a, 0x13, 0x68, 0x65, 0x72, 0x6f, 0x2f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x12, 0x68, 0x65, 0x72, 0x6f, 0x2f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x37, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0x3d, 0x0a, 0x0c, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x04, 0x62, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x22, 0x0d, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x2b, 0x0a, 0x0c, 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 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, 0x38, 0x0a, 0x0e, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x10, 0x0a, 0x03, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x62, 0x0a, 0x15, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x65, 0x6e, 0x55, 0x70, 0x6c, 0x76, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x12, 0x2b, 0x0a, 0x08, 0x65, 0x78, 0x70, 0x43, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x08, 0x65, 0x78, 0x70, 0x43, 0x61, 0x72, 0x64, 0x73, 0x22, 0x35, 0x0a, 0x16, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x65, 0x6e, 0x55, 0x70, 0x6c, 0x76, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x22, 0x48, 0x0a, 0x0c, 0x43, 0x6f, 0x73, 0x74, 0x43, 0x61, 0x72, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x73, 0x74, 0x43, 0x61, 0x72, 0x64, 0x4f, 0x62, 0x6a, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x73, 0x74, 0x43, 0x61, 0x72, 0x64, 0x4f, 0x62, 0x6a, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x85, 0x01, 0x0a, 0x17, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x65, 0x6e, 0x55, 0x70, 0x53, 0x74, 0x61, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x12, 0x21, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x6f, 0x73, 0x74, 0x43, 0x61, 0x72, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x29, 0x0a, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x52, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x6f, 0x73, 0x74, 0x43, 0x61, 0x72, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x52, 0x61, 0x63, 0x65, 0x22, 0x37, 0x0a, 0x18, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x65, 0x6e, 0x55, 0x70, 0x53, 0x74, 0x61, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x22, 0x5a, 0x0a, 0x18, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x65, 0x6e, 0x55, 0x70, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x73, 0x74, 0x43, 0x61, 0x72, 0x64, 0x4f, 0x62, 0x6a, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x73, 0x74, 0x43, 0x61, 0x72, 0x64, 0x4f, 0x62, 0x6a, 0x22, 0x38, 0x0a, 0x19, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x65, 0x6e, 0x55, 0x70, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x22, 0x4e, 0x0a, 0x10, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x73, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x22, 0x71, 0x0a, 0x11, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x73, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x12, 0x27, 0x0a, 0x0a, 0x75, 0x70, 0x53, 0x74, 0x61, 0x72, 0x43, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x0a, 0x75, 0x70, 0x53, 0x74, 0x61, 0x72, 0x43, 0x61, 0x72, 0x64, 0x22, 0x35, 0x0a, 0x15, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x73, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x22, 0x4d, 0x0a, 0x16, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x73, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x22, 0x44, 0x0a, 0x0a, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x73, 0x65, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x75, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x5e, 0x0a, 0x19, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x73, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x55, 0x73, 0x65, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x12, 0x23, 0x0a, 0x06, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x06, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x22, 0x39, 0x0a, 0x1a, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x73, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x55, 0x73, 0x65, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x22, 0x2d, 0x0a, 0x0d, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x77, 0x61, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x44, 0x22, 0x2d, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x77, 0x61, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x22, 0xaa, 0x02, 0x0a, 0x10, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x50, 0x75, 0x73, 0x68, 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, 0x3b, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x50, 0x75, 0x73, 0x68, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x44, 0x0a, 0x0b, 0x61, 0x64, 0x64, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x50, 0x75, 0x73, 0x68, 0x2e, 0x41, 0x64, 0x64, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x61, 0x64, 0x64, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x1a, 0x3b, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 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, 0x3e, 0x0a, 0x10, 0x41, 0x64, 0x64, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 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, 0x25, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 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, 0x2b, 0x0a, 0x0c, 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x22, 0x77, 0x0a, 0x13, 0x48, 0x65, 0x72, 0x6f, 0x47, 0x65, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x68, 0x65, 0x72, 0x6f, 0x43, 0x6f, 0x69, 0x6e, 0x66, 0x69, 0x67, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x68, 0x65, 0x72, 0x6f, 0x43, 0x6f, 0x69, 0x6e, 0x66, 0x69, 0x67, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x74, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x74, 0x61, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, 0x22, 0x33, 0x0a, 0x14, 0x48, 0x65, 0x72, 0x6f, 0x47, 0x65, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x22, 0x4b, 0x0a, 0x0f, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61, 0x72, 0x64, 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, 0x1c, 0x0a, 0x09, 0x64, 0x72, 0x61, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x72, 0x61, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2a, 0x0a, 0x10, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 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, 0x73, 0x0a, 0x15, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61, 0x72, 0x64, 0x46, 0x6c, 0x6f, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x34, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x34, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x35, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x35, 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, 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, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_hero_hero_msg_proto_rawDescOnce sync.Once file_hero_hero_msg_proto_rawDescData = file_hero_hero_msg_proto_rawDesc ) func file_hero_hero_msg_proto_rawDescGZIP() []byte { file_hero_hero_msg_proto_rawDescOnce.Do(func() { file_hero_hero_msg_proto_rawDescData = protoimpl.X.CompressGZIP(file_hero_hero_msg_proto_rawDescData) }) return file_hero_hero_msg_proto_rawDescData } var file_hero_hero_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 44) var file_hero_hero_msg_proto_goTypes = []interface{}{ (*HeroInfoReq)(nil), // 0: HeroInfoReq (*HeroInfoResp)(nil), // 1: HeroInfoResp (*HeroListReq)(nil), // 2: HeroListReq (*HeroListResp)(nil), // 3: HeroListResp (*MapStringInt32)(nil), // 4: MapStringInt32 (*HeroStrengthenUplvReq)(nil), // 5: HeroStrengthenUplvReq (*HeroStrengthenUplvResp)(nil), // 6: HeroStrengthenUplvResp (*CostCardData)(nil), // 7: CostCardData (*HeroStrengthenUpStarReq)(nil), // 8: HeroStrengthenUpStarReq (*HeroStrengthenUpStarResp)(nil), // 9: HeroStrengthenUpStarResp (*HeroStrengthenUpSkillReq)(nil), // 10: HeroStrengthenUpSkillReq (*HeroStrengthenUpSkillResp)(nil), // 11: HeroStrengthenUpSkillResp (*HeroResonanceReq)(nil), // 12: HeroResonanceReq (*HeroResonanceResp)(nil), // 13: HeroResonanceResp (*HeroResonanceResetReq)(nil), // 14: HeroResonanceResetReq (*HeroResonanceResetResp)(nil), // 15: HeroResonanceResetResp (*EnergyData)(nil), // 16: EnergyData (*HeroResonanceUseEnergyReq)(nil), // 17: HeroResonanceUseEnergyReq (*HeroResonanceUseEnergyResp)(nil), // 18: HeroResonanceUseEnergyResp (*HeroAwakenReq)(nil), // 19: HeroAwakenReq (*HeroAwakenResp)(nil), // 20: HeroAwakenResp (*HeroPropertyPush)(nil), // 21: HeroPropertyPush (*HeroLockReq)(nil), // 22: HeroLockReq (*HeroLockResp)(nil), // 23: HeroLockResp (*HeroGetSpecifiedReq)(nil), // 24: HeroGetSpecifiedReq (*HeroGetSpecifiedResp)(nil), // 25: HeroGetSpecifiedResp (*HeroDrawCardReq)(nil), // 26: HeroDrawCardReq (*HeroDrawCardResp)(nil), // 27: HeroDrawCardResp (*HeroChangePush)(nil), // 28: HeroChangePush (*HeroDrawCardFloorReq)(nil), // 29: HeroDrawCardFloorReq (*HeroDrawCardFloorResp)(nil), // 30: HeroDrawCardFloorResp (*HeroFusionReq)(nil), // 31: HeroFusionReq (*HeroFusionResp)(nil), // 32: HeroFusionResp (*HeroTalentListReq)(nil), // 33: HeroTalentListReq (*HeroTalentListResp)(nil), // 34: HeroTalentListResp (*HeroTalentLearnReq)(nil), // 35: HeroTalentLearnReq (*HeroTalentLearnResp)(nil), // 36: HeroTalentLearnResp (*HeroTalentResetReq)(nil), // 37: HeroTalentResetReq (*HeroTalentResetResp)(nil), // 38: HeroTalentResetResp (*HeroBuyReq)(nil), // 39: HeroBuyReq (*HeroBuyResp)(nil), // 40: HeroBuyResp nil, // 41: HeroPropertyPush.PropertyEntry nil, // 42: HeroPropertyPush.AddPropertyEntry nil, // 43: HeroFusionReq.HerosEntry (*DBHero)(nil), // 44: DBHero (*DBHeroTalent)(nil), // 45: DBHeroTalent } var file_hero_hero_msg_proto_depIdxs = []int32{ 44, // 0: HeroInfoResp.base:type_name -> DBHero 44, // 1: HeroListResp.list:type_name -> DBHero 4, // 2: HeroStrengthenUplvReq.expCards:type_name -> MapStringInt32 44, // 3: HeroStrengthenUplvResp.hero:type_name -> DBHero 7, // 4: HeroStrengthenUpStarReq.hero:type_name -> CostCardData 7, // 5: HeroStrengthenUpStarReq.heroRace:type_name -> CostCardData 44, // 6: HeroStrengthenUpStarResp.hero:type_name -> DBHero 44, // 7: HeroStrengthenUpSkillResp.hero:type_name -> DBHero 44, // 8: HeroResonanceResp.hero:type_name -> DBHero 44, // 9: HeroResonanceResp.upStarCard:type_name -> DBHero 44, // 10: HeroResonanceResetResp.hero:type_name -> DBHero 16, // 11: HeroResonanceUseEnergyReq.energy:type_name -> EnergyData 44, // 12: HeroResonanceUseEnergyResp.hero:type_name -> DBHero 44, // 13: HeroAwakenResp.hero:type_name -> DBHero 41, // 14: HeroPropertyPush.property:type_name -> HeroPropertyPush.PropertyEntry 42, // 15: HeroPropertyPush.addProperty:type_name -> HeroPropertyPush.AddPropertyEntry 44, // 16: HeroLockResp.hero:type_name -> DBHero 44, // 17: HeroGetSpecifiedResp.hero:type_name -> DBHero 44, // 18: HeroChangePush.list:type_name -> DBHero 43, // 19: HeroFusionReq.heros:type_name -> HeroFusionReq.HerosEntry 45, // 20: HeroTalentListResp.telnet:type_name -> DBHeroTalent 45, // 21: HeroTalentLearnResp.telnet:type_name -> DBHeroTalent 45, // 22: HeroTalentResetResp.telnet:type_name -> DBHeroTalent 23, // [23:23] is the sub-list for method output_type 23, // [23:23] is the sub-list for method input_type 23, // [23:23] is the sub-list for extension type_name 23, // [23:23] is the sub-list for extension extendee 0, // [0:23] is the sub-list for field type_name } func init() { file_hero_hero_msg_proto_init() } func file_hero_hero_msg_proto_init() { if File_hero_hero_msg_proto != nil { return } file_hero_hero_db_proto_init() if !protoimpl.UnsafeEnabled { file_hero_hero_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroInfoReq); 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[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroInfoResp); 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[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroListReq); 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[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroListResp); 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[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MapStringInt32); 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[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroStrengthenUplvReq); 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[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroStrengthenUplvResp); 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[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CostCardData); 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[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroStrengthenUpStarReq); 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[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroStrengthenUpStarResp); 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[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroStrengthenUpSkillReq); 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[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroStrengthenUpSkillResp); 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[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroResonanceReq); 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[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroResonanceResp); 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[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroResonanceResetReq); 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[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroResonanceResetResp); 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[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EnergyData); 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[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroResonanceUseEnergyReq); 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[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroResonanceUseEnergyResp); 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[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroAwakenReq); 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[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroAwakenResp); 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[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroPropertyPush); 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[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroLockReq); 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[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroLockResp); 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[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroGetSpecifiedReq); 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[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroGetSpecifiedResp); 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[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroDrawCardReq); 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[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroDrawCardResp); 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[28].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroChangePush); 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[29].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroDrawCardFloorReq); 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[30].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroDrawCardFloorResp); 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[31].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroFusionReq); 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[32].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroFusionResp); 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[33].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroTalentListReq); 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[34].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroTalentListResp); 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[35].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroTalentLearnReq); 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[36].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroTalentLearnResp); 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[37].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroTalentResetReq); 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[38].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroTalentResetResp); 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[39].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeroBuyReq); 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.(*HeroBuyResp); 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{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_hero_hero_msg_proto_rawDesc, NumEnums: 0, NumMessages: 44, NumExtensions: 0, NumServices: 0, }, GoTypes: file_hero_hero_msg_proto_goTypes, DependencyIndexes: file_hero_hero_msg_proto_depIdxs, MessageInfos: file_hero_hero_msg_proto_msgTypes, }.Build() File_hero_hero_msg_proto = out.File file_hero_hero_msg_proto_rawDesc = nil file_hero_hero_msg_proto_goTypes = nil file_hero_hero_msg_proto_depIdxs = nil }