// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.27.1-devel // protoc v3.19.4 // source: protocol/pets/pets.proto package pets 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 PetsPacketID int32 const ( PetsPacketID_PACKET_CANDY_ZERO PetsPacketID = 0 //弃用消息号 PetsPacketID_PACKET_CS_ROLE_INFO PetsPacketID = 2550 //获取人物信息 PetsPacketID_PACKET_SC_ROLE_INFO PetsPacketID = 2551 PetsPacketID_PACKET_CS_PET_INFO PetsPacketID = 2552 //获取宠物信息 PetsPacketID_PACKET_SC_PET_INFO PetsPacketID = 2553 PetsPacketID_PACKET_CS_PET_RISINGSTAR PetsPacketID = 2554 //人物或者宠物升星 PetsPacketID_PACKET_SC_ROLE_RISINGSTAR PetsPacketID = 2555 PetsPacketID_PACKET_SC_PET_RISINGSTAR PetsPacketID = 2556 PetsPacketID_PACKET_CS_ROLEPETUSEOP PetsPacketID = 2557 //人物或者宠物使用 PetsPacketID_PACKET_SC_ROLEPETUSEOP PetsPacketID = 2558 PetsPacketID_PACKET_CS_ROLEPETUNLOCK PetsPacketID = 2559 //解锁模型 PetsPacketID_PACKET_SC_ROLEPETUNLOCK PetsPacketID = 2560 PetsPacketID_PACKET_CS_PETSKILLLEVELUP PetsPacketID = 2561 //技能升级 PetsPacketID_PACKET_SC_PETSKILLLEVELUP PetsPacketID = 2562 //技能升级返回 PetsPacketID_PACKET_CS_SKIN_INFO PetsPacketID = 2563 // 获取皮肤信息 PetsPacketID_PACKET_SC_SKIN_INFO PetsPacketID = 2564 // 获取皮肤信息 PetsPacketID_PACKET_CS_SKIN_USE PetsPacketID = 2565 // 使用皮肤 PetsPacketID_PACKET_SC_SKIN_USE PetsPacketID = 2566 // 使用皮肤 PetsPacketID_PACKET_CS_SKIN_UPGRADE PetsPacketID = 2567 // 皮肤升级 PetsPacketID_PACKET_SC_SKIN_UPGRADE PetsPacketID = 2568 // 皮肤升级 PetsPacketID_PACKET_CS_SKIN_UNLOCK PetsPacketID = 2569 // 皮肤解锁 PetsPacketID_PACKET_SC_SKIN_UNLOCK PetsPacketID = 2570 // 皮肤解锁 ) // Enum value maps for PetsPacketID. var ( PetsPacketID_name = map[int32]string{ 0: "PACKET_CANDY_ZERO", 2550: "PACKET_CS_ROLE_INFO", 2551: "PACKET_SC_ROLE_INFO", 2552: "PACKET_CS_PET_INFO", 2553: "PACKET_SC_PET_INFO", 2554: "PACKET_CS_PET_RISINGSTAR", 2555: "PACKET_SC_ROLE_RISINGSTAR", 2556: "PACKET_SC_PET_RISINGSTAR", 2557: "PACKET_CS_ROLEPETUSEOP", 2558: "PACKET_SC_ROLEPETUSEOP", 2559: "PACKET_CS_ROLEPETUNLOCK", 2560: "PACKET_SC_ROLEPETUNLOCK", 2561: "PACKET_CS_PETSKILLLEVELUP", 2562: "PACKET_SC_PETSKILLLEVELUP", 2563: "PACKET_CS_SKIN_INFO", 2564: "PACKET_SC_SKIN_INFO", 2565: "PACKET_CS_SKIN_USE", 2566: "PACKET_SC_SKIN_USE", 2567: "PACKET_CS_SKIN_UPGRADE", 2568: "PACKET_SC_SKIN_UPGRADE", 2569: "PACKET_CS_SKIN_UNLOCK", 2570: "PACKET_SC_SKIN_UNLOCK", } PetsPacketID_value = map[string]int32{ "PACKET_CANDY_ZERO": 0, "PACKET_CS_ROLE_INFO": 2550, "PACKET_SC_ROLE_INFO": 2551, "PACKET_CS_PET_INFO": 2552, "PACKET_SC_PET_INFO": 2553, "PACKET_CS_PET_RISINGSTAR": 2554, "PACKET_SC_ROLE_RISINGSTAR": 2555, "PACKET_SC_PET_RISINGSTAR": 2556, "PACKET_CS_ROLEPETUSEOP": 2557, "PACKET_SC_ROLEPETUSEOP": 2558, "PACKET_CS_ROLEPETUNLOCK": 2559, "PACKET_SC_ROLEPETUNLOCK": 2560, "PACKET_CS_PETSKILLLEVELUP": 2561, "PACKET_SC_PETSKILLLEVELUP": 2562, "PACKET_CS_SKIN_INFO": 2563, "PACKET_SC_SKIN_INFO": 2564, "PACKET_CS_SKIN_USE": 2565, "PACKET_SC_SKIN_USE": 2566, "PACKET_CS_SKIN_UPGRADE": 2567, "PACKET_SC_SKIN_UPGRADE": 2568, "PACKET_CS_SKIN_UNLOCK": 2569, "PACKET_SC_SKIN_UNLOCK": 2570, } ) func (x PetsPacketID) Enum() *PetsPacketID { p := new(PetsPacketID) *p = x return p } func (x PetsPacketID) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (PetsPacketID) Descriptor() protoreflect.EnumDescriptor { return file_protocol_pets_pets_proto_enumTypes[0].Descriptor() } func (PetsPacketID) Type() protoreflect.EnumType { return &file_protocol_pets_pets_proto_enumTypes[0] } func (x PetsPacketID) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use PetsPacketID.Descriptor instead. func (PetsPacketID) EnumDescriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{0} } //操作结果 type OpResultCode int32 const ( OpResultCode_OPRC_Sucess OpResultCode = 0 //成功 OpResultCode_OPRC_Error OpResultCode = 1 //失败 OpResultCode_OPRC_NotEnough OpResultCode = 2 //道具不足 OpResultCode_OPRC_MaxLevel OpResultCode = 3 //等级已满 OpResultCode_OPRC_Unlock OpResultCode = 4 //未解锁 ) // Enum value maps for OpResultCode. var ( OpResultCode_name = map[int32]string{ 0: "OPRC_Sucess", 1: "OPRC_Error", 2: "OPRC_NotEnough", 3: "OPRC_MaxLevel", 4: "OPRC_Unlock", } OpResultCode_value = map[string]int32{ "OPRC_Sucess": 0, "OPRC_Error": 1, "OPRC_NotEnough": 2, "OPRC_MaxLevel": 3, "OPRC_Unlock": 4, } ) func (x OpResultCode) Enum() *OpResultCode { p := new(OpResultCode) *p = x return p } func (x OpResultCode) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (OpResultCode) Descriptor() protoreflect.EnumDescriptor { return file_protocol_pets_pets_proto_enumTypes[1].Descriptor() } func (OpResultCode) Type() protoreflect.EnumType { return &file_protocol_pets_pets_proto_enumTypes[1] } func (x OpResultCode) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use OpResultCode.Descriptor instead. func (OpResultCode) EnumDescriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{1} } //人物信息 type RoleInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` //序号 RoleId int32 `protobuf:"varint,2,opt,name=RoleId,proto3" json:"RoleId,omitempty"` //角色id Name string `protobuf:"bytes,3,opt,name=Name,proto3" json:"Name,omitempty"` //角色名称 Grade int32 `protobuf:"varint,4,opt,name=Grade,proto3" json:"Grade,omitempty"` //角色品级 Level int32 `protobuf:"varint,5,opt,name=Level,proto3" json:"Level,omitempty"` //角色等级 MaxLevel int32 `protobuf:"varint,6,opt,name=MaxLevel,proto3" json:"MaxLevel,omitempty"` //角色等级 Fragment int32 `protobuf:"varint,7,opt,name=Fragment,proto3" json:"Fragment,omitempty"` //升级所需的道具id Amount int32 `protobuf:"varint,8,opt,name=Amount,proto3" json:"Amount,omitempty"` //升级所需的道具个数 AwardType int32 `protobuf:"varint,9,opt,name=AwardType,proto3" json:"AwardType,omitempty"` //奖励类型 Award int32 `protobuf:"varint,10,opt,name=Award,proto3" json:"Award,omitempty"` //奖励加成 AwardRate int32 `protobuf:"varint,11,opt,name=AwardRate,proto3" json:"AwardRate,omitempty"` //奖励触发概率 Story string `protobuf:"bytes,12,opt,name=Story,proto3" json:"Story,omitempty"` //人物背景介绍 AwardTitle string `protobuf:"bytes,13,opt,name=AwardTitle,proto3" json:"AwardTitle,omitempty"` //奖励标题 //数据 HaveAmount int32 `protobuf:"varint,14,opt,name=HaveAmount,proto3" json:"HaveAmount,omitempty"` //拥有的道具个数 NextAward int32 `protobuf:"varint,15,opt,name=NextAward,proto3" json:"NextAward,omitempty"` //下一级加成 IsUsing bool `protobuf:"varint,16,opt,name=IsUsing,proto3" json:"IsUsing,omitempty"` //是否在使用中 IsUnlock bool `protobuf:"varint,17,opt,name=IsUnlock,proto3" json:"IsUnlock,omitempty"` //是否已经解锁 } func (x *RoleInfo) Reset() { *x = RoleInfo{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RoleInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*RoleInfo) ProtoMessage() {} func (x *RoleInfo) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 RoleInfo.ProtoReflect.Descriptor instead. func (*RoleInfo) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{0} } func (x *RoleInfo) GetId() int32 { if x != nil { return x.Id } return 0 } func (x *RoleInfo) GetRoleId() int32 { if x != nil { return x.RoleId } return 0 } func (x *RoleInfo) GetName() string { if x != nil { return x.Name } return "" } func (x *RoleInfo) GetGrade() int32 { if x != nil { return x.Grade } return 0 } func (x *RoleInfo) GetLevel() int32 { if x != nil { return x.Level } return 0 } func (x *RoleInfo) GetMaxLevel() int32 { if x != nil { return x.MaxLevel } return 0 } func (x *RoleInfo) GetFragment() int32 { if x != nil { return x.Fragment } return 0 } func (x *RoleInfo) GetAmount() int32 { if x != nil { return x.Amount } return 0 } func (x *RoleInfo) GetAwardType() int32 { if x != nil { return x.AwardType } return 0 } func (x *RoleInfo) GetAward() int32 { if x != nil { return x.Award } return 0 } func (x *RoleInfo) GetAwardRate() int32 { if x != nil { return x.AwardRate } return 0 } func (x *RoleInfo) GetStory() string { if x != nil { return x.Story } return "" } func (x *RoleInfo) GetAwardTitle() string { if x != nil { return x.AwardTitle } return "" } func (x *RoleInfo) GetHaveAmount() int32 { if x != nil { return x.HaveAmount } return 0 } func (x *RoleInfo) GetNextAward() int32 { if x != nil { return x.NextAward } return 0 } func (x *RoleInfo) GetIsUsing() bool { if x != nil { return x.IsUsing } return false } func (x *RoleInfo) GetIsUnlock() bool { if x != nil { return x.IsUnlock } return false } //PACKET_CS_ROLE_INFO type CSRoleInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *CSRoleInfo) Reset() { *x = CSRoleInfo{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CSRoleInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*CSRoleInfo) ProtoMessage() {} func (x *CSRoleInfo) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 CSRoleInfo.ProtoReflect.Descriptor instead. func (*CSRoleInfo) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{1} } //PACKET_SC_ROLE_INFO type SCRoleInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Infos []*RoleInfo `protobuf:"bytes,1,rep,name=Infos,proto3" json:"Infos,omitempty"` //宠物信息 } func (x *SCRoleInfo) Reset() { *x = SCRoleInfo{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SCRoleInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*SCRoleInfo) ProtoMessage() {} func (x *SCRoleInfo) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 SCRoleInfo.ProtoReflect.Descriptor instead. func (*SCRoleInfo) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{2} } func (x *SCRoleInfo) GetInfos() []*RoleInfo { if x != nil { return x.Infos } return nil } //宠物信息 type PetInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` //序号 PetId int32 `protobuf:"varint,2,opt,name=PetId,proto3" json:"PetId,omitempty"` //角色id Name string `protobuf:"bytes,3,opt,name=Name,proto3" json:"Name,omitempty"` //角色名称 Grade int32 `protobuf:"varint,4,opt,name=Grade,proto3" json:"Grade,omitempty"` //角色品级 Level int32 `protobuf:"varint,5,opt,name=Level,proto3" json:"Level,omitempty"` //角色等级 MaxLevel int32 `protobuf:"varint,6,opt,name=MaxLevel,proto3" json:"MaxLevel,omitempty"` //宠物等级 Fragment int32 `protobuf:"varint,7,opt,name=Fragment,proto3" json:"Fragment,omitempty"` //升级所需的道具id Amount int32 `protobuf:"varint,8,opt,name=Amount,proto3" json:"Amount,omitempty"` //升级所需的道具个数 AwardType int32 `protobuf:"varint,9,opt,name=AwardType,proto3" json:"AwardType,omitempty"` //奖励类型 Award int32 `protobuf:"varint,10,opt,name=Award,proto3" json:"Award,omitempty"` //奖励加成 AwardRate int32 `protobuf:"varint,11,opt,name=AwardRate,proto3" json:"AwardRate,omitempty"` //奖励触发概率 Story string `protobuf:"bytes,12,opt,name=Story,proto3" json:"Story,omitempty"` //人物背景介绍 AwardTitle string `protobuf:"bytes,13,opt,name=AwardTitle,proto3" json:"AwardTitle,omitempty"` //奖励标题 //数据 HaveAmount int32 `protobuf:"varint,14,opt,name=HaveAmount,proto3" json:"HaveAmount,omitempty"` //拥有的道具个数 NextAward int32 `protobuf:"varint,15,opt,name=NextAward,proto3" json:"NextAward,omitempty"` //下一级加成 IsUsing bool `protobuf:"varint,16,opt,name=IsUsing,proto3" json:"IsUsing,omitempty"` //是否在使用中 IsUnlock bool `protobuf:"varint,17,opt,name=IsUnlock,proto3" json:"IsUnlock,omitempty"` //是否已经解锁 SkillInfo []*PetSkillInfo `protobuf:"bytes,18,rep,name=SkillInfo,proto3" json:"SkillInfo,omitempty"` //宠物技能信息 } func (x *PetInfo) Reset() { *x = PetInfo{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PetInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*PetInfo) ProtoMessage() {} func (x *PetInfo) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 PetInfo.ProtoReflect.Descriptor instead. func (*PetInfo) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{3} } func (x *PetInfo) GetId() int32 { if x != nil { return x.Id } return 0 } func (x *PetInfo) GetPetId() int32 { if x != nil { return x.PetId } return 0 } func (x *PetInfo) GetName() string { if x != nil { return x.Name } return "" } func (x *PetInfo) GetGrade() int32 { if x != nil { return x.Grade } return 0 } func (x *PetInfo) GetLevel() int32 { if x != nil { return x.Level } return 0 } func (x *PetInfo) GetMaxLevel() int32 { if x != nil { return x.MaxLevel } return 0 } func (x *PetInfo) GetFragment() int32 { if x != nil { return x.Fragment } return 0 } func (x *PetInfo) GetAmount() int32 { if x != nil { return x.Amount } return 0 } func (x *PetInfo) GetAwardType() int32 { if x != nil { return x.AwardType } return 0 } func (x *PetInfo) GetAward() int32 { if x != nil { return x.Award } return 0 } func (x *PetInfo) GetAwardRate() int32 { if x != nil { return x.AwardRate } return 0 } func (x *PetInfo) GetStory() string { if x != nil { return x.Story } return "" } func (x *PetInfo) GetAwardTitle() string { if x != nil { return x.AwardTitle } return "" } func (x *PetInfo) GetHaveAmount() int32 { if x != nil { return x.HaveAmount } return 0 } func (x *PetInfo) GetNextAward() int32 { if x != nil { return x.NextAward } return 0 } func (x *PetInfo) GetIsUsing() bool { if x != nil { return x.IsUsing } return false } func (x *PetInfo) GetIsUnlock() bool { if x != nil { return x.IsUnlock } return false } func (x *PetInfo) GetSkillInfo() []*PetSkillInfo { if x != nil { return x.SkillInfo } return nil } //PACKET_CS_PET_INFO type CSPetInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *CSPetInfo) Reset() { *x = CSPetInfo{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CSPetInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*CSPetInfo) ProtoMessage() {} func (x *CSPetInfo) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 CSPetInfo.ProtoReflect.Descriptor instead. func (*CSPetInfo) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{4} } //PACKET_SC_PET_INFO type SCPetInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Infos []*PetInfo `protobuf:"bytes,1,rep,name=Infos,proto3" json:"Infos,omitempty"` //宠物信息 } func (x *SCPetInfo) Reset() { *x = SCPetInfo{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SCPetInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*SCPetInfo) ProtoMessage() {} func (x *SCPetInfo) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 SCPetInfo.ProtoReflect.Descriptor instead. func (*SCPetInfo) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{5} } func (x *SCPetInfo) GetInfos() []*PetInfo { if x != nil { return x.Infos } return nil } //PACKET_CS_PET_RISINGSTAR type CSRisingStar struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields RisingType int32 `protobuf:"varint,1,opt,name=RisingType,proto3" json:"RisingType,omitempty"` //0.人物 1.宠物 RisingModId int32 `protobuf:"varint,2,opt,name=RisingModId,proto3" json:"RisingModId,omitempty"` //升星的mod Id } func (x *CSRisingStar) Reset() { *x = CSRisingStar{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CSRisingStar) String() string { return protoimpl.X.MessageStringOf(x) } func (*CSRisingStar) ProtoMessage() {} func (x *CSRisingStar) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 CSRisingStar.ProtoReflect.Descriptor instead. func (*CSRisingStar) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{6} } func (x *CSRisingStar) GetRisingType() int32 { if x != nil { return x.RisingType } return 0 } func (x *CSRisingStar) GetRisingModId() int32 { if x != nil { return x.RisingModId } return 0 } //PACKET_SC_ROLE_RISINGSTAR type SCRoleRisingStar struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields RoleInfo *RoleInfo `protobuf:"bytes,1,opt,name=RoleInfo,proto3" json:"RoleInfo,omitempty"` RetCode OpResultCode `protobuf:"varint,2,opt,name=RetCode,proto3,enum=pets.OpResultCode" json:"RetCode,omitempty"` } func (x *SCRoleRisingStar) Reset() { *x = SCRoleRisingStar{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SCRoleRisingStar) String() string { return protoimpl.X.MessageStringOf(x) } func (*SCRoleRisingStar) ProtoMessage() {} func (x *SCRoleRisingStar) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 SCRoleRisingStar.ProtoReflect.Descriptor instead. func (*SCRoleRisingStar) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{7} } func (x *SCRoleRisingStar) GetRoleInfo() *RoleInfo { if x != nil { return x.RoleInfo } return nil } func (x *SCRoleRisingStar) GetRetCode() OpResultCode { if x != nil { return x.RetCode } return OpResultCode_OPRC_Sucess } //PACKET_SC_PET_RISINGSTAR type SCPetRisingStar struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PetInfo *PetInfo `protobuf:"bytes,1,opt,name=PetInfo,proto3" json:"PetInfo,omitempty"` RetCode OpResultCode `protobuf:"varint,2,opt,name=RetCode,proto3,enum=pets.OpResultCode" json:"RetCode,omitempty"` } func (x *SCPetRisingStar) Reset() { *x = SCPetRisingStar{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SCPetRisingStar) String() string { return protoimpl.X.MessageStringOf(x) } func (*SCPetRisingStar) ProtoMessage() {} func (x *SCPetRisingStar) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 SCPetRisingStar.ProtoReflect.Descriptor instead. func (*SCPetRisingStar) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{8} } func (x *SCPetRisingStar) GetPetInfo() *PetInfo { if x != nil { return x.PetInfo } return nil } func (x *SCPetRisingStar) GetRetCode() OpResultCode { if x != nil { return x.RetCode } return OpResultCode_OPRC_Sucess } //PACKET_CS_ROLEPETUSEOP type CSRolePetUseOp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields UseModType int32 `protobuf:"varint,1,opt,name=UseModType,proto3" json:"UseModType,omitempty"` //0.人物 1.宠物 UseModId int32 `protobuf:"varint,2,opt,name=UseModId,proto3" json:"UseModId,omitempty"` //使用的模型id } func (x *CSRolePetUseOp) Reset() { *x = CSRolePetUseOp{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CSRolePetUseOp) String() string { return protoimpl.X.MessageStringOf(x) } func (*CSRolePetUseOp) ProtoMessage() {} func (x *CSRolePetUseOp) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 CSRolePetUseOp.ProtoReflect.Descriptor instead. func (*CSRolePetUseOp) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{9} } func (x *CSRolePetUseOp) GetUseModType() int32 { if x != nil { return x.UseModType } return 0 } func (x *CSRolePetUseOp) GetUseModId() int32 { if x != nil { return x.UseModId } return 0 } //PACKET_CS_ROLEPETUSEOP type SCRolePetUseOp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields UseModType int32 `protobuf:"varint,1,opt,name=UseModType,proto3" json:"UseModType,omitempty"` //0.人物 1.宠物 UseModId int32 `protobuf:"varint,2,opt,name=UseModId,proto3" json:"UseModId,omitempty"` //使用的模型id RetCode OpResultCode `protobuf:"varint,3,opt,name=RetCode,proto3,enum=pets.OpResultCode" json:"RetCode,omitempty"` } func (x *SCRolePetUseOp) Reset() { *x = SCRolePetUseOp{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SCRolePetUseOp) String() string { return protoimpl.X.MessageStringOf(x) } func (*SCRolePetUseOp) ProtoMessage() {} func (x *SCRolePetUseOp) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 SCRolePetUseOp.ProtoReflect.Descriptor instead. func (*SCRolePetUseOp) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{10} } func (x *SCRolePetUseOp) GetUseModType() int32 { if x != nil { return x.UseModType } return 0 } func (x *SCRolePetUseOp) GetUseModId() int32 { if x != nil { return x.UseModId } return 0 } func (x *SCRolePetUseOp) GetRetCode() OpResultCode { if x != nil { return x.RetCode } return OpResultCode_OPRC_Sucess } //PACKET_CS_ROLEPETUNLOCK type CSRolePetUnlock struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields UseModType int32 `protobuf:"varint,1,opt,name=UseModType,proto3" json:"UseModType,omitempty"` //0.人物 1.宠物 UseModId int32 `protobuf:"varint,2,opt,name=UseModId,proto3" json:"UseModId,omitempty"` //模型id } func (x *CSRolePetUnlock) Reset() { *x = CSRolePetUnlock{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CSRolePetUnlock) String() string { return protoimpl.X.MessageStringOf(x) } func (*CSRolePetUnlock) ProtoMessage() {} func (x *CSRolePetUnlock) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 CSRolePetUnlock.ProtoReflect.Descriptor instead. func (*CSRolePetUnlock) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{11} } func (x *CSRolePetUnlock) GetUseModType() int32 { if x != nil { return x.UseModType } return 0 } func (x *CSRolePetUnlock) GetUseModId() int32 { if x != nil { return x.UseModId } return 0 } //PACKET_SC_ROLEPETUNLOCK type SCRolePetUnlock struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields UseModType int32 `protobuf:"varint,1,opt,name=UseModType,proto3" json:"UseModType,omitempty"` //0.人物 1.宠物 UseModId int32 `protobuf:"varint,2,opt,name=UseModId,proto3" json:"UseModId,omitempty"` //模型id RetCode OpResultCode `protobuf:"varint,3,opt,name=RetCode,proto3,enum=pets.OpResultCode" json:"RetCode,omitempty"` RoleInfo *RoleInfo `protobuf:"bytes,4,opt,name=RoleInfo,proto3" json:"RoleInfo,omitempty"` PetInfo *PetInfo `protobuf:"bytes,5,opt,name=PetInfo,proto3" json:"PetInfo,omitempty"` } func (x *SCRolePetUnlock) Reset() { *x = SCRolePetUnlock{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SCRolePetUnlock) String() string { return protoimpl.X.MessageStringOf(x) } func (*SCRolePetUnlock) ProtoMessage() {} func (x *SCRolePetUnlock) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 SCRolePetUnlock.ProtoReflect.Descriptor instead. func (*SCRolePetUnlock) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{12} } func (x *SCRolePetUnlock) GetUseModType() int32 { if x != nil { return x.UseModType } return 0 } func (x *SCRolePetUnlock) GetUseModId() int32 { if x != nil { return x.UseModId } return 0 } func (x *SCRolePetUnlock) GetRetCode() OpResultCode { if x != nil { return x.RetCode } return OpResultCode_OPRC_Sucess } func (x *SCRolePetUnlock) GetRoleInfo() *RoleInfo { if x != nil { return x.RoleInfo } return nil } func (x *SCRolePetUnlock) GetPetInfo() *PetInfo { if x != nil { return x.PetInfo } return nil } //宠物技能 type PetSkillInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields SkillId int32 `protobuf:"varint,1,opt,name=SkillId,proto3" json:"SkillId,omitempty"` SkillLevel int32 `protobuf:"varint,2,opt,name=SkillLevel,proto3" json:"SkillLevel,omitempty"` } func (x *PetSkillInfo) Reset() { *x = PetSkillInfo{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PetSkillInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*PetSkillInfo) ProtoMessage() {} func (x *PetSkillInfo) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 PetSkillInfo.ProtoReflect.Descriptor instead. func (*PetSkillInfo) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{13} } func (x *PetSkillInfo) GetSkillId() int32 { if x != nil { return x.SkillId } return 0 } func (x *PetSkillInfo) GetSkillLevel() int32 { if x != nil { return x.SkillLevel } return 0 } //请求升级 //PACKET_CS_PETSKILLLEVELUP type CSPetSkillLevelUp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PetId int32 `protobuf:"varint,1,opt,name=PetId,proto3" json:"PetId,omitempty"` SkillId int32 `protobuf:"varint,2,opt,name=SkillId,proto3" json:"SkillId,omitempty"` } func (x *CSPetSkillLevelUp) Reset() { *x = CSPetSkillLevelUp{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CSPetSkillLevelUp) String() string { return protoimpl.X.MessageStringOf(x) } func (*CSPetSkillLevelUp) ProtoMessage() {} func (x *CSPetSkillLevelUp) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 CSPetSkillLevelUp.ProtoReflect.Descriptor instead. func (*CSPetSkillLevelUp) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{14} } func (x *CSPetSkillLevelUp) GetPetId() int32 { if x != nil { return x.PetId } return 0 } func (x *CSPetSkillLevelUp) GetSkillId() int32 { if x != nil { return x.SkillId } return 0 } //请求升级返回 //PACKET_SC_PETSKILLLEVELUP type SCPetSkillLevelUp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PetId int32 `protobuf:"varint,1,opt,name=PetId,proto3" json:"PetId,omitempty"` SkillId int32 `protobuf:"varint,2,opt,name=SkillId,proto3" json:"SkillId,omitempty"` SkillLevel int32 `protobuf:"varint,3,opt,name=SkillLevel,proto3" json:"SkillLevel,omitempty"` } func (x *SCPetSkillLevelUp) Reset() { *x = SCPetSkillLevelUp{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SCPetSkillLevelUp) String() string { return protoimpl.X.MessageStringOf(x) } func (*SCPetSkillLevelUp) ProtoMessage() {} func (x *SCPetSkillLevelUp) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 SCPetSkillLevelUp.ProtoReflect.Descriptor instead. func (*SCPetSkillLevelUp) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{15} } func (x *SCPetSkillLevelUp) GetPetId() int32 { if x != nil { return x.PetId } return 0 } func (x *SCPetSkillLevelUp) GetSkillId() int32 { if x != nil { return x.SkillId } return 0 } func (x *SCPetSkillLevelUp) GetSkillLevel() int32 { if x != nil { return x.SkillLevel } return 0 } type Item struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` //道具id N int64 `protobuf:"varint,2,opt,name=N,proto3" json:"N,omitempty"` //道具数量 } func (x *Item) Reset() { *x = Item{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Item) String() string { return protoimpl.X.MessageStringOf(x) } func (*Item) ProtoMessage() {} func (x *Item) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 Item.ProtoReflect.Descriptor instead. func (*Item) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{16} } func (x *Item) GetId() int32 { if x != nil { return x.Id } return 0 } func (x *Item) GetN() int64 { if x != nil { return x.N } return 0 } type SkinInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` //皮肤id Level int32 `protobuf:"varint,2,opt,name=Level,proto3" json:"Level,omitempty"` //皮肤等级 MaxLevel int32 `protobuf:"varint,3,opt,name=MaxLevel,proto3" json:"MaxLevel,omitempty"` //最大等级 Cost []*Item `protobuf:"bytes,4,rep,name=Cost,proto3" json:"Cost,omitempty"` // 升级消耗 Have []*Item `protobuf:"bytes,5,rep,name=Have,proto3" json:"Have,omitempty"` // 拥有道具 IsUsing bool `protobuf:"varint,6,opt,name=IsUsing,proto3" json:"IsUsing,omitempty"` //是否在使用中 IsUnlock bool `protobuf:"varint,7,opt,name=IsUnlock,proto3" json:"IsUnlock,omitempty"` //是否已经解锁 IsUpgrade bool `protobuf:"varint,8,opt,name=IsUpgrade,proto3" json:"IsUpgrade,omitempty"` // 皮肤升级开关 SkillId int32 `protobuf:"varint,9,opt,name=SkillId,proto3" json:"SkillId,omitempty"` //技能id SkillLevel int32 `protobuf:"varint,10,opt,name=SkillLevel,proto3" json:"SkillLevel,omitempty"` //技能等级 SkillNextLevel int32 `protobuf:"varint,11,opt,name=SkillNextLevel,proto3" json:"SkillNextLevel,omitempty"` //技能下一等级 SkillMaxLevel int32 `protobuf:"varint,12,opt,name=SkillMaxLevel,proto3" json:"SkillMaxLevel,omitempty"` //技能最大等级 SkillValue int32 `protobuf:"varint,13,opt,name=SkillValue,proto3" json:"SkillValue,omitempty"` //技能属性值 SkillNextValue int32 `protobuf:"varint,14,opt,name=SkillNextValue,proto3" json:"SkillNextValue,omitempty"` //技能下一级属性值 SkillType int32 `protobuf:"varint,15,opt,name=SkillType,proto3" json:"SkillType,omitempty"` // 技能生效类型 0获得后生效 1穿戴生效 UnLockType int32 `protobuf:"varint,16,opt,name=UnLockType,proto3" json:"UnLockType,omitempty"` // 解锁类型 0默认皮肤不用解锁 1自动解锁 2道具解锁 3vip等级解锁 NeedVip int32 `protobuf:"varint,17,opt,name=NeedVip,proto3" json:"NeedVip,omitempty"` // 解锁需要的vip等级 } func (x *SkinInfo) Reset() { *x = SkinInfo{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SkinInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*SkinInfo) ProtoMessage() {} func (x *SkinInfo) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 SkinInfo.ProtoReflect.Descriptor instead. func (*SkinInfo) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{17} } func (x *SkinInfo) GetId() int32 { if x != nil { return x.Id } return 0 } func (x *SkinInfo) GetLevel() int32 { if x != nil { return x.Level } return 0 } func (x *SkinInfo) GetMaxLevel() int32 { if x != nil { return x.MaxLevel } return 0 } func (x *SkinInfo) GetCost() []*Item { if x != nil { return x.Cost } return nil } func (x *SkinInfo) GetHave() []*Item { if x != nil { return x.Have } return nil } func (x *SkinInfo) GetIsUsing() bool { if x != nil { return x.IsUsing } return false } func (x *SkinInfo) GetIsUnlock() bool { if x != nil { return x.IsUnlock } return false } func (x *SkinInfo) GetIsUpgrade() bool { if x != nil { return x.IsUpgrade } return false } func (x *SkinInfo) GetSkillId() int32 { if x != nil { return x.SkillId } return 0 } func (x *SkinInfo) GetSkillLevel() int32 { if x != nil { return x.SkillLevel } return 0 } func (x *SkinInfo) GetSkillNextLevel() int32 { if x != nil { return x.SkillNextLevel } return 0 } func (x *SkinInfo) GetSkillMaxLevel() int32 { if x != nil { return x.SkillMaxLevel } return 0 } func (x *SkinInfo) GetSkillValue() int32 { if x != nil { return x.SkillValue } return 0 } func (x *SkinInfo) GetSkillNextValue() int32 { if x != nil { return x.SkillNextValue } return 0 } func (x *SkinInfo) GetSkillType() int32 { if x != nil { return x.SkillType } return 0 } func (x *SkinInfo) GetUnLockType() int32 { if x != nil { return x.UnLockType } return 0 } func (x *SkinInfo) GetNeedVip() int32 { if x != nil { return x.NeedVip } return 0 } //PACKET_CS_SKIN_INFO type CSSkinInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *CSSkinInfo) Reset() { *x = CSSkinInfo{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CSSkinInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*CSSkinInfo) ProtoMessage() {} func (x *CSSkinInfo) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 CSSkinInfo.ProtoReflect.Descriptor instead. func (*CSSkinInfo) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{18} } //PACKET_SC_SKIN_INFO type SCSkinInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Infos []*SkinInfo `protobuf:"bytes,1,rep,name=Infos,proto3" json:"Infos,omitempty"` } func (x *SCSkinInfo) Reset() { *x = SCSkinInfo{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SCSkinInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*SCSkinInfo) ProtoMessage() {} func (x *SCSkinInfo) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 SCSkinInfo.ProtoReflect.Descriptor instead. func (*SCSkinInfo) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{19} } func (x *SCSkinInfo) GetInfos() []*SkinInfo { if x != nil { return x.Infos } return nil } //PACKET_CS_SKIN_USE type CSSkinUse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` } func (x *CSSkinUse) Reset() { *x = CSSkinUse{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CSSkinUse) String() string { return protoimpl.X.MessageStringOf(x) } func (*CSSkinUse) ProtoMessage() {} func (x *CSSkinUse) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 CSSkinUse.ProtoReflect.Descriptor instead. func (*CSSkinUse) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{20} } func (x *CSSkinUse) GetId() int32 { if x != nil { return x.Id } return 0 } //PACKET_SC_SKIN_USE type SCSkinUse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` RetCode OpResultCode `protobuf:"varint,2,opt,name=RetCode,proto3,enum=pets.OpResultCode" json:"RetCode,omitempty"` SnId int32 `protobuf:"varint,3,opt,name=SnId,proto3" json:"SnId,omitempty"` } func (x *SCSkinUse) Reset() { *x = SCSkinUse{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SCSkinUse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SCSkinUse) ProtoMessage() {} func (x *SCSkinUse) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 SCSkinUse.ProtoReflect.Descriptor instead. func (*SCSkinUse) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{21} } func (x *SCSkinUse) GetId() int32 { if x != nil { return x.Id } return 0 } func (x *SCSkinUse) GetRetCode() OpResultCode { if x != nil { return x.RetCode } return OpResultCode_OPRC_Sucess } func (x *SCSkinUse) GetSnId() int32 { if x != nil { return x.SnId } return 0 } //PACKET_CS_SKIN_UPGRADE type CSSkinUpgrade struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` } func (x *CSSkinUpgrade) Reset() { *x = CSSkinUpgrade{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CSSkinUpgrade) String() string { return protoimpl.X.MessageStringOf(x) } func (*CSSkinUpgrade) ProtoMessage() {} func (x *CSSkinUpgrade) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 CSSkinUpgrade.ProtoReflect.Descriptor instead. func (*CSSkinUpgrade) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{22} } func (x *CSSkinUpgrade) GetId() int32 { if x != nil { return x.Id } return 0 } //PACKET_SC_SKIN_UPGRADE type SCSkinUpgrade struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Info *SkinInfo `protobuf:"bytes,1,opt,name=Info,proto3" json:"Info,omitempty"` RetCode OpResultCode `protobuf:"varint,2,opt,name=RetCode,proto3,enum=pets.OpResultCode" json:"RetCode,omitempty"` } func (x *SCSkinUpgrade) Reset() { *x = SCSkinUpgrade{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SCSkinUpgrade) String() string { return protoimpl.X.MessageStringOf(x) } func (*SCSkinUpgrade) ProtoMessage() {} func (x *SCSkinUpgrade) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 SCSkinUpgrade.ProtoReflect.Descriptor instead. func (*SCSkinUpgrade) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{23} } func (x *SCSkinUpgrade) GetInfo() *SkinInfo { if x != nil { return x.Info } return nil } func (x *SCSkinUpgrade) GetRetCode() OpResultCode { if x != nil { return x.RetCode } return OpResultCode_OPRC_Sucess } //PACKET_CS_SKIN_UNLOCK type CSSKinUnLock struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` } func (x *CSSKinUnLock) Reset() { *x = CSSKinUnLock{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CSSKinUnLock) String() string { return protoimpl.X.MessageStringOf(x) } func (*CSSKinUnLock) ProtoMessage() {} func (x *CSSKinUnLock) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 CSSKinUnLock.ProtoReflect.Descriptor instead. func (*CSSKinUnLock) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{24} } func (x *CSSKinUnLock) GetId() int32 { if x != nil { return x.Id } return 0 } //PACKET_SC_SKIN_UNLOCK type SCSkinUnLock struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` RetCode OpResultCode `protobuf:"varint,2,opt,name=RetCode,proto3,enum=pets.OpResultCode" json:"RetCode,omitempty"` Info *SkinInfo `protobuf:"bytes,3,opt,name=Info,proto3" json:"Info,omitempty"` } func (x *SCSkinUnLock) Reset() { *x = SCSkinUnLock{} if protoimpl.UnsafeEnabled { mi := &file_protocol_pets_pets_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SCSkinUnLock) String() string { return protoimpl.X.MessageStringOf(x) } func (*SCSkinUnLock) ProtoMessage() {} func (x *SCSkinUnLock) ProtoReflect() protoreflect.Message { mi := &file_protocol_pets_pets_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 SCSkinUnLock.ProtoReflect.Descriptor instead. func (*SCSkinUnLock) Descriptor() ([]byte, []int) { return file_protocol_pets_pets_proto_rawDescGZIP(), []int{25} } func (x *SCSkinUnLock) GetId() int32 { if x != nil { return x.Id } return 0 } func (x *SCSkinUnLock) GetRetCode() OpResultCode { if x != nil { return x.RetCode } return OpResultCode_OPRC_Sucess } func (x *SCSkinUnLock) GetInfo() *SkinInfo { if x != nil { return x.Info } return nil } var File_protocol_pets_pets_proto protoreflect.FileDescriptor var file_protocol_pets_pets_proto_rawDesc = []byte{ 0x0a, 0x18, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x70, 0x65, 0x74, 0x73, 0x2f, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x70, 0x65, 0x74, 0x73, 0x22, 0xbe, 0x03, 0x0a, 0x08, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x47, 0x72, 0x61, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x47, 0x72, 0x61, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x4d, 0x61, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4d, 0x61, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x41, 0x77, 0x61, 0x72, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x41, 0x77, 0x61, 0x72, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x53, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x41, 0x77, 0x61, 0x72, 0x64, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x41, 0x77, 0x61, 0x72, 0x64, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x48, 0x61, 0x76, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x48, 0x61, 0x76, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x4e, 0x65, 0x78, 0x74, 0x41, 0x77, 0x61, 0x72, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x4e, 0x65, 0x78, 0x74, 0x41, 0x77, 0x61, 0x72, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x49, 0x73, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x49, 0x73, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x49, 0x73, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x49, 0x73, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x0c, 0x0a, 0x0a, 0x43, 0x53, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x32, 0x0a, 0x0a, 0x53, 0x43, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x05, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x22, 0xed, 0x03, 0x0a, 0x07, 0x50, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x50, 0x65, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x50, 0x65, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x47, 0x72, 0x61, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x47, 0x72, 0x61, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x4d, 0x61, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4d, 0x61, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x41, 0x77, 0x61, 0x72, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x41, 0x77, 0x61, 0x72, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x53, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x41, 0x77, 0x61, 0x72, 0x64, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x41, 0x77, 0x61, 0x72, 0x64, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x48, 0x61, 0x76, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x48, 0x61, 0x76, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x4e, 0x65, 0x78, 0x74, 0x41, 0x77, 0x61, 0x72, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x4e, 0x65, 0x78, 0x74, 0x41, 0x77, 0x61, 0x72, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x49, 0x73, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x49, 0x73, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x49, 0x73, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x49, 0x73, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x30, 0x0a, 0x09, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x50, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x0b, 0x0a, 0x09, 0x43, 0x53, 0x50, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x30, 0x0a, 0x09, 0x53, 0x43, 0x50, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x05, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x50, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x22, 0x50, 0x0a, 0x0c, 0x43, 0x53, 0x52, 0x69, 0x73, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x52, 0x69, 0x73, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x52, 0x69, 0x73, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x52, 0x69, 0x73, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x52, 0x69, 0x73, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x49, 0x64, 0x22, 0x6c, 0x0a, 0x10, 0x53, 0x43, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x69, 0x73, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x72, 0x12, 0x2a, 0x0a, 0x08, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x0a, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x68, 0x0a, 0x0f, 0x53, 0x43, 0x50, 0x65, 0x74, 0x52, 0x69, 0x73, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x72, 0x12, 0x27, 0x0a, 0x07, 0x50, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x50, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x50, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x0a, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x4c, 0x0a, 0x0e, 0x43, 0x53, 0x52, 0x6f, 0x6c, 0x65, 0x50, 0x65, 0x74, 0x55, 0x73, 0x65, 0x4f, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x49, 0x64, 0x22, 0x7a, 0x0a, 0x0e, 0x53, 0x43, 0x52, 0x6f, 0x6c, 0x65, 0x50, 0x65, 0x74, 0x55, 0x73, 0x65, 0x4f, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x4d, 0x0a, 0x0f, 0x43, 0x53, 0x52, 0x6f, 0x6c, 0x65, 0x50, 0x65, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1e, 0x0a, 0x0a, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x49, 0x64, 0x22, 0xd0, 0x01, 0x0a, 0x0f, 0x53, 0x43, 0x52, 0x6f, 0x6c, 0x65, 0x50, 0x65, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1e, 0x0a, 0x0a, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x27, 0x0a, 0x07, 0x50, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x50, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x50, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x48, 0x0a, 0x0c, 0x50, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x43, 0x0a, 0x11, 0x43, 0x53, 0x50, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x55, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x50, 0x65, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x50, 0x65, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x64, 0x22, 0x63, 0x0a, 0x11, 0x53, 0x43, 0x50, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x55, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x50, 0x65, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x50, 0x65, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x24, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x0c, 0x0a, 0x01, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x01, 0x4e, 0x22, 0x88, 0x04, 0x0a, 0x08, 0x53, 0x6b, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x4d, 0x61, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4d, 0x61, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1e, 0x0a, 0x04, 0x43, 0x6f, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x43, 0x6f, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x04, 0x48, 0x61, 0x76, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x48, 0x61, 0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x49, 0x73, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x49, 0x73, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x49, 0x73, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x49, 0x73, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x49, 0x73, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x49, 0x73, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x26, 0x0a, 0x0e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4e, 0x65, 0x78, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4e, 0x65, 0x78, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x24, 0x0a, 0x0d, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4e, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4e, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x55, 0x6e, 0x4c, 0x6f, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x55, 0x6e, 0x4c, 0x6f, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x4e, 0x65, 0x65, 0x64, 0x56, 0x69, 0x70, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4e, 0x65, 0x65, 0x64, 0x56, 0x69, 0x70, 0x22, 0x0c, 0x0a, 0x0a, 0x43, 0x53, 0x53, 0x6b, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x32, 0x0a, 0x0a, 0x53, 0x43, 0x53, 0x6b, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x05, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x53, 0x6b, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x22, 0x1b, 0x0a, 0x09, 0x43, 0x53, 0x53, 0x6b, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x22, 0x5d, 0x0a, 0x09, 0x53, 0x43, 0x53, 0x6b, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x22, 0x1f, 0x0a, 0x0d, 0x43, 0x53, 0x53, 0x6b, 0x69, 0x6e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x22, 0x61, 0x0a, 0x0d, 0x53, 0x43, 0x53, 0x6b, 0x69, 0x6e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x53, 0x6b, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x0a, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x1e, 0x0a, 0x0c, 0x43, 0x53, 0x53, 0x4b, 0x69, 0x6e, 0x55, 0x6e, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x22, 0x70, 0x0a, 0x0c, 0x53, 0x43, 0x53, 0x6b, 0x69, 0x6e, 0x55, 0x6e, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x65, 0x74, 0x73, 0x2e, 0x53, 0x6b, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x2a, 0xf7, 0x04, 0x0a, 0x0c, 0x50, 0x65, 0x74, 0x73, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x15, 0x0a, 0x11, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x41, 0x4e, 0x44, 0x59, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xf6, 0x13, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xf7, 0x13, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x50, 0x45, 0x54, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xf8, 0x13, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x50, 0x45, 0x54, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xf9, 0x13, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x50, 0x45, 0x54, 0x5f, 0x52, 0x49, 0x53, 0x49, 0x4e, 0x47, 0x53, 0x54, 0x41, 0x52, 0x10, 0xfa, 0x13, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x52, 0x49, 0x53, 0x49, 0x4e, 0x47, 0x53, 0x54, 0x41, 0x52, 0x10, 0xfb, 0x13, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x50, 0x45, 0x54, 0x5f, 0x52, 0x49, 0x53, 0x49, 0x4e, 0x47, 0x53, 0x54, 0x41, 0x52, 0x10, 0xfc, 0x13, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x50, 0x45, 0x54, 0x55, 0x53, 0x45, 0x4f, 0x50, 0x10, 0xfd, 0x13, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x50, 0x45, 0x54, 0x55, 0x53, 0x45, 0x4f, 0x50, 0x10, 0xfe, 0x13, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x50, 0x45, 0x54, 0x55, 0x4e, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0xff, 0x13, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x50, 0x45, 0x54, 0x55, 0x4e, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x80, 0x14, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x50, 0x45, 0x54, 0x53, 0x4b, 0x49, 0x4c, 0x4c, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x55, 0x50, 0x10, 0x81, 0x14, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x50, 0x45, 0x54, 0x53, 0x4b, 0x49, 0x4c, 0x4c, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x55, 0x50, 0x10, 0x82, 0x14, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x4b, 0x49, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x83, 0x14, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x4b, 0x49, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x84, 0x14, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x4b, 0x49, 0x4e, 0x5f, 0x55, 0x53, 0x45, 0x10, 0x85, 0x14, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x4b, 0x49, 0x4e, 0x5f, 0x55, 0x53, 0x45, 0x10, 0x86, 0x14, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x4b, 0x49, 0x4e, 0x5f, 0x55, 0x50, 0x47, 0x52, 0x41, 0x44, 0x45, 0x10, 0x87, 0x14, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x4b, 0x49, 0x4e, 0x5f, 0x55, 0x50, 0x47, 0x52, 0x41, 0x44, 0x45, 0x10, 0x88, 0x14, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x53, 0x4b, 0x49, 0x4e, 0x5f, 0x55, 0x4e, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x89, 0x14, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x53, 0x4b, 0x49, 0x4e, 0x5f, 0x55, 0x4e, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x8a, 0x14, 0x2a, 0x67, 0x0a, 0x0c, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x53, 0x75, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x4d, 0x61, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x10, 0x04, 0x42, 0x24, 0x5a, 0x22, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x2e, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x61, 0x6d, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x70, 0x65, 0x74, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_protocol_pets_pets_proto_rawDescOnce sync.Once file_protocol_pets_pets_proto_rawDescData = file_protocol_pets_pets_proto_rawDesc ) func file_protocol_pets_pets_proto_rawDescGZIP() []byte { file_protocol_pets_pets_proto_rawDescOnce.Do(func() { file_protocol_pets_pets_proto_rawDescData = protoimpl.X.CompressGZIP(file_protocol_pets_pets_proto_rawDescData) }) return file_protocol_pets_pets_proto_rawDescData } var file_protocol_pets_pets_proto_enumTypes = make([]protoimpl.EnumInfo, 2) var file_protocol_pets_pets_proto_msgTypes = make([]protoimpl.MessageInfo, 26) var file_protocol_pets_pets_proto_goTypes = []interface{}{ (PetsPacketID)(0), // 0: pets.PetsPacketID (OpResultCode)(0), // 1: pets.OpResultCode (*RoleInfo)(nil), // 2: pets.RoleInfo (*CSRoleInfo)(nil), // 3: pets.CSRoleInfo (*SCRoleInfo)(nil), // 4: pets.SCRoleInfo (*PetInfo)(nil), // 5: pets.PetInfo (*CSPetInfo)(nil), // 6: pets.CSPetInfo (*SCPetInfo)(nil), // 7: pets.SCPetInfo (*CSRisingStar)(nil), // 8: pets.CSRisingStar (*SCRoleRisingStar)(nil), // 9: pets.SCRoleRisingStar (*SCPetRisingStar)(nil), // 10: pets.SCPetRisingStar (*CSRolePetUseOp)(nil), // 11: pets.CSRolePetUseOp (*SCRolePetUseOp)(nil), // 12: pets.SCRolePetUseOp (*CSRolePetUnlock)(nil), // 13: pets.CSRolePetUnlock (*SCRolePetUnlock)(nil), // 14: pets.SCRolePetUnlock (*PetSkillInfo)(nil), // 15: pets.PetSkillInfo (*CSPetSkillLevelUp)(nil), // 16: pets.CSPetSkillLevelUp (*SCPetSkillLevelUp)(nil), // 17: pets.SCPetSkillLevelUp (*Item)(nil), // 18: pets.Item (*SkinInfo)(nil), // 19: pets.SkinInfo (*CSSkinInfo)(nil), // 20: pets.CSSkinInfo (*SCSkinInfo)(nil), // 21: pets.SCSkinInfo (*CSSkinUse)(nil), // 22: pets.CSSkinUse (*SCSkinUse)(nil), // 23: pets.SCSkinUse (*CSSkinUpgrade)(nil), // 24: pets.CSSkinUpgrade (*SCSkinUpgrade)(nil), // 25: pets.SCSkinUpgrade (*CSSKinUnLock)(nil), // 26: pets.CSSKinUnLock (*SCSkinUnLock)(nil), // 27: pets.SCSkinUnLock } var file_protocol_pets_pets_proto_depIdxs = []int32{ 2, // 0: pets.SCRoleInfo.Infos:type_name -> pets.RoleInfo 15, // 1: pets.PetInfo.SkillInfo:type_name -> pets.PetSkillInfo 5, // 2: pets.SCPetInfo.Infos:type_name -> pets.PetInfo 2, // 3: pets.SCRoleRisingStar.RoleInfo:type_name -> pets.RoleInfo 1, // 4: pets.SCRoleRisingStar.RetCode:type_name -> pets.OpResultCode 5, // 5: pets.SCPetRisingStar.PetInfo:type_name -> pets.PetInfo 1, // 6: pets.SCPetRisingStar.RetCode:type_name -> pets.OpResultCode 1, // 7: pets.SCRolePetUseOp.RetCode:type_name -> pets.OpResultCode 1, // 8: pets.SCRolePetUnlock.RetCode:type_name -> pets.OpResultCode 2, // 9: pets.SCRolePetUnlock.RoleInfo:type_name -> pets.RoleInfo 5, // 10: pets.SCRolePetUnlock.PetInfo:type_name -> pets.PetInfo 18, // 11: pets.SkinInfo.Cost:type_name -> pets.Item 18, // 12: pets.SkinInfo.Have:type_name -> pets.Item 19, // 13: pets.SCSkinInfo.Infos:type_name -> pets.SkinInfo 1, // 14: pets.SCSkinUse.RetCode:type_name -> pets.OpResultCode 19, // 15: pets.SCSkinUpgrade.Info:type_name -> pets.SkinInfo 1, // 16: pets.SCSkinUpgrade.RetCode:type_name -> pets.OpResultCode 1, // 17: pets.SCSkinUnLock.RetCode:type_name -> pets.OpResultCode 19, // 18: pets.SCSkinUnLock.Info:type_name -> pets.SkinInfo 19, // [19:19] is the sub-list for method output_type 19, // [19:19] is the sub-list for method input_type 19, // [19:19] is the sub-list for extension type_name 19, // [19:19] is the sub-list for extension extendee 0, // [0:19] is the sub-list for field type_name } func init() { file_protocol_pets_pets_proto_init() } func file_protocol_pets_pets_proto_init() { if File_protocol_pets_pets_proto != nil { return } if !protoimpl.UnsafeEnabled { file_protocol_pets_pets_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RoleInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CSRoleInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SCRoleInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PetInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CSPetInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SCPetInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CSRisingStar); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SCRoleRisingStar); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SCPetRisingStar); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CSRolePetUseOp); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SCRolePetUseOp); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CSRolePetUnlock); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SCRolePetUnlock); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PetSkillInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CSPetSkillLevelUp); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SCPetSkillLevelUp); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Item); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SkinInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CSSkinInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SCSkinInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CSSkinUse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SCSkinUse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CSSkinUpgrade); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SCSkinUpgrade); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CSSKinUnLock); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_protocol_pets_pets_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SCSkinUnLock); 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_protocol_pets_pets_proto_rawDesc, NumEnums: 2, NumMessages: 26, NumExtensions: 0, NumServices: 0, }, GoTypes: file_protocol_pets_pets_proto_goTypes, DependencyIndexes: file_protocol_pets_pets_proto_depIdxs, EnumInfos: file_protocol_pets_pets_proto_enumTypes, MessageInfos: file_protocol_pets_pets_proto_msgTypes, }.Build() File_protocol_pets_pets_proto = out.File file_protocol_pets_pets_proto_rawDesc = nil file_protocol_pets_pets_proto_goTypes = nil file_protocol_pets_pets_proto_depIdxs = nil }