// Message2Client // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.28.0 // protoc (unknown) // source: Message2Clients.proto package proto 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 MessageOfStudent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` Speed int32 `protobuf:"varint,3,opt,name=speed,proto3" json:"speed,omitempty"` Determination int32 `protobuf:"varint,4,opt,name=determination,proto3" json:"determination,omitempty"` // 剩余的学习毅力,相当于血量 Addiction int32 `protobuf:"varint,5,opt,name=addiction,proto3" json:"addiction,omitempty"` // 沉迷程度,相当于淘汰进度 TimeUntilSkillAvailable []float64 `protobuf:"fixed64,6,rep,packed,name=time_until_skill_available,json=timeUntilSkillAvailable,proto3" json:"time_until_skill_available,omitempty"` Place PlaceType `protobuf:"varint,7,opt,name=place,proto3,enum=protobuf.PlaceType" json:"place,omitempty"` Prop []PropType `protobuf:"varint,8,rep,packed,name=prop,proto3,enum=protobuf.PropType" json:"prop,omitempty"` PlayerState PlayerState `protobuf:"varint,9,opt,name=player_state,json=playerState,proto3,enum=protobuf.PlayerState" json:"player_state,omitempty"` Guid int64 `protobuf:"varint,10,opt,name=guid,proto3" json:"guid,omitempty"` BulletType BulletType `protobuf:"varint,12,opt,name=bullet_type,json=bulletType,proto3,enum=protobuf.BulletType" json:"bullet_type,omitempty"` LearningSpeed int32 `protobuf:"varint,13,opt,name=learning_speed,json=learningSpeed,proto3" json:"learning_speed,omitempty"` // 修理电机的速度 TreatSpeed int32 `protobuf:"varint,14,opt,name=treat_speed,json=treatSpeed,proto3" json:"treat_speed,omitempty"` // 治疗的速度 PlayerId int64 `protobuf:"varint,15,opt,name=player_id,json=playerId,proto3" json:"player_id,omitempty"` ViewRange int32 `protobuf:"varint,16,opt,name=view_range,json=viewRange,proto3" json:"view_range,omitempty"` // 视野距离 Radius int32 `protobuf:"varint,17,opt,name=radius,proto3" json:"radius,omitempty"` // 半径 DangerAlert float64 `protobuf:"fixed64,19,opt,name=danger_alert,json=dangerAlert,proto3" json:"danger_alert,omitempty"` // 危险警报,在捣蛋鬼靠近时会有预警 Score int32 `protobuf:"varint,20,opt,name=score,proto3" json:"score,omitempty"` TreatProgress int32 `protobuf:"varint,21,opt,name=treat_progress,json=treatProgress,proto3" json:"treat_progress,omitempty"` // 治疗进度 RescueProgress int32 `protobuf:"varint,22,opt,name=rescue_progress,json=rescueProgress,proto3" json:"rescue_progress,omitempty"` // 救援进度 StudentType StudentType `protobuf:"varint,23,opt,name=student_type,json=studentType,proto3,enum=protobuf.StudentType" json:"student_type,omitempty"` FacingDirection float64 `protobuf:"fixed64,24,opt,name=facing_direction,json=facingDirection,proto3" json:"facing_direction,omitempty"` Buff []StudentBuffType `protobuf:"varint,25,rep,packed,name=buff,proto3,enum=protobuf.StudentBuffType" json:"buff,omitempty"` } func (x *MessageOfStudent) Reset() { *x = MessageOfStudent{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfStudent) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfStudent) ProtoMessage() {} func (x *MessageOfStudent) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfStudent.ProtoReflect.Descriptor instead. func (*MessageOfStudent) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{0} } func (x *MessageOfStudent) GetX() int32 { if x != nil { return x.X } return 0 } func (x *MessageOfStudent) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *MessageOfStudent) GetSpeed() int32 { if x != nil { return x.Speed } return 0 } func (x *MessageOfStudent) GetDetermination() int32 { if x != nil { return x.Determination } return 0 } func (x *MessageOfStudent) GetAddiction() int32 { if x != nil { return x.Addiction } return 0 } func (x *MessageOfStudent) GetTimeUntilSkillAvailable() []float64 { if x != nil { return x.TimeUntilSkillAvailable } return nil } func (x *MessageOfStudent) GetPlace() PlaceType { if x != nil { return x.Place } return PlaceType_NULL_PLACE_TYPE } func (x *MessageOfStudent) GetProp() []PropType { if x != nil { return x.Prop } return nil } func (x *MessageOfStudent) GetPlayerState() PlayerState { if x != nil { return x.PlayerState } return PlayerState_NULL_STATUS } func (x *MessageOfStudent) GetGuid() int64 { if x != nil { return x.Guid } return 0 } func (x *MessageOfStudent) GetBulletType() BulletType { if x != nil { return x.BulletType } return BulletType_NULL_BULLET_TYPE } func (x *MessageOfStudent) GetLearningSpeed() int32 { if x != nil { return x.LearningSpeed } return 0 } func (x *MessageOfStudent) GetTreatSpeed() int32 { if x != nil { return x.TreatSpeed } return 0 } func (x *MessageOfStudent) GetPlayerId() int64 { if x != nil { return x.PlayerId } return 0 } func (x *MessageOfStudent) GetViewRange() int32 { if x != nil { return x.ViewRange } return 0 } func (x *MessageOfStudent) GetRadius() int32 { if x != nil { return x.Radius } return 0 } func (x *MessageOfStudent) GetDangerAlert() float64 { if x != nil { return x.DangerAlert } return 0 } func (x *MessageOfStudent) GetScore() int32 { if x != nil { return x.Score } return 0 } func (x *MessageOfStudent) GetTreatProgress() int32 { if x != nil { return x.TreatProgress } return 0 } func (x *MessageOfStudent) GetRescueProgress() int32 { if x != nil { return x.RescueProgress } return 0 } func (x *MessageOfStudent) GetStudentType() StudentType { if x != nil { return x.StudentType } return StudentType_NULL_STUDENT_TYPE } func (x *MessageOfStudent) GetFacingDirection() float64 { if x != nil { return x.FacingDirection } return 0 } func (x *MessageOfStudent) GetBuff() []StudentBuffType { if x != nil { return x.Buff } return nil } type MessageOfTricker struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` Speed int32 `protobuf:"varint,3,opt,name=speed,proto3" json:"speed,omitempty"` TimeUntilSkillAvailable []float64 `protobuf:"fixed64,5,rep,packed,name=time_until_skill_available,json=timeUntilSkillAvailable,proto3" json:"time_until_skill_available,omitempty"` Place PlaceType `protobuf:"varint,6,opt,name=place,proto3,enum=protobuf.PlaceType" json:"place,omitempty"` Prop []PropType `protobuf:"varint,7,rep,packed,name=prop,proto3,enum=protobuf.PropType" json:"prop,omitempty"` TrickerType TrickerType `protobuf:"varint,8,opt,name=tricker_type,json=trickerType,proto3,enum=protobuf.TrickerType" json:"tricker_type,omitempty"` Guid int64 `protobuf:"varint,9,opt,name=guid,proto3" json:"guid,omitempty"` Score int32 `protobuf:"varint,10,opt,name=score,proto3" json:"score,omitempty"` PlayerId int64 `protobuf:"varint,11,opt,name=player_id,json=playerId,proto3" json:"player_id,omitempty"` ViewRange int32 `protobuf:"varint,12,opt,name=view_range,json=viewRange,proto3" json:"view_range,omitempty"` // 视野距离 Radius int32 `protobuf:"varint,13,opt,name=radius,proto3" json:"radius,omitempty"` // 半径 PlayerState PlayerState `protobuf:"varint,14,opt,name=player_state,json=playerState,proto3,enum=protobuf.PlayerState" json:"player_state,omitempty"` TrickDesire float64 `protobuf:"fixed64,15,opt,name=trick_desire,json=trickDesire,proto3" json:"trick_desire,omitempty"` //bgm ClassVolume float64 `protobuf:"fixed64,16,opt,name=class_volume,json=classVolume,proto3" json:"class_volume,omitempty"` //bgm FacingDirection float64 `protobuf:"fixed64,17,opt,name=facing_direction,json=facingDirection,proto3" json:"facing_direction,omitempty"` BulletType BulletType `protobuf:"varint,18,opt,name=bullet_type,json=bulletType,proto3,enum=protobuf.BulletType" json:"bullet_type,omitempty"` Buff []TrickerBuffType `protobuf:"varint,19,rep,packed,name=buff,proto3,enum=protobuf.TrickerBuffType" json:"buff,omitempty"` } func (x *MessageOfTricker) Reset() { *x = MessageOfTricker{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfTricker) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfTricker) ProtoMessage() {} func (x *MessageOfTricker) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfTricker.ProtoReflect.Descriptor instead. func (*MessageOfTricker) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{1} } func (x *MessageOfTricker) GetX() int32 { if x != nil { return x.X } return 0 } func (x *MessageOfTricker) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *MessageOfTricker) GetSpeed() int32 { if x != nil { return x.Speed } return 0 } func (x *MessageOfTricker) GetTimeUntilSkillAvailable() []float64 { if x != nil { return x.TimeUntilSkillAvailable } return nil } func (x *MessageOfTricker) GetPlace() PlaceType { if x != nil { return x.Place } return PlaceType_NULL_PLACE_TYPE } func (x *MessageOfTricker) GetProp() []PropType { if x != nil { return x.Prop } return nil } func (x *MessageOfTricker) GetTrickerType() TrickerType { if x != nil { return x.TrickerType } return TrickerType_NULL_TRICKER_TYPE } func (x *MessageOfTricker) GetGuid() int64 { if x != nil { return x.Guid } return 0 } func (x *MessageOfTricker) GetScore() int32 { if x != nil { return x.Score } return 0 } func (x *MessageOfTricker) GetPlayerId() int64 { if x != nil { return x.PlayerId } return 0 } func (x *MessageOfTricker) GetViewRange() int32 { if x != nil { return x.ViewRange } return 0 } func (x *MessageOfTricker) GetRadius() int32 { if x != nil { return x.Radius } return 0 } func (x *MessageOfTricker) GetPlayerState() PlayerState { if x != nil { return x.PlayerState } return PlayerState_NULL_STATUS } func (x *MessageOfTricker) GetTrickDesire() float64 { if x != nil { return x.TrickDesire } return 0 } func (x *MessageOfTricker) GetClassVolume() float64 { if x != nil { return x.ClassVolume } return 0 } func (x *MessageOfTricker) GetFacingDirection() float64 { if x != nil { return x.FacingDirection } return 0 } func (x *MessageOfTricker) GetBulletType() BulletType { if x != nil { return x.BulletType } return BulletType_NULL_BULLET_TYPE } func (x *MessageOfTricker) GetBuff() []TrickerBuffType { if x != nil { return x.Buff } return nil } type MessageOfBullet struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Type BulletType `protobuf:"varint,1,opt,name=type,proto3,enum=protobuf.BulletType" json:"type,omitempty"` X int32 `protobuf:"varint,2,opt,name=x,proto3" json:"x,omitempty"` Y int32 `protobuf:"varint,3,opt,name=y,proto3" json:"y,omitempty"` FacingDirection float64 `protobuf:"fixed64,4,opt,name=facing_direction,json=facingDirection,proto3" json:"facing_direction,omitempty"` Guid int64 `protobuf:"varint,5,opt,name=guid,proto3" json:"guid,omitempty"` Team PlayerType `protobuf:"varint,6,opt,name=team,proto3,enum=protobuf.PlayerType" json:"team,omitempty"` Place PlaceType `protobuf:"varint,7,opt,name=place,proto3,enum=protobuf.PlaceType" json:"place,omitempty"` BombRange float64 `protobuf:"fixed64,8,opt,name=bomb_range,json=bombRange,proto3" json:"bomb_range,omitempty"` Speed int32 `protobuf:"varint,9,opt,name=speed,proto3" json:"speed,omitempty"` } func (x *MessageOfBullet) Reset() { *x = MessageOfBullet{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfBullet) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfBullet) ProtoMessage() {} func (x *MessageOfBullet) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfBullet.ProtoReflect.Descriptor instead. func (*MessageOfBullet) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{2} } func (x *MessageOfBullet) GetType() BulletType { if x != nil { return x.Type } return BulletType_NULL_BULLET_TYPE } func (x *MessageOfBullet) GetX() int32 { if x != nil { return x.X } return 0 } func (x *MessageOfBullet) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *MessageOfBullet) GetFacingDirection() float64 { if x != nil { return x.FacingDirection } return 0 } func (x *MessageOfBullet) GetGuid() int64 { if x != nil { return x.Guid } return 0 } func (x *MessageOfBullet) GetTeam() PlayerType { if x != nil { return x.Team } return PlayerType_NULL_PLAYER_TYPE } func (x *MessageOfBullet) GetPlace() PlaceType { if x != nil { return x.Place } return PlaceType_NULL_PLACE_TYPE } func (x *MessageOfBullet) GetBombRange() float64 { if x != nil { return x.BombRange } return 0 } func (x *MessageOfBullet) GetSpeed() int32 { if x != nil { return x.Speed } return 0 } type MessageOfBombedBullet struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Type BulletType `protobuf:"varint,1,opt,name=type,proto3,enum=protobuf.BulletType" json:"type,omitempty"` X int32 `protobuf:"varint,2,opt,name=x,proto3" json:"x,omitempty"` Y int32 `protobuf:"varint,3,opt,name=y,proto3" json:"y,omitempty"` FacingDirection float64 `protobuf:"fixed64,4,opt,name=facing_direction,json=facingDirection,proto3" json:"facing_direction,omitempty"` MappingId int64 `protobuf:"varint,5,opt,name=mapping_id,json=mappingId,proto3" json:"mapping_id,omitempty"` BombRange float64 `protobuf:"fixed64,6,opt,name=bomb_range,json=bombRange,proto3" json:"bomb_range,omitempty"` } func (x *MessageOfBombedBullet) Reset() { *x = MessageOfBombedBullet{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfBombedBullet) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfBombedBullet) ProtoMessage() {} func (x *MessageOfBombedBullet) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfBombedBullet.ProtoReflect.Descriptor instead. func (*MessageOfBombedBullet) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{3} } func (x *MessageOfBombedBullet) GetType() BulletType { if x != nil { return x.Type } return BulletType_NULL_BULLET_TYPE } func (x *MessageOfBombedBullet) GetX() int32 { if x != nil { return x.X } return 0 } func (x *MessageOfBombedBullet) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *MessageOfBombedBullet) GetFacingDirection() float64 { if x != nil { return x.FacingDirection } return 0 } func (x *MessageOfBombedBullet) GetMappingId() int64 { if x != nil { return x.MappingId } return 0 } func (x *MessageOfBombedBullet) GetBombRange() float64 { if x != nil { return x.BombRange } return 0 } type MessageOfProp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Type PropType `protobuf:"varint,1,opt,name=type,proto3,enum=protobuf.PropType" json:"type,omitempty"` X int32 `protobuf:"varint,2,opt,name=x,proto3" json:"x,omitempty"` Y int32 `protobuf:"varint,3,opt,name=y,proto3" json:"y,omitempty"` FacingDirection float64 `protobuf:"fixed64,4,opt,name=facing_direction,json=facingDirection,proto3" json:"facing_direction,omitempty"` Guid int64 `protobuf:"varint,5,opt,name=guid,proto3" json:"guid,omitempty"` Place PlaceType `protobuf:"varint,6,opt,name=place,proto3,enum=protobuf.PlaceType" json:"place,omitempty"` } func (x *MessageOfProp) Reset() { *x = MessageOfProp{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfProp) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfProp) ProtoMessage() {} func (x *MessageOfProp) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfProp.ProtoReflect.Descriptor instead. func (*MessageOfProp) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{4} } func (x *MessageOfProp) GetType() PropType { if x != nil { return x.Type } return PropType_NULL_PROP_TYPE } func (x *MessageOfProp) GetX() int32 { if x != nil { return x.X } return 0 } func (x *MessageOfProp) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *MessageOfProp) GetFacingDirection() float64 { if x != nil { return x.FacingDirection } return 0 } func (x *MessageOfProp) GetGuid() int64 { if x != nil { return x.Guid } return 0 } func (x *MessageOfProp) GetPlace() PlaceType { if x != nil { return x.Place } return PlaceType_NULL_PLACE_TYPE } type MessageOfPickedProp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Type PropType `protobuf:"varint,1,opt,name=type,proto3,enum=protobuf.PropType" json:"type,omitempty"` X int32 `protobuf:"varint,2,opt,name=x,proto3" json:"x,omitempty"` Y int32 `protobuf:"varint,3,opt,name=y,proto3" json:"y,omitempty"` FacingDirection float64 `protobuf:"fixed64,4,opt,name=facing_direction,json=facingDirection,proto3" json:"facing_direction,omitempty"` MappingId int64 `protobuf:"varint,5,opt,name=mapping_id,json=mappingId,proto3" json:"mapping_id,omitempty"` } func (x *MessageOfPickedProp) Reset() { *x = MessageOfPickedProp{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfPickedProp) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfPickedProp) ProtoMessage() {} func (x *MessageOfPickedProp) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfPickedProp.ProtoReflect.Descriptor instead. func (*MessageOfPickedProp) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{5} } func (x *MessageOfPickedProp) GetType() PropType { if x != nil { return x.Type } return PropType_NULL_PROP_TYPE } func (x *MessageOfPickedProp) GetX() int32 { if x != nil { return x.X } return 0 } func (x *MessageOfPickedProp) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *MessageOfPickedProp) GetFacingDirection() float64 { if x != nil { return x.FacingDirection } return 0 } func (x *MessageOfPickedProp) GetMappingId() int64 { if x != nil { return x.MappingId } return 0 } type MessageOfClassroom struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` Progress int32 `protobuf:"varint,3,opt,name=progress,proto3" json:"progress,omitempty"` } func (x *MessageOfClassroom) Reset() { *x = MessageOfClassroom{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfClassroom) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfClassroom) ProtoMessage() {} func (x *MessageOfClassroom) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfClassroom.ProtoReflect.Descriptor instead. func (*MessageOfClassroom) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{6} } func (x *MessageOfClassroom) GetX() int32 { if x != nil { return x.X } return 0 } func (x *MessageOfClassroom) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *MessageOfClassroom) GetProgress() int32 { if x != nil { return x.Progress } return 0 } type MessageOfGate struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` Progress int32 `protobuf:"varint,3,opt,name=progress,proto3" json:"progress,omitempty"` } func (x *MessageOfGate) Reset() { *x = MessageOfGate{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfGate) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfGate) ProtoMessage() {} func (x *MessageOfGate) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfGate.ProtoReflect.Descriptor instead. func (*MessageOfGate) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{7} } func (x *MessageOfGate) GetX() int32 { if x != nil { return x.X } return 0 } func (x *MessageOfGate) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *MessageOfGate) GetProgress() int32 { if x != nil { return x.Progress } return 0 } type MessageOfHiddenGate struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` Opened bool `protobuf:"varint,3,opt,name=opened,proto3" json:"opened,omitempty"` } func (x *MessageOfHiddenGate) Reset() { *x = MessageOfHiddenGate{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfHiddenGate) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfHiddenGate) ProtoMessage() {} func (x *MessageOfHiddenGate) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfHiddenGate.ProtoReflect.Descriptor instead. func (*MessageOfHiddenGate) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{8} } func (x *MessageOfHiddenGate) GetX() int32 { if x != nil { return x.X } return 0 } func (x *MessageOfHiddenGate) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *MessageOfHiddenGate) GetOpened() bool { if x != nil { return x.Opened } return false } type MessageOfDoor struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` IsOpen bool `protobuf:"varint,3,opt,name=is_open,json=isOpen,proto3" json:"is_open,omitempty"` Progress int32 `protobuf:"varint,4,opt,name=progress,proto3" json:"progress,omitempty"` } func (x *MessageOfDoor) Reset() { *x = MessageOfDoor{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfDoor) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfDoor) ProtoMessage() {} func (x *MessageOfDoor) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfDoor.ProtoReflect.Descriptor instead. func (*MessageOfDoor) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{9} } func (x *MessageOfDoor) GetX() int32 { if x != nil { return x.X } return 0 } func (x *MessageOfDoor) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *MessageOfDoor) GetIsOpen() bool { if x != nil { return x.IsOpen } return false } func (x *MessageOfDoor) GetProgress() int32 { if x != nil { return x.Progress } return 0 } type MessageOfChest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` Progress int32 `protobuf:"varint,3,opt,name=progress,proto3" json:"progress,omitempty"` } func (x *MessageOfChest) Reset() { *x = MessageOfChest{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfChest) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfChest) ProtoMessage() {} func (x *MessageOfChest) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfChest.ProtoReflect.Descriptor instead. func (*MessageOfChest) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{10} } func (x *MessageOfChest) GetX() int32 { if x != nil { return x.X } return 0 } func (x *MessageOfChest) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *MessageOfChest) GetProgress() int32 { if x != nil { return x.Progress } return 0 } type MessageOfMap struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Row []*MessageOfMap_Row `protobuf:"bytes,2,rep,name=row,proto3" json:"row,omitempty"` } func (x *MessageOfMap) Reset() { *x = MessageOfMap{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfMap) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfMap) ProtoMessage() {} func (x *MessageOfMap) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfMap.ProtoReflect.Descriptor instead. func (*MessageOfMap) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{11} } func (x *MessageOfMap) GetRow() []*MessageOfMap_Row { if x != nil { return x.Row } return nil } type MessageOfNews struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields News string `protobuf:"bytes,1,opt,name=news,proto3" json:"news,omitempty"` FromId int64 `protobuf:"varint,2,opt,name=from_id,json=fromId,proto3" json:"from_id,omitempty"` ToId int64 `protobuf:"varint,3,opt,name=to_id,json=toId,proto3" json:"to_id,omitempty"` } func (x *MessageOfNews) Reset() { *x = MessageOfNews{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfNews) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfNews) ProtoMessage() {} func (x *MessageOfNews) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfNews.ProtoReflect.Descriptor instead. func (*MessageOfNews) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{12} } func (x *MessageOfNews) GetNews() string { if x != nil { return x.News } return "" } func (x *MessageOfNews) GetFromId() int64 { if x != nil { return x.FromId } return 0 } func (x *MessageOfNews) GetToId() int64 { if x != nil { return x.ToId } return 0 } type MessageOfObj struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Types that are assignable to MessageOfObj: // *MessageOfObj_StudentMessage // *MessageOfObj_TrickerMessage // *MessageOfObj_PropMessage // *MessageOfObj_BulletMessage // *MessageOfObj_BombedBulletMessage // *MessageOfObj_ClassroomMessage // *MessageOfObj_DoorMessage // *MessageOfObj_GateMessage // *MessageOfObj_ChestMessage // *MessageOfObj_HiddenGateMessage // *MessageOfObj_NewsMessage // *MessageOfObj_MapMessage MessageOfObj isMessageOfObj_MessageOfObj `protobuf_oneof:"message_of_obj"` } func (x *MessageOfObj) Reset() { *x = MessageOfObj{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfObj) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfObj) ProtoMessage() {} func (x *MessageOfObj) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfObj.ProtoReflect.Descriptor instead. func (*MessageOfObj) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{13} } func (m *MessageOfObj) GetMessageOfObj() isMessageOfObj_MessageOfObj { if m != nil { return m.MessageOfObj } return nil } func (x *MessageOfObj) GetStudentMessage() *MessageOfStudent { if x, ok := x.GetMessageOfObj().(*MessageOfObj_StudentMessage); ok { return x.StudentMessage } return nil } func (x *MessageOfObj) GetTrickerMessage() *MessageOfTricker { if x, ok := x.GetMessageOfObj().(*MessageOfObj_TrickerMessage); ok { return x.TrickerMessage } return nil } func (x *MessageOfObj) GetPropMessage() *MessageOfProp { if x, ok := x.GetMessageOfObj().(*MessageOfObj_PropMessage); ok { return x.PropMessage } return nil } func (x *MessageOfObj) GetBulletMessage() *MessageOfBullet { if x, ok := x.GetMessageOfObj().(*MessageOfObj_BulletMessage); ok { return x.BulletMessage } return nil } func (x *MessageOfObj) GetBombedBulletMessage() *MessageOfBombedBullet { if x, ok := x.GetMessageOfObj().(*MessageOfObj_BombedBulletMessage); ok { return x.BombedBulletMessage } return nil } func (x *MessageOfObj) GetClassroomMessage() *MessageOfClassroom { if x, ok := x.GetMessageOfObj().(*MessageOfObj_ClassroomMessage); ok { return x.ClassroomMessage } return nil } func (x *MessageOfObj) GetDoorMessage() *MessageOfDoor { if x, ok := x.GetMessageOfObj().(*MessageOfObj_DoorMessage); ok { return x.DoorMessage } return nil } func (x *MessageOfObj) GetGateMessage() *MessageOfGate { if x, ok := x.GetMessageOfObj().(*MessageOfObj_GateMessage); ok { return x.GateMessage } return nil } func (x *MessageOfObj) GetChestMessage() *MessageOfChest { if x, ok := x.GetMessageOfObj().(*MessageOfObj_ChestMessage); ok { return x.ChestMessage } return nil } func (x *MessageOfObj) GetHiddenGateMessage() *MessageOfHiddenGate { if x, ok := x.GetMessageOfObj().(*MessageOfObj_HiddenGateMessage); ok { return x.HiddenGateMessage } return nil } func (x *MessageOfObj) GetNewsMessage() *MessageOfNews { if x, ok := x.GetMessageOfObj().(*MessageOfObj_NewsMessage); ok { return x.NewsMessage } return nil } func (x *MessageOfObj) GetMapMessage() *MessageOfMap { if x, ok := x.GetMessageOfObj().(*MessageOfObj_MapMessage); ok { return x.MapMessage } return nil } type isMessageOfObj_MessageOfObj interface { isMessageOfObj_MessageOfObj() } type MessageOfObj_StudentMessage struct { StudentMessage *MessageOfStudent `protobuf:"bytes,1,opt,name=student_message,json=studentMessage,proto3,oneof"` } type MessageOfObj_TrickerMessage struct { TrickerMessage *MessageOfTricker `protobuf:"bytes,2,opt,name=tricker_message,json=trickerMessage,proto3,oneof"` } type MessageOfObj_PropMessage struct { PropMessage *MessageOfProp `protobuf:"bytes,3,opt,name=prop_message,json=propMessage,proto3,oneof"` } type MessageOfObj_BulletMessage struct { BulletMessage *MessageOfBullet `protobuf:"bytes,4,opt,name=bullet_message,json=bulletMessage,proto3,oneof"` } type MessageOfObj_BombedBulletMessage struct { BombedBulletMessage *MessageOfBombedBullet `protobuf:"bytes,5,opt,name=bombed_bullet_message,json=bombedBulletMessage,proto3,oneof"` } type MessageOfObj_ClassroomMessage struct { ClassroomMessage *MessageOfClassroom `protobuf:"bytes,6,opt,name=classroom_message,json=classroomMessage,proto3,oneof"` } type MessageOfObj_DoorMessage struct { DoorMessage *MessageOfDoor `protobuf:"bytes,7,opt,name=door_message,json=doorMessage,proto3,oneof"` } type MessageOfObj_GateMessage struct { GateMessage *MessageOfGate `protobuf:"bytes,8,opt,name=gate_message,json=gateMessage,proto3,oneof"` } type MessageOfObj_ChestMessage struct { ChestMessage *MessageOfChest `protobuf:"bytes,9,opt,name=chest_message,json=chestMessage,proto3,oneof"` } type MessageOfObj_HiddenGateMessage struct { HiddenGateMessage *MessageOfHiddenGate `protobuf:"bytes,10,opt,name=hidden_gate_message,json=hiddenGateMessage,proto3,oneof"` } type MessageOfObj_NewsMessage struct { NewsMessage *MessageOfNews `protobuf:"bytes,11,opt,name=news_message,json=newsMessage,proto3,oneof"` } type MessageOfObj_MapMessage struct { MapMessage *MessageOfMap `protobuf:"bytes,12,opt,name=map_message,json=mapMessage,proto3,oneof"` } func (*MessageOfObj_StudentMessage) isMessageOfObj_MessageOfObj() {} func (*MessageOfObj_TrickerMessage) isMessageOfObj_MessageOfObj() {} func (*MessageOfObj_PropMessage) isMessageOfObj_MessageOfObj() {} func (*MessageOfObj_BulletMessage) isMessageOfObj_MessageOfObj() {} func (*MessageOfObj_BombedBulletMessage) isMessageOfObj_MessageOfObj() {} func (*MessageOfObj_ClassroomMessage) isMessageOfObj_MessageOfObj() {} func (*MessageOfObj_DoorMessage) isMessageOfObj_MessageOfObj() {} func (*MessageOfObj_GateMessage) isMessageOfObj_MessageOfObj() {} func (*MessageOfObj_ChestMessage) isMessageOfObj_MessageOfObj() {} func (*MessageOfObj_HiddenGateMessage) isMessageOfObj_MessageOfObj() {} func (*MessageOfObj_NewsMessage) isMessageOfObj_MessageOfObj() {} func (*MessageOfObj_MapMessage) isMessageOfObj_MessageOfObj() {} type MessageOfAll struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields GameTime int32 `protobuf:"varint,1,opt,name=game_time,json=gameTime,proto3" json:"game_time,omitempty"` SubjectFinished int32 `protobuf:"varint,2,opt,name=subject_finished,json=subjectFinished,proto3" json:"subject_finished,omitempty"` // 完成的科目数 StudentGraduated int32 `protobuf:"varint,3,opt,name=student_graduated,json=studentGraduated,proto3" json:"student_graduated,omitempty"` // 已经毕业的学生数 StudentQuited int32 `protobuf:"varint,4,opt,name=student_quited,json=studentQuited,proto3" json:"student_quited,omitempty"` // 已经退学的学生数 StudentScore int32 `protobuf:"varint,5,opt,name=student_score,json=studentScore,proto3" json:"student_score,omitempty"` TrickerScore int32 `protobuf:"varint,6,opt,name=tricker_score,json=trickerScore,proto3" json:"tricker_score,omitempty"` } func (x *MessageOfAll) Reset() { *x = MessageOfAll{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfAll) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfAll) ProtoMessage() {} func (x *MessageOfAll) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfAll.ProtoReflect.Descriptor instead. func (*MessageOfAll) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{14} } func (x *MessageOfAll) GetGameTime() int32 { if x != nil { return x.GameTime } return 0 } func (x *MessageOfAll) GetSubjectFinished() int32 { if x != nil { return x.SubjectFinished } return 0 } func (x *MessageOfAll) GetStudentGraduated() int32 { if x != nil { return x.StudentGraduated } return 0 } func (x *MessageOfAll) GetStudentQuited() int32 { if x != nil { return x.StudentQuited } return 0 } func (x *MessageOfAll) GetStudentScore() int32 { if x != nil { return x.StudentScore } return 0 } func (x *MessageOfAll) GetTrickerScore() int32 { if x != nil { return x.TrickerScore } return 0 } type MessageToClient struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ObjMessage []*MessageOfObj `protobuf:"bytes,1,rep,name=obj_message,json=objMessage,proto3" json:"obj_message,omitempty"` GameState GameState `protobuf:"varint,2,opt,name=game_state,json=gameState,proto3,enum=protobuf.GameState" json:"game_state,omitempty"` AllMessage *MessageOfAll `protobuf:"bytes,3,opt,name=all_message,json=allMessage,proto3" json:"all_message,omitempty"` } func (x *MessageToClient) Reset() { *x = MessageToClient{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageToClient) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageToClient) ProtoMessage() {} func (x *MessageToClient) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageToClient.ProtoReflect.Descriptor instead. func (*MessageToClient) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{15} } func (x *MessageToClient) GetObjMessage() []*MessageOfObj { if x != nil { return x.ObjMessage } return nil } func (x *MessageToClient) GetGameState() GameState { if x != nil { return x.GameState } return GameState_NULL_GAME_STATE } func (x *MessageToClient) GetAllMessage() *MessageOfAll { if x != nil { return x.AllMessage } return nil } type MoveRes struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ActualSpeed int64 `protobuf:"varint,1,opt,name=actual_speed,json=actualSpeed,proto3" json:"actual_speed,omitempty"` ActualAngle float64 `protobuf:"fixed64,2,opt,name=actual_angle,json=actualAngle,proto3" json:"actual_angle,omitempty"` ActSuccess bool `protobuf:"varint,3,opt,name=act_success,json=actSuccess,proto3" json:"act_success,omitempty"` } func (x *MoveRes) Reset() { *x = MoveRes{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MoveRes) String() string { return protoimpl.X.MessageStringOf(x) } func (*MoveRes) ProtoMessage() {} func (x *MoveRes) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MoveRes.ProtoReflect.Descriptor instead. func (*MoveRes) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{16} } func (x *MoveRes) GetActualSpeed() int64 { if x != nil { return x.ActualSpeed } return 0 } func (x *MoveRes) GetActualAngle() float64 { if x != nil { return x.ActualAngle } return 0 } func (x *MoveRes) GetActSuccess() bool { if x != nil { return x.ActSuccess } return false } type BoolRes struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ActSuccess bool `protobuf:"varint,1,opt,name=act_success,json=actSuccess,proto3" json:"act_success,omitempty"` } func (x *BoolRes) Reset() { *x = BoolRes{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *BoolRes) String() string { return protoimpl.X.MessageStringOf(x) } func (*BoolRes) ProtoMessage() {} func (x *BoolRes) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 BoolRes.ProtoReflect.Descriptor instead. func (*BoolRes) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{17} } func (x *BoolRes) GetActSuccess() bool { if x != nil { return x.ActSuccess } return false } type MessageOfMap_Row struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Col []PlaceType `protobuf:"varint,1,rep,packed,name=col,proto3,enum=protobuf.PlaceType" json:"col,omitempty"` } func (x *MessageOfMap_Row) Reset() { *x = MessageOfMap_Row{} if protoimpl.UnsafeEnabled { mi := &file_Message2Clients_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MessageOfMap_Row) String() string { return protoimpl.X.MessageStringOf(x) } func (*MessageOfMap_Row) ProtoMessage() {} func (x *MessageOfMap_Row) ProtoReflect() protoreflect.Message { mi := &file_Message2Clients_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 MessageOfMap_Row.ProtoReflect.Descriptor instead. func (*MessageOfMap_Row) Descriptor() ([]byte, []int) { return file_Message2Clients_proto_rawDescGZIP(), []int{11, 0} } func (x *MessageOfMap_Row) GetCol() []PlaceType { if x != nil { return x.Col } return nil } var File_Message2Clients_proto protoreflect.FileDescriptor var file_Message2Clients_proto_rawDesc = []byte{ 0x0a, 0x15, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x1a, 0x11, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd6, 0x06, 0x0a, 0x10, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x53, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x64, 0x65, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x64, 0x65, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x64, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x1a, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x01, 0x52, 0x17, 0x74, 0x69, 0x6d, 0x65, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x29, 0x0a, 0x05, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x70, 0x72, 0x6f, 0x70, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x70, 0x72, 0x6f, 0x70, 0x12, 0x38, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x75, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x67, 0x75, 0x69, 0x64, 0x12, 0x35, 0x0a, 0x0b, 0x62, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x62, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x72, 0x65, 0x61, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x72, 0x65, 0x61, 0x74, 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x76, 0x69, 0x65, 0x77, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0b, 0x64, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x65, 0x61, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x74, 0x72, 0x65, 0x61, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x63, 0x75, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x63, 0x75, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x38, 0x0a, 0x0c, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x18, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0f, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2d, 0x0a, 0x04, 0x62, 0x75, 0x66, 0x66, 0x18, 0x19, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x66, 0x66, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x62, 0x75, 0x66, 0x66, 0x22, 0x9d, 0x05, 0x0a, 0x10, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x54, 0x72, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x12, 0x3b, 0x0a, 0x1a, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x01, 0x52, 0x17, 0x74, 0x69, 0x6d, 0x65, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x29, 0x0a, 0x05, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x70, 0x72, 0x6f, 0x70, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x70, 0x72, 0x6f, 0x70, 0x12, 0x38, 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x72, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x74, 0x72, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x75, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x67, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x76, 0x69, 0x65, 0x77, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x12, 0x38, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x63, 0x6b, 0x5f, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0b, 0x74, 0x72, 0x69, 0x63, 0x6b, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0b, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0f, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x0b, 0x62, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x62, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2d, 0x0a, 0x04, 0x62, 0x75, 0x66, 0x66, 0x18, 0x13, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x72, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x42, 0x75, 0x66, 0x66, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x62, 0x75, 0x66, 0x66, 0x22, 0xa0, 0x02, 0x0a, 0x0f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x42, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x12, 0x28, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0f, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x67, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x29, 0x0a, 0x05, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6f, 0x6d, 0x62, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x62, 0x6f, 0x6d, 0x62, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x22, 0xc6, 0x01, 0x0a, 0x15, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x42, 0x6f, 0x6d, 0x62, 0x65, 0x64, 0x42, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x12, 0x28, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0f, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6f, 0x6d, 0x62, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x62, 0x6f, 0x6d, 0x62, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x22, 0xbd, 0x01, 0x0a, 0x0d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x50, 0x72, 0x6f, 0x70, 0x12, 0x26, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0f, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x67, 0x75, 0x69, 0x64, 0x12, 0x29, 0x0a, 0x05, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x22, 0xa3, 0x01, 0x0a, 0x13, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x50, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x50, 0x72, 0x6f, 0x70, 0x12, 0x26, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0f, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x22, 0x4c, 0x0a, 0x12, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x72, 0x6f, 0x6f, 0x6d, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x47, 0x0a, 0x0d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x47, 0x61, 0x74, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x49, 0x0a, 0x13, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x47, 0x61, 0x74, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x22, 0x60, 0x0a, 0x0d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x44, 0x6f, 0x6f, 0x72, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x4f, 0x70, 0x65, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x48, 0x0a, 0x0e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x43, 0x68, 0x65, 0x73, 0x74, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x6a, 0x0a, 0x0c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x4d, 0x61, 0x70, 0x12, 0x2c, 0x0a, 0x03, 0x72, 0x6f, 0x77, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x4d, 0x61, 0x70, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x03, 0x72, 0x6f, 0x77, 0x1a, 0x2c, 0x0a, 0x03, 0x52, 0x6f, 0x77, 0x12, 0x25, 0x0a, 0x03, 0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x03, 0x63, 0x6f, 0x6c, 0x22, 0x51, 0x0a, 0x0d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x4e, 0x65, 0x77, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x65, 0x77, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x65, 0x77, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x66, 0x72, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x13, 0x0a, 0x05, 0x74, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x74, 0x6f, 0x49, 0x64, 0x22, 0xdb, 0x06, 0x0a, 0x0c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x4f, 0x62, 0x6a, 0x12, 0x45, 0x0a, 0x0f, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x53, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x45, 0x0a, 0x0f, 0x74, 0x72, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x54, 0x72, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0e, 0x74, 0x72, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3c, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x70, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x50, 0x72, 0x6f, 0x70, 0x48, 0x00, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x70, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x42, 0x0a, 0x0e, 0x62, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x42, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x62, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x55, 0x0a, 0x15, 0x62, 0x6f, 0x6d, 0x62, 0x65, 0x64, 0x5f, 0x62, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x42, 0x6f, 0x6d, 0x62, 0x65, 0x64, 0x42, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x48, 0x00, 0x52, 0x13, 0x62, 0x6f, 0x6d, 0x62, 0x65, 0x64, 0x42, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x4b, 0x0a, 0x11, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x72, 0x6f, 0x6f, 0x6d, 0x48, 0x00, 0x52, 0x10, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x72, 0x6f, 0x6f, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3c, 0x0a, 0x0c, 0x64, 0x6f, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x44, 0x6f, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x6f, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3c, 0x0a, 0x0c, 0x67, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x47, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x67, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3f, 0x0a, 0x0d, 0x63, 0x68, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x43, 0x68, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x68, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x4f, 0x0a, 0x13, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x47, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x11, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x47, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3c, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x73, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x4e, 0x65, 0x77, 0x73, 0x48, 0x00, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x39, 0x0a, 0x0b, 0x6d, 0x61, 0x70, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x4d, 0x61, 0x70, 0x48, 0x00, 0x52, 0x0a, 0x6d, 0x61, 0x70, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x6f, 0x66, 0x5f, 0x6f, 0x62, 0x6a, 0x22, 0xf4, 0x01, 0x0a, 0x0c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x41, 0x6c, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x72, 0x61, 0x64, 0x75, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x47, 0x72, 0x61, 0x64, 0x75, 0x61, 0x74, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x5f, 0x71, 0x75, 0x69, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x51, 0x75, 0x69, 0x74, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x72, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x74, 0x72, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0xb7, 0x01, 0x0a, 0x0f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x37, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x4f, 0x62, 0x6a, 0x52, 0x0a, 0x6f, 0x62, 0x6a, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x32, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x37, 0x0a, 0x0b, 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x66, 0x41, 0x6c, 0x6c, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x70, 0x0a, 0x07, 0x4d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0b, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x2a, 0x0a, 0x07, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x42, 0x73, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x42, 0x14, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x0d, 0x6a, 0x6f, 0x62, 0x2d, 0x41, 0x50, 0x49, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0xa2, 0x02, 0x03, 0x50, 0x58, 0x58, 0xaa, 0x02, 0x08, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0xca, 0x02, 0x08, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0xe2, 0x02, 0x14, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x08, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_Message2Clients_proto_rawDescOnce sync.Once file_Message2Clients_proto_rawDescData = file_Message2Clients_proto_rawDesc ) func file_Message2Clients_proto_rawDescGZIP() []byte { file_Message2Clients_proto_rawDescOnce.Do(func() { file_Message2Clients_proto_rawDescData = protoimpl.X.CompressGZIP(file_Message2Clients_proto_rawDescData) }) return file_Message2Clients_proto_rawDescData } var file_Message2Clients_proto_msgTypes = make([]protoimpl.MessageInfo, 19) var file_Message2Clients_proto_goTypes = []interface{}{ (*MessageOfStudent)(nil), // 0: protobuf.MessageOfStudent (*MessageOfTricker)(nil), // 1: protobuf.MessageOfTricker (*MessageOfBullet)(nil), // 2: protobuf.MessageOfBullet (*MessageOfBombedBullet)(nil), // 3: protobuf.MessageOfBombedBullet (*MessageOfProp)(nil), // 4: protobuf.MessageOfProp (*MessageOfPickedProp)(nil), // 5: protobuf.MessageOfPickedProp (*MessageOfClassroom)(nil), // 6: protobuf.MessageOfClassroom (*MessageOfGate)(nil), // 7: protobuf.MessageOfGate (*MessageOfHiddenGate)(nil), // 8: protobuf.MessageOfHiddenGate (*MessageOfDoor)(nil), // 9: protobuf.MessageOfDoor (*MessageOfChest)(nil), // 10: protobuf.MessageOfChest (*MessageOfMap)(nil), // 11: protobuf.MessageOfMap (*MessageOfNews)(nil), // 12: protobuf.MessageOfNews (*MessageOfObj)(nil), // 13: protobuf.MessageOfObj (*MessageOfAll)(nil), // 14: protobuf.MessageOfAll (*MessageToClient)(nil), // 15: protobuf.MessageToClient (*MoveRes)(nil), // 16: protobuf.MoveRes (*BoolRes)(nil), // 17: protobuf.BoolRes (*MessageOfMap_Row)(nil), // 18: protobuf.MessageOfMap.Row (PlaceType)(0), // 19: protobuf.PlaceType (PropType)(0), // 20: protobuf.PropType (PlayerState)(0), // 21: protobuf.PlayerState (BulletType)(0), // 22: protobuf.BulletType (StudentType)(0), // 23: protobuf.StudentType (StudentBuffType)(0), // 24: protobuf.StudentBuffType (TrickerType)(0), // 25: protobuf.TrickerType (TrickerBuffType)(0), // 26: protobuf.TrickerBuffType (PlayerType)(0), // 27: protobuf.PlayerType (GameState)(0), // 28: protobuf.GameState } var file_Message2Clients_proto_depIdxs = []int32{ 19, // 0: protobuf.MessageOfStudent.place:type_name -> protobuf.PlaceType 20, // 1: protobuf.MessageOfStudent.prop:type_name -> protobuf.PropType 21, // 2: protobuf.MessageOfStudent.player_state:type_name -> protobuf.PlayerState 22, // 3: protobuf.MessageOfStudent.bullet_type:type_name -> protobuf.BulletType 23, // 4: protobuf.MessageOfStudent.student_type:type_name -> protobuf.StudentType 24, // 5: protobuf.MessageOfStudent.buff:type_name -> protobuf.StudentBuffType 19, // 6: protobuf.MessageOfTricker.place:type_name -> protobuf.PlaceType 20, // 7: protobuf.MessageOfTricker.prop:type_name -> protobuf.PropType 25, // 8: protobuf.MessageOfTricker.tricker_type:type_name -> protobuf.TrickerType 21, // 9: protobuf.MessageOfTricker.player_state:type_name -> protobuf.PlayerState 22, // 10: protobuf.MessageOfTricker.bullet_type:type_name -> protobuf.BulletType 26, // 11: protobuf.MessageOfTricker.buff:type_name -> protobuf.TrickerBuffType 22, // 12: protobuf.MessageOfBullet.type:type_name -> protobuf.BulletType 27, // 13: protobuf.MessageOfBullet.team:type_name -> protobuf.PlayerType 19, // 14: protobuf.MessageOfBullet.place:type_name -> protobuf.PlaceType 22, // 15: protobuf.MessageOfBombedBullet.type:type_name -> protobuf.BulletType 20, // 16: protobuf.MessageOfProp.type:type_name -> protobuf.PropType 19, // 17: protobuf.MessageOfProp.place:type_name -> protobuf.PlaceType 20, // 18: protobuf.MessageOfPickedProp.type:type_name -> protobuf.PropType 18, // 19: protobuf.MessageOfMap.row:type_name -> protobuf.MessageOfMap.Row 0, // 20: protobuf.MessageOfObj.student_message:type_name -> protobuf.MessageOfStudent 1, // 21: protobuf.MessageOfObj.tricker_message:type_name -> protobuf.MessageOfTricker 4, // 22: protobuf.MessageOfObj.prop_message:type_name -> protobuf.MessageOfProp 2, // 23: protobuf.MessageOfObj.bullet_message:type_name -> protobuf.MessageOfBullet 3, // 24: protobuf.MessageOfObj.bombed_bullet_message:type_name -> protobuf.MessageOfBombedBullet 6, // 25: protobuf.MessageOfObj.classroom_message:type_name -> protobuf.MessageOfClassroom 9, // 26: protobuf.MessageOfObj.door_message:type_name -> protobuf.MessageOfDoor 7, // 27: protobuf.MessageOfObj.gate_message:type_name -> protobuf.MessageOfGate 10, // 28: protobuf.MessageOfObj.chest_message:type_name -> protobuf.MessageOfChest 8, // 29: protobuf.MessageOfObj.hidden_gate_message:type_name -> protobuf.MessageOfHiddenGate 12, // 30: protobuf.MessageOfObj.news_message:type_name -> protobuf.MessageOfNews 11, // 31: protobuf.MessageOfObj.map_message:type_name -> protobuf.MessageOfMap 13, // 32: protobuf.MessageToClient.obj_message:type_name -> protobuf.MessageOfObj 28, // 33: protobuf.MessageToClient.game_state:type_name -> protobuf.GameState 14, // 34: protobuf.MessageToClient.all_message:type_name -> protobuf.MessageOfAll 19, // 35: protobuf.MessageOfMap.Row.col:type_name -> protobuf.PlaceType 36, // [36:36] is the sub-list for method output_type 36, // [36:36] is the sub-list for method input_type 36, // [36:36] is the sub-list for extension type_name 36, // [36:36] is the sub-list for extension extendee 0, // [0:36] is the sub-list for field type_name } func init() { file_Message2Clients_proto_init() } func file_Message2Clients_proto_init() { if File_Message2Clients_proto != nil { return } file_MessageType_proto_init() if !protoimpl.UnsafeEnabled { file_Message2Clients_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfStudent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfTricker); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfBullet); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfBombedBullet); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfProp); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfPickedProp); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfClassroom); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfGate); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfHiddenGate); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfDoor); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfChest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfMap); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfNews); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfObj); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfAll); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageToClient); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MoveRes); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BoolRes); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Message2Clients_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MessageOfMap_Row); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } } file_Message2Clients_proto_msgTypes[13].OneofWrappers = []interface{}{ (*MessageOfObj_StudentMessage)(nil), (*MessageOfObj_TrickerMessage)(nil), (*MessageOfObj_PropMessage)(nil), (*MessageOfObj_BulletMessage)(nil), (*MessageOfObj_BombedBulletMessage)(nil), (*MessageOfObj_ClassroomMessage)(nil), (*MessageOfObj_DoorMessage)(nil), (*MessageOfObj_GateMessage)(nil), (*MessageOfObj_ChestMessage)(nil), (*MessageOfObj_HiddenGateMessage)(nil), (*MessageOfObj_NewsMessage)(nil), (*MessageOfObj_MapMessage)(nil), } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_Message2Clients_proto_rawDesc, NumEnums: 0, NumMessages: 19, NumExtensions: 0, NumServices: 0, }, GoTypes: file_Message2Clients_proto_goTypes, DependencyIndexes: file_Message2Clients_proto_depIdxs, MessageInfos: file_Message2Clients_proto_msgTypes, }.Build() File_Message2Clients_proto = out.File file_Message2Clients_proto_rawDesc = nil file_Message2Clients_proto_goTypes = nil file_Message2Clients_proto_depIdxs = nil }