game_sync/protocol/samloc/samloc.pb.go

2212 lines
80 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.27.1-devel
// protoc v3.19.4
// source: protocol/samloc/samloc.proto
package samloc
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 OpResultCode int32
const (
OpResultCode_OPRC_Sucess OpResultCode = 0 //成功
OpResultCode_OPRC_Error OpResultCode = 1 //失败
OpResultCode_OPRC_NotMAxSingle OpResultCode = 2 //报单出最大
)
// Enum value maps for OpResultCode.
var (
OpResultCode_name = map[int32]string{
0: "OPRC_Sucess",
1: "OPRC_Error",
2: "OPRC_NotMAxSingle",
}
OpResultCode_value = map[string]int32{
"OPRC_Sucess": 0,
"OPRC_Error": 1,
"OPRC_NotMAxSingle": 2,
}
)
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_samloc_samloc_proto_enumTypes[0].Descriptor()
}
func (OpResultCode) Type() protoreflect.EnumType {
return &file_protocol_samloc_samloc_proto_enumTypes[0]
}
func (x OpResultCode) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use OpResultCode.Descriptor instead.
func (OpResultCode) EnumDescriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{0}
}
//samloc
type SamLocPacketID int32
const (
SamLocPacketID_PACKET_SamLocZERO SamLocPacketID = 0 // 弃用消息号
SamLocPacketID_PACKET_SCSamLocRoomInfo SamLocPacketID = 5550 //房间信息
SamLocPacketID_PACKET_SCSamLocRoomState SamLocPacketID = 5551 //房间状态
SamLocPacketID_PACKET_CSSamLocPlayerOp SamLocPacketID = 5552 //玩家操作
SamLocPacketID_PACKET_SCSamLocPlayerOp SamLocPacketID = 5553 //玩家操作
SamLocPacketID_PACKET_SCSamLocPlayerEnter SamLocPacketID = 5554 //玩家进入
SamLocPacketID_PACKET_SCSamLocPlayerLeave SamLocPacketID = 5555 //玩家离开
SamLocPacketID_PACKET_SCSamLocCard SamLocPacketID = 5556 //发牌
SamLocPacketID_PACKET_SCSamLocGameBilled SamLocPacketID = 5557 //结算
SamLocPacketID_PACKET_SCSamLocCurOpPos SamLocPacketID = 5558 //当前操作的玩家位置
SamLocPacketID_PACKET_SCSamLocSmallGameBilled SamLocPacketID = 5559 //小结算
SamLocPacketID_PACKET_SCSamLocUpdateMasterSnid SamLocPacketID = 5560 //房主更换
SamLocPacketID_PACKET_SCSamLocUpdateAudienceNum SamLocPacketID = 5561 //推送观众人数
SamLocPacketID_PACKET_SCSamLocAI SamLocPacketID = 5562 //AI消息
SamLocPacketID_PACKET_SCSamLocFirstOpPos SamLocPacketID = 5563 //首出玩家
)
// Enum value maps for SamLocPacketID.
var (
SamLocPacketID_name = map[int32]string{
0: "PACKET_SamLocZERO",
5550: "PACKET_SCSamLocRoomInfo",
5551: "PACKET_SCSamLocRoomState",
5552: "PACKET_CSSamLocPlayerOp",
5553: "PACKET_SCSamLocPlayerOp",
5554: "PACKET_SCSamLocPlayerEnter",
5555: "PACKET_SCSamLocPlayerLeave",
5556: "PACKET_SCSamLocCard",
5557: "PACKET_SCSamLocGameBilled",
5558: "PACKET_SCSamLocCurOpPos",
5559: "PACKET_SCSamLocSmallGameBilled",
5560: "PACKET_SCSamLocUpdateMasterSnid",
5561: "PACKET_SCSamLocUpdateAudienceNum",
5562: "PACKET_SCSamLocAI",
5563: "PACKET_SCSamLocFirstOpPos",
}
SamLocPacketID_value = map[string]int32{
"PACKET_SamLocZERO": 0,
"PACKET_SCSamLocRoomInfo": 5550,
"PACKET_SCSamLocRoomState": 5551,
"PACKET_CSSamLocPlayerOp": 5552,
"PACKET_SCSamLocPlayerOp": 5553,
"PACKET_SCSamLocPlayerEnter": 5554,
"PACKET_SCSamLocPlayerLeave": 5555,
"PACKET_SCSamLocCard": 5556,
"PACKET_SCSamLocGameBilled": 5557,
"PACKET_SCSamLocCurOpPos": 5558,
"PACKET_SCSamLocSmallGameBilled": 5559,
"PACKET_SCSamLocUpdateMasterSnid": 5560,
"PACKET_SCSamLocUpdateAudienceNum": 5561,
"PACKET_SCSamLocAI": 5562,
"PACKET_SCSamLocFirstOpPos": 5563,
}
)
func (x SamLocPacketID) Enum() *SamLocPacketID {
p := new(SamLocPacketID)
*p = x
return p
}
func (x SamLocPacketID) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (SamLocPacketID) Descriptor() protoreflect.EnumDescriptor {
return file_protocol_samloc_samloc_proto_enumTypes[1].Descriptor()
}
func (SamLocPacketID) Type() protoreflect.EnumType {
return &file_protocol_samloc_samloc_proto_enumTypes[1]
}
func (x SamLocPacketID) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use SamLocPacketID.Descriptor instead.
func (SamLocPacketID) EnumDescriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{1}
}
//玩家信息
type SamLocPlayerData struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"` //名字
SnId int32 `protobuf:"varint,2,opt,name=SnId,proto3" json:"SnId,omitempty"` //账号
Head int32 `protobuf:"varint,3,opt,name=Head,proto3" json:"Head,omitempty"` //头像
Sex int32 `protobuf:"varint,4,opt,name=Sex,proto3" json:"Sex,omitempty"` //性别
Params []string `protobuf:"bytes,5,rep,name=Params,proto3" json:"Params,omitempty"` //其他数据 如:昵称 头像 性别 ip 等
Coin int64 `protobuf:"varint,6,opt,name=Coin,proto3" json:"Coin,omitempty"` //金币
Pos int32 `protobuf:"varint,7,opt,name=Pos,proto3" json:"Pos,omitempty"` //座位位置
Flag int32 `protobuf:"varint,8,opt,name=Flag,proto3" json:"Flag,omitempty"` //二进制标记 详见:数据字典
Longitude int32 `protobuf:"varint,9,opt,name=Longitude,proto3" json:"Longitude,omitempty"` //经度
Latitude int32 `protobuf:"varint,10,opt,name=Latitude,proto3" json:"Latitude,omitempty"` //纬度
City string `protobuf:"bytes,11,opt,name=City,proto3" json:"City,omitempty"` //城市 例:伦敦
LastOp int32 `protobuf:"varint,12,opt,name=LastOp,proto3" json:"LastOp,omitempty"` //如上:玩家操作
VIP int32 `protobuf:"varint,13,opt,name=VIP,proto3" json:"VIP,omitempty"` //玩家VIP等级
HeadOutLine int32 `protobuf:"varint,14,opt,name=HeadOutLine,proto3" json:"HeadOutLine,omitempty"` //头像框
NiceId int32 `protobuf:"varint,15,opt,name=NiceId,proto3" json:"NiceId,omitempty"` //靓号[机器人用]
Cards []int32 `protobuf:"varint,16,rep,packed,name=Cards,proto3" json:"Cards,omitempty"` //手牌
CurRoundTotalBet int64 `protobuf:"varint,17,opt,name=CurRoundTotalBet,proto3" json:"CurRoundTotalBet,omitempty"` //本轮押注已押的金币
GameCoin int64 `protobuf:"varint,18,opt,name=GameCoin,proto3" json:"GameCoin,omitempty"` //游戏内带入的金币
RoleId int32 `protobuf:"varint,19,opt,name=RoleId,proto3" json:"RoleId,omitempty"` //使用中的角色id
Items map[int32]int32 `protobuf:"bytes,20,rep,name=Items,proto3" json:"Items,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
MatchRankId int32 `protobuf:"varint,21,opt,name=MatchRankId,proto3" json:"MatchRankId,omitempty"`
Lv int32 `protobuf:"varint,22,opt,name=Lv,proto3" json:"Lv,omitempty"`
CopySnid int32 `protobuf:"varint,23,opt,name=CopySnid,proto3" json:"CopySnid,omitempty"` //比赛场机器人假snid
CopyRoleId int32 `protobuf:"varint,24,opt,name=CopyRoleId,proto3" json:"CopyRoleId,omitempty"` //比赛场机器人假角色
Trusteeship int32 `protobuf:"varint,25,opt,name=Trusteeship,proto3" json:"Trusteeship,omitempty"` //托管
}
func (x *SamLocPlayerData) Reset() {
*x = SamLocPlayerData{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SamLocPlayerData) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SamLocPlayerData) ProtoMessage() {}
func (x *SamLocPlayerData) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SamLocPlayerData.ProtoReflect.Descriptor instead.
func (*SamLocPlayerData) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{0}
}
func (x *SamLocPlayerData) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *SamLocPlayerData) GetSnId() int32 {
if x != nil {
return x.SnId
}
return 0
}
func (x *SamLocPlayerData) GetHead() int32 {
if x != nil {
return x.Head
}
return 0
}
func (x *SamLocPlayerData) GetSex() int32 {
if x != nil {
return x.Sex
}
return 0
}
func (x *SamLocPlayerData) GetParams() []string {
if x != nil {
return x.Params
}
return nil
}
func (x *SamLocPlayerData) GetCoin() int64 {
if x != nil {
return x.Coin
}
return 0
}
func (x *SamLocPlayerData) GetPos() int32 {
if x != nil {
return x.Pos
}
return 0
}
func (x *SamLocPlayerData) GetFlag() int32 {
if x != nil {
return x.Flag
}
return 0
}
func (x *SamLocPlayerData) GetLongitude() int32 {
if x != nil {
return x.Longitude
}
return 0
}
func (x *SamLocPlayerData) GetLatitude() int32 {
if x != nil {
return x.Latitude
}
return 0
}
func (x *SamLocPlayerData) GetCity() string {
if x != nil {
return x.City
}
return ""
}
func (x *SamLocPlayerData) GetLastOp() int32 {
if x != nil {
return x.LastOp
}
return 0
}
func (x *SamLocPlayerData) GetVIP() int32 {
if x != nil {
return x.VIP
}
return 0
}
func (x *SamLocPlayerData) GetHeadOutLine() int32 {
if x != nil {
return x.HeadOutLine
}
return 0
}
func (x *SamLocPlayerData) GetNiceId() int32 {
if x != nil {
return x.NiceId
}
return 0
}
func (x *SamLocPlayerData) GetCards() []int32 {
if x != nil {
return x.Cards
}
return nil
}
func (x *SamLocPlayerData) GetCurRoundTotalBet() int64 {
if x != nil {
return x.CurRoundTotalBet
}
return 0
}
func (x *SamLocPlayerData) GetGameCoin() int64 {
if x != nil {
return x.GameCoin
}
return 0
}
func (x *SamLocPlayerData) GetRoleId() int32 {
if x != nil {
return x.RoleId
}
return 0
}
func (x *SamLocPlayerData) GetItems() map[int32]int32 {
if x != nil {
return x.Items
}
return nil
}
func (x *SamLocPlayerData) GetMatchRankId() int32 {
if x != nil {
return x.MatchRankId
}
return 0
}
func (x *SamLocPlayerData) GetLv() int32 {
if x != nil {
return x.Lv
}
return 0
}
func (x *SamLocPlayerData) GetCopySnid() int32 {
if x != nil {
return x.CopySnid
}
return 0
}
func (x *SamLocPlayerData) GetCopyRoleId() int32 {
if x != nil {
return x.CopyRoleId
}
return 0
}
func (x *SamLocPlayerData) GetTrusteeship() int32 {
if x != nil {
return x.Trusteeship
}
return 0
}
type LastDelCard struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Cards []int32 `protobuf:"varint,1,rep,packed,name=Cards,proto3" json:"Cards,omitempty"`
}
func (x *LastDelCard) Reset() {
*x = LastDelCard{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LastDelCard) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LastDelCard) ProtoMessage() {}
func (x *LastDelCard) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 LastDelCard.ProtoReflect.Descriptor instead.
func (*LastDelCard) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{1}
}
func (x *LastDelCard) GetCards() []int32 {
if x != nil {
return x.Cards
}
return nil
}
//房间信息
type SCSamLocRoomInfo struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
RoomId int32 `protobuf:"varint,1,opt,name=RoomId,proto3" json:"RoomId,omitempty"` //房间id
Creator int32 `protobuf:"varint,2,opt,name=Creator,proto3" json:"Creator,omitempty"` //创建者SnId
GameId int32 `protobuf:"varint,3,opt,name=GameId,proto3" json:"GameId,omitempty"` //游戏id
RoomMode int32 `protobuf:"varint,4,opt,name=RoomMode,proto3" json:"RoomMode,omitempty"` //游戏模式
Params []int32 `protobuf:"varint,5,rep,packed,name=Params,proto3" json:"Params,omitempty"` //规则参数
BankerPos int32 `protobuf:"varint,6,opt,name=BankerPos,proto3" json:"BankerPos,omitempty"` //庄家位置
State int32 `protobuf:"varint,7,opt,name=State,proto3" json:"State,omitempty"` //房间当前状态,如上
TimeOut int32 `protobuf:"varint,8,opt,name=TimeOut,proto3" json:"TimeOut,omitempty"` //等待剩余时间 单位:秒
Players []*SamLocPlayerData `protobuf:"bytes,9,rep,name=Players,proto3" json:"Players,omitempty"` //房间内的玩家信息
AudienceNum int32 `protobuf:"varint,11,opt,name=AudienceNum,proto3" json:"AudienceNum,omitempty"` //当前观战人数
CurOpIdx int32 `protobuf:"varint,12,opt,name=CurOpIdx,proto3" json:"CurOpIdx,omitempty"` //当前等待操作的玩家
LastDelCards []*LastDelCard `protobuf:"bytes,13,rep,name=LastDelCards,proto3" json:"LastDelCards,omitempty"` //上两手出的牌
NumOfGames int32 `protobuf:"varint,14,opt,name=NumOfGames,proto3" json:"NumOfGames,omitempty"` //当前局数
TotalOfGames int32 `protobuf:"varint,15,opt,name=TotalOfGames,proto3" json:"TotalOfGames,omitempty"` //总局数
MasterSnid int32 `protobuf:"varint,16,opt,name=MasterSnid,proto3" json:"MasterSnid,omitempty"` //房主
BaseScore int32 `protobuf:"varint,17,opt,name=BaseScore,proto3" json:"BaseScore,omitempty"` //游戏底分
MaxPlayerNum int32 `protobuf:"varint,18,opt,name=MaxPlayerNum,proto3" json:"MaxPlayerNum,omitempty"` //最大游戏人数
WinSnids []int32 `protobuf:"varint,19,rep,packed,name=WinSnids,proto3" json:"WinSnids,omitempty"` //已出完牌的玩家
// 比赛场相关
IsMatch int32 `protobuf:"varint,20,opt,name=IsMatch,proto3" json:"IsMatch,omitempty"` //0普通场 1锦标赛 2冠军赛
Round int32 `protobuf:"varint,22,opt,name=Round,proto3" json:"Round,omitempty"` //比赛当前轮数
CurPlayerNum int32 `protobuf:"varint,24,opt,name=CurPlayerNum,proto3" json:"CurPlayerNum,omitempty"` //当前游戏人数
NextNeed int32 `protobuf:"varint,25,opt,name=NextNeed,proto3" json:"NextNeed,omitempty"` //前多少名可以晋级下一轮
MatchFinals int32 `protobuf:"varint,26,opt,name=MatchFinals,proto3" json:"MatchFinals,omitempty"` //0晋级赛 1半决赛 2是总决赛
BaosamOps int32 `protobuf:"varint,27,opt,name=BaosamOps,proto3" json:"BaosamOps,omitempty"` //默认-1
}
func (x *SCSamLocRoomInfo) Reset() {
*x = SCSamLocRoomInfo{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocRoomInfo) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocRoomInfo) ProtoMessage() {}
func (x *SCSamLocRoomInfo) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocRoomInfo.ProtoReflect.Descriptor instead.
func (*SCSamLocRoomInfo) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{2}
}
func (x *SCSamLocRoomInfo) GetRoomId() int32 {
if x != nil {
return x.RoomId
}
return 0
}
func (x *SCSamLocRoomInfo) GetCreator() int32 {
if x != nil {
return x.Creator
}
return 0
}
func (x *SCSamLocRoomInfo) GetGameId() int32 {
if x != nil {
return x.GameId
}
return 0
}
func (x *SCSamLocRoomInfo) GetRoomMode() int32 {
if x != nil {
return x.RoomMode
}
return 0
}
func (x *SCSamLocRoomInfo) GetParams() []int32 {
if x != nil {
return x.Params
}
return nil
}
func (x *SCSamLocRoomInfo) GetBankerPos() int32 {
if x != nil {
return x.BankerPos
}
return 0
}
func (x *SCSamLocRoomInfo) GetState() int32 {
if x != nil {
return x.State
}
return 0
}
func (x *SCSamLocRoomInfo) GetTimeOut() int32 {
if x != nil {
return x.TimeOut
}
return 0
}
func (x *SCSamLocRoomInfo) GetPlayers() []*SamLocPlayerData {
if x != nil {
return x.Players
}
return nil
}
func (x *SCSamLocRoomInfo) GetAudienceNum() int32 {
if x != nil {
return x.AudienceNum
}
return 0
}
func (x *SCSamLocRoomInfo) GetCurOpIdx() int32 {
if x != nil {
return x.CurOpIdx
}
return 0
}
func (x *SCSamLocRoomInfo) GetLastDelCards() []*LastDelCard {
if x != nil {
return x.LastDelCards
}
return nil
}
func (x *SCSamLocRoomInfo) GetNumOfGames() int32 {
if x != nil {
return x.NumOfGames
}
return 0
}
func (x *SCSamLocRoomInfo) GetTotalOfGames() int32 {
if x != nil {
return x.TotalOfGames
}
return 0
}
func (x *SCSamLocRoomInfo) GetMasterSnid() int32 {
if x != nil {
return x.MasterSnid
}
return 0
}
func (x *SCSamLocRoomInfo) GetBaseScore() int32 {
if x != nil {
return x.BaseScore
}
return 0
}
func (x *SCSamLocRoomInfo) GetMaxPlayerNum() int32 {
if x != nil {
return x.MaxPlayerNum
}
return 0
}
func (x *SCSamLocRoomInfo) GetWinSnids() []int32 {
if x != nil {
return x.WinSnids
}
return nil
}
func (x *SCSamLocRoomInfo) GetIsMatch() int32 {
if x != nil {
return x.IsMatch
}
return 0
}
func (x *SCSamLocRoomInfo) GetRound() int32 {
if x != nil {
return x.Round
}
return 0
}
func (x *SCSamLocRoomInfo) GetCurPlayerNum() int32 {
if x != nil {
return x.CurPlayerNum
}
return 0
}
func (x *SCSamLocRoomInfo) GetNextNeed() int32 {
if x != nil {
return x.NextNeed
}
return 0
}
func (x *SCSamLocRoomInfo) GetMatchFinals() int32 {
if x != nil {
return x.MatchFinals
}
return 0
}
func (x *SCSamLocRoomInfo) GetBaosamOps() int32 {
if x != nil {
return x.BaosamOps
}
return 0
}
//房间状态更新
type SCSamLocRoomState struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
State int32 `protobuf:"varint,1,opt,name=State,proto3" json:"State,omitempty"` //房间当前状态
Params []int64 `protobuf:"varint,2,rep,packed,name=Params,proto3" json:"Params,omitempty"` //参数
}
func (x *SCSamLocRoomState) Reset() {
*x = SCSamLocRoomState{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocRoomState) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocRoomState) ProtoMessage() {}
func (x *SCSamLocRoomState) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocRoomState.ProtoReflect.Descriptor instead.
func (*SCSamLocRoomState) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{3}
}
func (x *SCSamLocRoomState) GetState() int32 {
if x != nil {
return x.State
}
return 0
}
func (x *SCSamLocRoomState) GetParams() []int64 {
if x != nil {
return x.Params
}
return nil
}
//玩家操作
type CSSamLocPlayerOp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
OpCode int32 `protobuf:"varint,1,opt,name=OpCode,proto3" json:"OpCode,omitempty"` //1出牌 2过牌 3开始游戏
OpParam []int64 `protobuf:"varint,2,rep,packed,name=OpParam,proto3" json:"OpParam,omitempty"`
}
func (x *CSSamLocPlayerOp) Reset() {
*x = CSSamLocPlayerOp{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CSSamLocPlayerOp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CSSamLocPlayerOp) ProtoMessage() {}
func (x *CSSamLocPlayerOp) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 CSSamLocPlayerOp.ProtoReflect.Descriptor instead.
func (*CSSamLocPlayerOp) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{4}
}
func (x *CSSamLocPlayerOp) GetOpCode() int32 {
if x != nil {
return x.OpCode
}
return 0
}
func (x *CSSamLocPlayerOp) GetOpParam() []int64 {
if x != nil {
return x.OpParam
}
return nil
}
type SCSamLocPlayerOp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
OpCode int32 `protobuf:"varint,1,opt,name=OpCode,proto3" json:"OpCode,omitempty"` //1出牌 2过牌 3开始游戏
OpParam []int64 `protobuf:"varint,2,rep,packed,name=OpParam,proto3" json:"OpParam,omitempty"` //参数
SnId int32 `protobuf:"varint,3,opt,name=SnId,proto3" json:"SnId,omitempty"` //玩家位置
OpRetCode OpResultCode `protobuf:"varint,4,opt,name=OpRetCode,proto3,enum=samloc.OpResultCode" json:"OpRetCode,omitempty"` //返回错误码,详见:enums.proto
Trusteeship int32 `protobuf:"varint,5,opt,name=Trusteeship,proto3" json:"Trusteeship,omitempty"` // 托管 0 未托管 1 10s 2 5s
}
func (x *SCSamLocPlayerOp) Reset() {
*x = SCSamLocPlayerOp{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocPlayerOp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocPlayerOp) ProtoMessage() {}
func (x *SCSamLocPlayerOp) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocPlayerOp.ProtoReflect.Descriptor instead.
func (*SCSamLocPlayerOp) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{5}
}
func (x *SCSamLocPlayerOp) GetOpCode() int32 {
if x != nil {
return x.OpCode
}
return 0
}
func (x *SCSamLocPlayerOp) GetOpParam() []int64 {
if x != nil {
return x.OpParam
}
return nil
}
func (x *SCSamLocPlayerOp) GetSnId() int32 {
if x != nil {
return x.SnId
}
return 0
}
func (x *SCSamLocPlayerOp) GetOpRetCode() OpResultCode {
if x != nil {
return x.OpRetCode
}
return OpResultCode_OPRC_Sucess
}
func (x *SCSamLocPlayerOp) GetTrusteeship() int32 {
if x != nil {
return x.Trusteeship
}
return 0
}
//玩家进入
type SCSamLocPlayerEnter struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Data *SamLocPlayerData `protobuf:"bytes,1,opt,name=Data,proto3" json:"Data,omitempty"` //玩家数据
}
func (x *SCSamLocPlayerEnter) Reset() {
*x = SCSamLocPlayerEnter{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocPlayerEnter) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocPlayerEnter) ProtoMessage() {}
func (x *SCSamLocPlayerEnter) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocPlayerEnter.ProtoReflect.Descriptor instead.
func (*SCSamLocPlayerEnter) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{6}
}
func (x *SCSamLocPlayerEnter) GetData() *SamLocPlayerData {
if x != nil {
return x.Data
}
return nil
}
//玩家离开
type SCSamLocPlayerLeave struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Pos int32 `protobuf:"varint,1,opt,name=Pos,proto3" json:"Pos,omitempty"` //玩家位置
}
func (x *SCSamLocPlayerLeave) Reset() {
*x = SCSamLocPlayerLeave{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocPlayerLeave) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocPlayerLeave) ProtoMessage() {}
func (x *SCSamLocPlayerLeave) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocPlayerLeave.ProtoReflect.Descriptor instead.
func (*SCSamLocPlayerLeave) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{7}
}
func (x *SCSamLocPlayerLeave) GetPos() int32 {
if x != nil {
return x.Pos
}
return 0
}
//结算结果
type SamLocPlayerGameBilled struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
SnId int32 `protobuf:"varint,1,opt,name=SnId,proto3" json:"SnId,omitempty"` //玩家
Cards []int32 `protobuf:"varint,2,rep,packed,name=Cards,proto3" json:"Cards,omitempty"` // 手牌
WinCoin int64 `protobuf:"varint,3,opt,name=WinCoin,proto3" json:"WinCoin,omitempty"` //输赢金额
GameCoin int64 `protobuf:"varint,4,opt,name=GameCoin,proto3" json:"GameCoin,omitempty"` //结算后身上余额
IsWin int32 `protobuf:"varint,5,opt,name=IsWin,proto3" json:"IsWin,omitempty"` //输赢 赢1 输2 平0
}
func (x *SamLocPlayerGameBilled) Reset() {
*x = SamLocPlayerGameBilled{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SamLocPlayerGameBilled) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SamLocPlayerGameBilled) ProtoMessage() {}
func (x *SamLocPlayerGameBilled) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SamLocPlayerGameBilled.ProtoReflect.Descriptor instead.
func (*SamLocPlayerGameBilled) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{8}
}
func (x *SamLocPlayerGameBilled) GetSnId() int32 {
if x != nil {
return x.SnId
}
return 0
}
func (x *SamLocPlayerGameBilled) GetCards() []int32 {
if x != nil {
return x.Cards
}
return nil
}
func (x *SamLocPlayerGameBilled) GetWinCoin() int64 {
if x != nil {
return x.WinCoin
}
return 0
}
func (x *SamLocPlayerGameBilled) GetGameCoin() int64 {
if x != nil {
return x.GameCoin
}
return 0
}
func (x *SamLocPlayerGameBilled) GetIsWin() int32 {
if x != nil {
return x.IsWin
}
return 0
}
type SCSamLocGameBilled struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Datas []*SamLocPlayerGameBilled `protobuf:"bytes,1,rep,name=Datas,proto3" json:"Datas,omitempty"`
}
func (x *SCSamLocGameBilled) Reset() {
*x = SCSamLocGameBilled{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocGameBilled) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocGameBilled) ProtoMessage() {}
func (x *SCSamLocGameBilled) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocGameBilled.ProtoReflect.Descriptor instead.
func (*SCSamLocGameBilled) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{9}
}
func (x *SCSamLocGameBilled) GetDatas() []*SamLocPlayerGameBilled {
if x != nil {
return x.Datas
}
return nil
}
//小结算结果(炸的分)
type SCSamLocSmallGameBilled struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
WinPos int32 `protobuf:"varint,1,opt,name=WinPos,proto3" json:"WinPos,omitempty"` //赢家
WinPosCoin int64 `protobuf:"varint,2,opt,name=WinPosCoin,proto3" json:"WinPosCoin,omitempty"` //结算后赢家身上余额
LosePos int32 `protobuf:"varint,3,opt,name=LosePos,proto3" json:"LosePos,omitempty"` //输家
LosePosCoin int64 `protobuf:"varint,4,opt,name=LosePosCoin,proto3" json:"LosePosCoin,omitempty"` //结算后输家身上余额
WinCoin int64 `protobuf:"varint,5,opt,name=WinCoin,proto3" json:"WinCoin,omitempty"` //赢金额
LoseCoin int64 `protobuf:"varint,6,opt,name=LoseCoin,proto3" json:"LoseCoin,omitempty"` //输金额
}
func (x *SCSamLocSmallGameBilled) Reset() {
*x = SCSamLocSmallGameBilled{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocSmallGameBilled) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocSmallGameBilled) ProtoMessage() {}
func (x *SCSamLocSmallGameBilled) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocSmallGameBilled.ProtoReflect.Descriptor instead.
func (*SCSamLocSmallGameBilled) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{10}
}
func (x *SCSamLocSmallGameBilled) GetWinPos() int32 {
if x != nil {
return x.WinPos
}
return 0
}
func (x *SCSamLocSmallGameBilled) GetWinPosCoin() int64 {
if x != nil {
return x.WinPosCoin
}
return 0
}
func (x *SCSamLocSmallGameBilled) GetLosePos() int32 {
if x != nil {
return x.LosePos
}
return 0
}
func (x *SCSamLocSmallGameBilled) GetLosePosCoin() int64 {
if x != nil {
return x.LosePosCoin
}
return 0
}
func (x *SCSamLocSmallGameBilled) GetWinCoin() int64 {
if x != nil {
return x.WinCoin
}
return 0
}
func (x *SCSamLocSmallGameBilled) GetLoseCoin() int64 {
if x != nil {
return x.LoseCoin
}
return 0
}
//发牌
type SCSamLocCard struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Cards []int32 `protobuf:"varint,1,rep,packed,name=Cards,proto3" json:"Cards,omitempty"` //手牌
Grade int32 `protobuf:"varint,2,opt,name=Grade,proto3" json:"Grade,omitempty"`
Type int32 `protobuf:"varint,3,opt,name=Type,proto3" json:"Type,omitempty"` //1最小 2随机 3最大
Totalin int32 `protobuf:"varint,4,opt,name=Totalin,proto3" json:"Totalin,omitempty"` //投入
Totalout int32 `protobuf:"varint,5,opt,name=Totalout,proto3" json:"Totalout,omitempty"` //产出
}
func (x *SCSamLocCard) Reset() {
*x = SCSamLocCard{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocCard) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocCard) ProtoMessage() {}
func (x *SCSamLocCard) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocCard.ProtoReflect.Descriptor instead.
func (*SCSamLocCard) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{11}
}
func (x *SCSamLocCard) GetCards() []int32 {
if x != nil {
return x.Cards
}
return nil
}
func (x *SCSamLocCard) GetGrade() int32 {
if x != nil {
return x.Grade
}
return 0
}
func (x *SCSamLocCard) GetType() int32 {
if x != nil {
return x.Type
}
return 0
}
func (x *SCSamLocCard) GetTotalin() int32 {
if x != nil {
return x.Totalin
}
return 0
}
func (x *SCSamLocCard) GetTotalout() int32 {
if x != nil {
return x.Totalout
}
return 0
}
type SCSamLocCurOpPos struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Pos int32 `protobuf:"varint,1,opt,name=Pos,proto3" json:"Pos,omitempty"` //座位位置
IsNew bool `protobuf:"varint,2,opt,name=IsNew,proto3" json:"IsNew,omitempty"` //新一轮开始出牌
Cards []int32 `protobuf:"varint,3,rep,packed,name=Cards,proto3" json:"Cards,omitempty"` //上家出的牌
ExDelay int32 `protobuf:"varint,4,opt,name=ExDelay,proto3" json:"ExDelay,omitempty"` //出牌额外延迟时间s
Warn bool `protobuf:"varint,5,opt,name=Warn,proto3" json:"Warn,omitempty"` //爆单
}
func (x *SCSamLocCurOpPos) Reset() {
*x = SCSamLocCurOpPos{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocCurOpPos) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocCurOpPos) ProtoMessage() {}
func (x *SCSamLocCurOpPos) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocCurOpPos.ProtoReflect.Descriptor instead.
func (*SCSamLocCurOpPos) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{12}
}
func (x *SCSamLocCurOpPos) GetPos() int32 {
if x != nil {
return x.Pos
}
return 0
}
func (x *SCSamLocCurOpPos) GetIsNew() bool {
if x != nil {
return x.IsNew
}
return false
}
func (x *SCSamLocCurOpPos) GetCards() []int32 {
if x != nil {
return x.Cards
}
return nil
}
func (x *SCSamLocCurOpPos) GetExDelay() int32 {
if x != nil {
return x.ExDelay
}
return 0
}
func (x *SCSamLocCurOpPos) GetWarn() bool {
if x != nil {
return x.Warn
}
return false
}
type SCSamLocUpdateMasterSnid struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
MasterSnid int32 `protobuf:"varint,1,opt,name=MasterSnid,proto3" json:"MasterSnid,omitempty"` //房主
}
func (x *SCSamLocUpdateMasterSnid) Reset() {
*x = SCSamLocUpdateMasterSnid{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocUpdateMasterSnid) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocUpdateMasterSnid) ProtoMessage() {}
func (x *SCSamLocUpdateMasterSnid) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocUpdateMasterSnid.ProtoReflect.Descriptor instead.
func (*SCSamLocUpdateMasterSnid) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{13}
}
func (x *SCSamLocUpdateMasterSnid) GetMasterSnid() int32 {
if x != nil {
return x.MasterSnid
}
return 0
}
//PACKET_SCSamLocUpdateAudienceNum
type SCSamLocUpdateAudienceNum struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AudienceNum int32 `protobuf:"varint,1,opt,name=AudienceNum,proto3" json:"AudienceNum,omitempty"` //当前观战人数
}
func (x *SCSamLocUpdateAudienceNum) Reset() {
*x = SCSamLocUpdateAudienceNum{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocUpdateAudienceNum) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocUpdateAudienceNum) ProtoMessage() {}
func (x *SCSamLocUpdateAudienceNum) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocUpdateAudienceNum.ProtoReflect.Descriptor instead.
func (*SCSamLocUpdateAudienceNum) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{14}
}
func (x *SCSamLocUpdateAudienceNum) GetAudienceNum() int32 {
if x != nil {
return x.AudienceNum
}
return 0
}
type SCSamLocAIData struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
BombNum int32 `protobuf:"varint,1,opt,name=Bomb_num,json=BombNum,proto3" json:"Bomb_num,omitempty"` //炸弹数量
CardPlayActionSeq string `protobuf:"bytes,2,opt,name=Card_play_action_seq,json=CardPlayActionSeq,proto3" json:"Card_play_action_seq,omitempty"` //出牌历史记录
LastMove_0 string `protobuf:"bytes,3,opt,name=Last_move_0,json=LastMove0,proto3" json:"Last_move_0,omitempty"` //最后出牌
LastMove_1 string `protobuf:"bytes,4,opt,name=Last_move_1,json=LastMove1,proto3" json:"Last_move_1,omitempty"` //最后出牌
LastMove_2 string `protobuf:"bytes,5,opt,name=Last_move_2,json=LastMove2,proto3" json:"Last_move_2,omitempty"` //最后出牌
LastMove_3 string `protobuf:"bytes,6,opt,name=Last_move_3,json=LastMove3,proto3" json:"Last_move_3,omitempty"` //最后出牌
NumCardsLeft_0 int32 `protobuf:"varint,7,opt,name=Num_cards_left_0,json=NumCardsLeft0,proto3" json:"Num_cards_left_0,omitempty"` //剩余牌数
NumCardsLeft_1 int32 `protobuf:"varint,8,opt,name=Num_cards_left_1,json=NumCardsLeft1,proto3" json:"Num_cards_left_1,omitempty"` //剩余牌数
NumCardsLeft_2 int32 `protobuf:"varint,9,opt,name=Num_cards_left_2,json=NumCardsLeft2,proto3" json:"Num_cards_left_2,omitempty"` //剩余牌数
NumCardsLeft_3 int32 `protobuf:"varint,10,opt,name=Num_cards_left_3,json=NumCardsLeft3,proto3" json:"Num_cards_left_3,omitempty"` //剩余牌数
OtherHandCards string `protobuf:"bytes,11,opt,name=Other_hand_cards,json=OtherHandCards,proto3" json:"Other_hand_cards,omitempty"` //其它人手牌
PlayedCards_0 string `protobuf:"bytes,12,opt,name=Played_cards_0,json=PlayedCards0,proto3" json:"Played_cards_0,omitempty"` //出过的牌
PlayedCards_1 string `protobuf:"bytes,13,opt,name=Played_cards_1,json=PlayedCards1,proto3" json:"Played_cards_1,omitempty"` //出过的牌
PlayedCards_2 string `protobuf:"bytes,14,opt,name=Played_cards_2,json=PlayedCards2,proto3" json:"Played_cards_2,omitempty"` //出过的牌
PlayedCards_3 string `protobuf:"bytes,15,opt,name=Played_cards_3,json=PlayedCards3,proto3" json:"Played_cards_3,omitempty"` //出过的牌
PlayerHandCards string `protobuf:"bytes,16,opt,name=Player_hand_cards,json=PlayerHandCards,proto3" json:"Player_hand_cards,omitempty"` //手牌
PlayerPosition int32 `protobuf:"varint,17,opt,name=Player_position,json=PlayerPosition,proto3" json:"Player_position,omitempty"` //当前操作数置
}
func (x *SCSamLocAIData) Reset() {
*x = SCSamLocAIData{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocAIData) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocAIData) ProtoMessage() {}
func (x *SCSamLocAIData) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocAIData.ProtoReflect.Descriptor instead.
func (*SCSamLocAIData) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{15}
}
func (x *SCSamLocAIData) GetBombNum() int32 {
if x != nil {
return x.BombNum
}
return 0
}
func (x *SCSamLocAIData) GetCardPlayActionSeq() string {
if x != nil {
return x.CardPlayActionSeq
}
return ""
}
func (x *SCSamLocAIData) GetLastMove_0() string {
if x != nil {
return x.LastMove_0
}
return ""
}
func (x *SCSamLocAIData) GetLastMove_1() string {
if x != nil {
return x.LastMove_1
}
return ""
}
func (x *SCSamLocAIData) GetLastMove_2() string {
if x != nil {
return x.LastMove_2
}
return ""
}
func (x *SCSamLocAIData) GetLastMove_3() string {
if x != nil {
return x.LastMove_3
}
return ""
}
func (x *SCSamLocAIData) GetNumCardsLeft_0() int32 {
if x != nil {
return x.NumCardsLeft_0
}
return 0
}
func (x *SCSamLocAIData) GetNumCardsLeft_1() int32 {
if x != nil {
return x.NumCardsLeft_1
}
return 0
}
func (x *SCSamLocAIData) GetNumCardsLeft_2() int32 {
if x != nil {
return x.NumCardsLeft_2
}
return 0
}
func (x *SCSamLocAIData) GetNumCardsLeft_3() int32 {
if x != nil {
return x.NumCardsLeft_3
}
return 0
}
func (x *SCSamLocAIData) GetOtherHandCards() string {
if x != nil {
return x.OtherHandCards
}
return ""
}
func (x *SCSamLocAIData) GetPlayedCards_0() string {
if x != nil {
return x.PlayedCards_0
}
return ""
}
func (x *SCSamLocAIData) GetPlayedCards_1() string {
if x != nil {
return x.PlayedCards_1
}
return ""
}
func (x *SCSamLocAIData) GetPlayedCards_2() string {
if x != nil {
return x.PlayedCards_2
}
return ""
}
func (x *SCSamLocAIData) GetPlayedCards_3() string {
if x != nil {
return x.PlayedCards_3
}
return ""
}
func (x *SCSamLocAIData) GetPlayerHandCards() string {
if x != nil {
return x.PlayerHandCards
}
return ""
}
func (x *SCSamLocAIData) GetPlayerPosition() int32 {
if x != nil {
return x.PlayerPosition
}
return 0
}
//PACKET_SCSamLocFirstOpPos
type SCSamLocFirstOpPos struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Pos int32 `protobuf:"varint,1,opt,name=Pos,proto3" json:"Pos,omitempty"` //座位位置
Baosam bool `protobuf:"varint,2,opt,name=Baosam,proto3" json:"Baosam,omitempty"` //true baosam
}
func (x *SCSamLocFirstOpPos) Reset() {
*x = SCSamLocFirstOpPos{}
if protoimpl.UnsafeEnabled {
mi := &file_protocol_samloc_samloc_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCSamLocFirstOpPos) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCSamLocFirstOpPos) ProtoMessage() {}
func (x *SCSamLocFirstOpPos) ProtoReflect() protoreflect.Message {
mi := &file_protocol_samloc_samloc_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 SCSamLocFirstOpPos.ProtoReflect.Descriptor instead.
func (*SCSamLocFirstOpPos) Descriptor() ([]byte, []int) {
return file_protocol_samloc_samloc_proto_rawDescGZIP(), []int{16}
}
func (x *SCSamLocFirstOpPos) GetPos() int32 {
if x != nil {
return x.Pos
}
return 0
}
func (x *SCSamLocFirstOpPos) GetBaosam() bool {
if x != nil {
return x.Baosam
}
return false
}
var File_protocol_samloc_samloc_proto protoreflect.FileDescriptor
var file_protocol_samloc_samloc_proto_rawDesc = []byte{
0x0a, 0x1c, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x73, 0x61, 0x6d, 0x6c, 0x6f,
0x63, 0x2f, 0x73, 0x61, 0x6d, 0x6c, 0x6f, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x06,
0x73, 0x61, 0x6d, 0x6c, 0x6f, 0x63, 0x22, 0xdf, 0x05, 0x0a, 0x10, 0x53, 0x61, 0x6d, 0x4c, 0x6f,
0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x4e,
0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12,
0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53,
0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x48, 0x65, 0x61, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
0x05, 0x52, 0x04, 0x48, 0x65, 0x61, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x53, 0x65, 0x78, 0x18, 0x04,
0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x53, 0x65, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x50, 0x61, 0x72,
0x61, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d,
0x73, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52,
0x04, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x07, 0x20, 0x01,
0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x6c, 0x61, 0x67, 0x18,
0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x4c,
0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09,
0x4c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x4c, 0x61, 0x74,
0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4c, 0x61, 0x74,
0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x69, 0x74, 0x79, 0x18, 0x0b, 0x20,
0x01, 0x28, 0x09, 0x52, 0x04, 0x43, 0x69, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x4c, 0x61, 0x73,
0x74, 0x4f, 0x70, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4c, 0x61, 0x73, 0x74, 0x4f,
0x70, 0x12, 0x10, 0x0a, 0x03, 0x56, 0x49, 0x50, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03,
0x56, 0x49, 0x50, 0x12, 0x20, 0x0a, 0x0b, 0x48, 0x65, 0x61, 0x64, 0x4f, 0x75, 0x74, 0x4c, 0x69,
0x6e, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x48, 0x65, 0x61, 0x64, 0x4f, 0x75,
0x74, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x4e, 0x69, 0x63, 0x65, 0x49, 0x64, 0x18,
0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4e, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a,
0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x18, 0x10, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61,
0x72, 0x64, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x43, 0x75, 0x72, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x54,
0x6f, 0x74, 0x61, 0x6c, 0x42, 0x65, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x43,
0x75, 0x72, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x65, 0x74, 0x12,
0x1a, 0x0a, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28,
0x03, 0x52, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x52,
0x6f, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6c,
0x65, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x14, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x23, 0x2e, 0x73, 0x61, 0x6d, 0x6c, 0x6f, 0x63, 0x2e, 0x53, 0x61, 0x6d, 0x4c,
0x6f, 0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x49, 0x74, 0x65,
0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x20,
0x0a, 0x0b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x61, 0x6e, 0x6b, 0x49, 0x64, 0x18, 0x15, 0x20,
0x01, 0x28, 0x05, 0x52, 0x0b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x61, 0x6e, 0x6b, 0x49, 0x64,
0x12, 0x0e, 0x0a, 0x02, 0x4c, 0x76, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x4c, 0x76,
0x12, 0x1a, 0x0a, 0x08, 0x43, 0x6f, 0x70, 0x79, 0x53, 0x6e, 0x69, 0x64, 0x18, 0x17, 0x20, 0x01,
0x28, 0x05, 0x52, 0x08, 0x43, 0x6f, 0x70, 0x79, 0x53, 0x6e, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a,
0x43, 0x6f, 0x70, 0x79, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x05,
0x52, 0x0a, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b,
0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x65, 0x73, 0x68, 0x69, 0x70, 0x18, 0x19, 0x20, 0x01, 0x28,
0x05, 0x52, 0x0b, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x65, 0x73, 0x68, 0x69, 0x70, 0x1a, 0x38,
0x0a, 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14,
0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x23, 0x0a, 0x0b, 0x4c, 0x61, 0x73, 0x74,
0x44, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73,
0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x22, 0xfb, 0x05,
0x0a, 0x10, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e,
0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01,
0x28, 0x05, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x43, 0x72,
0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x43, 0x72, 0x65,
0x61, 0x74, 0x6f, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x03,
0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08,
0x52, 0x6f, 0x6f, 0x6d, 0x4d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08,
0x52, 0x6f, 0x6f, 0x6d, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61,
0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73,
0x12, 0x1c, 0x0a, 0x09, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x18, 0x06, 0x20,
0x01, 0x28, 0x05, 0x52, 0x09, 0x42, 0x61, 0x6e, 0x6b, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x12, 0x14,
0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x53,
0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x18,
0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x12, 0x32,
0x0a, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x18, 0x2e, 0x73, 0x61, 0x6d, 0x6c, 0x6f, 0x63, 0x2e, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x50,
0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65,
0x72, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75,
0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63,
0x65, 0x4e, 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x43, 0x75, 0x72, 0x4f, 0x70, 0x49, 0x64, 0x78,
0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x43, 0x75, 0x72, 0x4f, 0x70, 0x49, 0x64, 0x78,
0x12, 0x37, 0x0a, 0x0c, 0x4c, 0x61, 0x73, 0x74, 0x44, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x73,
0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x73, 0x61, 0x6d, 0x6c, 0x6f, 0x63, 0x2e,
0x4c, 0x61, 0x73, 0x74, 0x44, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x52, 0x0c, 0x4c, 0x61, 0x73,
0x74, 0x44, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x4e, 0x75, 0x6d,
0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4e,
0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x54, 0x6f, 0x74,
0x61, 0x6c, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52,
0x0c, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x4f, 0x66, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1e, 0x0a,
0x0a, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28,
0x05, 0x52, 0x0a, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x12, 0x1c, 0x0a,
0x09, 0x42, 0x61, 0x73, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05,
0x52, 0x09, 0x42, 0x61, 0x73, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x4d,
0x61, 0x78, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x18, 0x12, 0x20, 0x01, 0x28,
0x05, 0x52, 0x0c, 0x4d, 0x61, 0x78, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x12,
0x1a, 0x0a, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x6e, 0x69, 0x64, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28,
0x05, 0x52, 0x08, 0x57, 0x69, 0x6e, 0x53, 0x6e, 0x69, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x49,
0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x49, 0x73,
0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x16,
0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x43,
0x75, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x18, 0x18, 0x20, 0x01, 0x28,
0x05, 0x52, 0x0c, 0x43, 0x75, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x12,
0x1a, 0x0a, 0x08, 0x4e, 0x65, 0x78, 0x74, 0x4e, 0x65, 0x65, 0x64, 0x18, 0x19, 0x20, 0x01, 0x28,
0x05, 0x52, 0x08, 0x4e, 0x65, 0x78, 0x74, 0x4e, 0x65, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x4d,
0x61, 0x74, 0x63, 0x68, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x05,
0x52, 0x0b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x12, 0x1c, 0x0a,
0x09, 0x42, 0x61, 0x6f, 0x73, 0x61, 0x6d, 0x4f, 0x70, 0x73, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x05,
0x52, 0x09, 0x42, 0x61, 0x6f, 0x73, 0x61, 0x6d, 0x4f, 0x70, 0x73, 0x22, 0x41, 0x0a, 0x11, 0x53,
0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x52, 0x6f, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65,
0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73,
0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x44,
0x0a, 0x10, 0x43, 0x53, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72,
0x4f, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x05, 0x52, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x4f, 0x70,
0x50, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, 0x4f, 0x70, 0x50,
0x61, 0x72, 0x61, 0x6d, 0x22, 0xae, 0x01, 0x0a, 0x10, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f,
0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x4f, 0x70, 0x43,
0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64,
0x65, 0x12, 0x18, 0x0a, 0x07, 0x4f, 0x70, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x03,
0x28, 0x03, 0x52, 0x07, 0x4f, 0x70, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x53,
0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12,
0x32, 0x0a, 0x09, 0x4f, 0x70, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x14, 0x2e, 0x73, 0x61, 0x6d, 0x6c, 0x6f, 0x63, 0x2e, 0x4f, 0x70, 0x52, 0x65,
0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x4f, 0x70, 0x52, 0x65, 0x74, 0x43,
0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x65, 0x73, 0x68,
0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65,
0x65, 0x73, 0x68, 0x69, 0x70, 0x22, 0x43, 0x0a, 0x13, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f,
0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x04,
0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x73, 0x61, 0x6d,
0x6c, 0x6f, 0x63, 0x2e, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72,
0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x27, 0x0a, 0x13, 0x53, 0x43,
0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76,
0x65, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03,
0x50, 0x6f, 0x73, 0x22, 0x8e, 0x01, 0x0a, 0x16, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x50, 0x6c,
0x61, 0x79, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x12,
0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e,
0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x57, 0x69, 0x6e, 0x43,
0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x57, 0x69, 0x6e, 0x43, 0x6f,
0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04,
0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x14,
0x0a, 0x05, 0x49, 0x73, 0x57, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x49,
0x73, 0x57, 0x69, 0x6e, 0x22, 0x4a, 0x0a, 0x12, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63,
0x47, 0x61, 0x6d, 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x05, 0x44, 0x61,
0x74, 0x61, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x73, 0x61, 0x6d, 0x6c,
0x6f, 0x63, 0x2e, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47,
0x61, 0x6d, 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x52, 0x05, 0x44, 0x61, 0x74, 0x61, 0x73,
0x22, 0xc3, 0x01, 0x0a, 0x17, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x53, 0x6d, 0x61,
0x6c, 0x6c, 0x47, 0x61, 0x6d, 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06,
0x57, 0x69, 0x6e, 0x50, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x57, 0x69,
0x6e, 0x50, 0x6f, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x57, 0x69, 0x6e, 0x50, 0x6f, 0x73, 0x43, 0x6f,
0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x57, 0x69, 0x6e, 0x50, 0x6f, 0x73,
0x43, 0x6f, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x4c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x18,
0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x12, 0x20,
0x0a, 0x0b, 0x4c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20,
0x01, 0x28, 0x03, 0x52, 0x0b, 0x4c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x73, 0x43, 0x6f, 0x69, 0x6e,
0x12, 0x18, 0x0a, 0x07, 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28,
0x03, 0x52, 0x07, 0x57, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x4c, 0x6f,
0x73, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x4c, 0x6f,
0x73, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x84, 0x01, 0x0a, 0x0c, 0x53, 0x43, 0x53, 0x61, 0x6d,
0x4c, 0x6f, 0x63, 0x43, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73,
0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x14, 0x0a,
0x05, 0x47, 0x72, 0x61, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x47, 0x72,
0x61, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
0x05, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x54, 0x6f, 0x74, 0x61, 0x6c,
0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x69,
0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x6f, 0x75, 0x74, 0x18, 0x05, 0x20,
0x01, 0x28, 0x05, 0x52, 0x08, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x6f, 0x75, 0x74, 0x22, 0x7e, 0x0a,
0x10, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x43, 0x75, 0x72, 0x4f, 0x70, 0x50, 0x6f,
0x73, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03,
0x50, 0x6f, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x49, 0x73, 0x4e, 0x65, 0x77, 0x18, 0x02, 0x20, 0x01,
0x28, 0x08, 0x52, 0x05, 0x49, 0x73, 0x4e, 0x65, 0x77, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72,
0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12,
0x18, 0x0a, 0x07, 0x45, 0x78, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05,
0x52, 0x07, 0x45, 0x78, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x57, 0x61, 0x72,
0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x57, 0x61, 0x72, 0x6e, 0x22, 0x3a, 0x0a,
0x18, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d,
0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x4d, 0x61, 0x73,
0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4d,
0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x22, 0x3d, 0x0a, 0x19, 0x53, 0x43, 0x53,
0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x75, 0x64, 0x69, 0x65,
0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e,
0x63, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x41, 0x75, 0x64,
0x69, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x22, 0x97, 0x05, 0x0a, 0x0e, 0x53, 0x43, 0x53,
0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x41, 0x49, 0x44, 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x42,
0x6f, 0x6d, 0x62, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x42,
0x6f, 0x6d, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x2f, 0x0a, 0x14, 0x43, 0x61, 0x72, 0x64, 0x5f, 0x70,
0x6c, 0x61, 0x79, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x71, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x43, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x41, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0b, 0x4c, 0x61, 0x73, 0x74, 0x5f,
0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x30, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x4c, 0x61,
0x73, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x30, 0x12, 0x1e, 0x0a, 0x0b, 0x4c, 0x61, 0x73, 0x74, 0x5f,
0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x31, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x4c, 0x61,
0x73, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x31, 0x12, 0x1e, 0x0a, 0x0b, 0x4c, 0x61, 0x73, 0x74, 0x5f,
0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x32, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x4c, 0x61,
0x73, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x32, 0x12, 0x1e, 0x0a, 0x0b, 0x4c, 0x61, 0x73, 0x74, 0x5f,
0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x33, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x4c, 0x61,
0x73, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x33, 0x12, 0x27, 0x0a, 0x10, 0x4e, 0x75, 0x6d, 0x5f, 0x63,
0x61, 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x30, 0x18, 0x07, 0x20, 0x01, 0x28,
0x05, 0x52, 0x0d, 0x4e, 0x75, 0x6d, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x30,
0x12, 0x27, 0x0a, 0x10, 0x4e, 0x75, 0x6d, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65,
0x66, 0x74, 0x5f, 0x31, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x4e, 0x75, 0x6d, 0x43,
0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x31, 0x12, 0x27, 0x0a, 0x10, 0x4e, 0x75, 0x6d,
0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x32, 0x18, 0x09, 0x20,
0x01, 0x28, 0x05, 0x52, 0x0d, 0x4e, 0x75, 0x6d, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66,
0x74, 0x32, 0x12, 0x27, 0x0a, 0x10, 0x4e, 0x75, 0x6d, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f,
0x6c, 0x65, 0x66, 0x74, 0x5f, 0x33, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x4e, 0x75,
0x6d, 0x43, 0x61, 0x72, 0x64, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x33, 0x12, 0x28, 0x0a, 0x10, 0x4f,
0x74, 0x68, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18,
0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x48, 0x61, 0x6e, 0x64,
0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f,
0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x30, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x50,
0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x30, 0x12, 0x24, 0x0a, 0x0e, 0x50,
0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x31, 0x18, 0x0d, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73,
0x31, 0x12, 0x24, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64,
0x73, 0x5f, 0x32, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65,
0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x32, 0x12, 0x24, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65,
0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x33, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x33, 0x12, 0x2a, 0x0a,
0x11, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x61, 0x72,
0x64, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72,
0x48, 0x61, 0x6e, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x50, 0x6c, 0x61,
0x79, 0x65, 0x72, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01,
0x28, 0x05, 0x52, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69,
0x6f, 0x6e, 0x22, 0x3e, 0x0a, 0x12, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x46, 0x69,
0x72, 0x73, 0x74, 0x4f, 0x70, 0x50, 0x6f, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18,
0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x42, 0x61,
0x6f, 0x73, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x42, 0x61, 0x6f, 0x73,
0x61, 0x6d, 0x2a, 0x46, 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, 0x15, 0x0a, 0x11, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x4e, 0x6f, 0x74, 0x4d,
0x41, 0x78, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x10, 0x02, 0x2a, 0xe4, 0x03, 0x0a, 0x0e, 0x53,
0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x15, 0x0a,
0x11, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x5a, 0x45,
0x52, 0x4f, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53,
0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x10,
0xae, 0x2b, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x53,
0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x52, 0x6f, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xaf,
0x2b, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x53, 0x61,
0x6d, 0x4c, 0x6f, 0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x70, 0x10, 0xb0, 0x2b, 0x12,
0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c,
0x6f, 0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x70, 0x10, 0xb1, 0x2b, 0x12, 0x1f, 0x0a,
0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63,
0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0xb2, 0x2b, 0x12, 0x1f,
0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f,
0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x10, 0xb3, 0x2b, 0x12,
0x18, 0x0a, 0x13, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c,
0x6f, 0x63, 0x43, 0x61, 0x72, 0x64, 0x10, 0xb4, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43,
0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x47, 0x61, 0x6d, 0x65,
0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0xb5, 0x2b, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x41, 0x43,
0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x43, 0x75, 0x72, 0x4f,
0x70, 0x50, 0x6f, 0x73, 0x10, 0xb6, 0x2b, 0x12, 0x23, 0x0a, 0x1e, 0x50, 0x41, 0x43, 0x4b, 0x45,
0x54, 0x5f, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x47,
0x61, 0x6d, 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0xb7, 0x2b, 0x12, 0x24, 0x0a, 0x1f,
0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x6e, 0x69, 0x64, 0x10,
0xb8, 0x2b, 0x12, 0x25, 0x0a, 0x20, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x53,
0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x75, 0x64, 0x69, 0x65,
0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x10, 0xb9, 0x2b, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x41, 0x43,
0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x53, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x41, 0x49, 0x10, 0xba,
0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x53, 0x61,
0x6d, 0x4c, 0x6f, 0x63, 0x46, 0x69, 0x72, 0x73, 0x74, 0x4f, 0x70, 0x50, 0x6f, 0x73, 0x10, 0xbb,
0x2b, 0x42, 0x26, 0x5a, 0x24, 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, 0x73, 0x61, 0x6d, 0x6c, 0x6f, 0x63, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x33,
}
var (
file_protocol_samloc_samloc_proto_rawDescOnce sync.Once
file_protocol_samloc_samloc_proto_rawDescData = file_protocol_samloc_samloc_proto_rawDesc
)
func file_protocol_samloc_samloc_proto_rawDescGZIP() []byte {
file_protocol_samloc_samloc_proto_rawDescOnce.Do(func() {
file_protocol_samloc_samloc_proto_rawDescData = protoimpl.X.CompressGZIP(file_protocol_samloc_samloc_proto_rawDescData)
})
return file_protocol_samloc_samloc_proto_rawDescData
}
var file_protocol_samloc_samloc_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_protocol_samloc_samloc_proto_msgTypes = make([]protoimpl.MessageInfo, 18)
var file_protocol_samloc_samloc_proto_goTypes = []interface{}{
(OpResultCode)(0), // 0: samloc.OpResultCode
(SamLocPacketID)(0), // 1: samloc.SamLocPacketID
(*SamLocPlayerData)(nil), // 2: samloc.SamLocPlayerData
(*LastDelCard)(nil), // 3: samloc.LastDelCard
(*SCSamLocRoomInfo)(nil), // 4: samloc.SCSamLocRoomInfo
(*SCSamLocRoomState)(nil), // 5: samloc.SCSamLocRoomState
(*CSSamLocPlayerOp)(nil), // 6: samloc.CSSamLocPlayerOp
(*SCSamLocPlayerOp)(nil), // 7: samloc.SCSamLocPlayerOp
(*SCSamLocPlayerEnter)(nil), // 8: samloc.SCSamLocPlayerEnter
(*SCSamLocPlayerLeave)(nil), // 9: samloc.SCSamLocPlayerLeave
(*SamLocPlayerGameBilled)(nil), // 10: samloc.SamLocPlayerGameBilled
(*SCSamLocGameBilled)(nil), // 11: samloc.SCSamLocGameBilled
(*SCSamLocSmallGameBilled)(nil), // 12: samloc.SCSamLocSmallGameBilled
(*SCSamLocCard)(nil), // 13: samloc.SCSamLocCard
(*SCSamLocCurOpPos)(nil), // 14: samloc.SCSamLocCurOpPos
(*SCSamLocUpdateMasterSnid)(nil), // 15: samloc.SCSamLocUpdateMasterSnid
(*SCSamLocUpdateAudienceNum)(nil), // 16: samloc.SCSamLocUpdateAudienceNum
(*SCSamLocAIData)(nil), // 17: samloc.SCSamLocAIData
(*SCSamLocFirstOpPos)(nil), // 18: samloc.SCSamLocFirstOpPos
nil, // 19: samloc.SamLocPlayerData.ItemsEntry
}
var file_protocol_samloc_samloc_proto_depIdxs = []int32{
19, // 0: samloc.SamLocPlayerData.Items:type_name -> samloc.SamLocPlayerData.ItemsEntry
2, // 1: samloc.SCSamLocRoomInfo.Players:type_name -> samloc.SamLocPlayerData
3, // 2: samloc.SCSamLocRoomInfo.LastDelCards:type_name -> samloc.LastDelCard
0, // 3: samloc.SCSamLocPlayerOp.OpRetCode:type_name -> samloc.OpResultCode
2, // 4: samloc.SCSamLocPlayerEnter.Data:type_name -> samloc.SamLocPlayerData
10, // 5: samloc.SCSamLocGameBilled.Datas:type_name -> samloc.SamLocPlayerGameBilled
6, // [6:6] is the sub-list for method output_type
6, // [6:6] is the sub-list for method input_type
6, // [6:6] is the sub-list for extension type_name
6, // [6:6] is the sub-list for extension extendee
0, // [0:6] is the sub-list for field type_name
}
func init() { file_protocol_samloc_samloc_proto_init() }
func file_protocol_samloc_samloc_proto_init() {
if File_protocol_samloc_samloc_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_protocol_samloc_samloc_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SamLocPlayerData); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LastDelCard); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocRoomInfo); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocRoomState); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CSSamLocPlayerOp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocPlayerOp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocPlayerEnter); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocPlayerLeave); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SamLocPlayerGameBilled); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocGameBilled); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocSmallGameBilled); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocCard); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocCurOpPos); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocUpdateMasterSnid); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocUpdateAudienceNum); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocAIData); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_protocol_samloc_samloc_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCSamLocFirstOpPos); 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_samloc_samloc_proto_rawDesc,
NumEnums: 2,
NumMessages: 18,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_protocol_samloc_samloc_proto_goTypes,
DependencyIndexes: file_protocol_samloc_samloc_proto_depIdxs,
EnumInfos: file_protocol_samloc_samloc_proto_enumTypes,
MessageInfos: file_protocol_samloc_samloc_proto_msgTypes,
}.Build()
File_protocol_samloc_samloc_proto = out.File
file_protocol_samloc_samloc_proto_rawDesc = nil
file_protocol_samloc_samloc_proto_goTypes = nil
file_protocol_samloc_samloc_proto_depIdxs = nil
}