game_sync/protocol/crash/crash.pb.go

1792 lines
61 KiB
Go

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.27.1-devel
// protoc v3.19.4
// source: crash.proto
package crash
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_CoinMustReachTheValue OpResultCode = 2 //提示低于多少不能下注
OpResultCode_OPRC_CoinIsNotEnough OpResultCode = 3 //金币不足
OpResultCode_OPRC_OnlyBet OpResultCode = 4 //已下注,不可重复下注
OpResultCode_OPRC_OnlyMultiple OpResultCode = 5 //跳伞失败,跳伞倍率错误
)
// Enum value maps for OpResultCode.
var (
OpResultCode_name = map[int32]string{
0: "OPRC_Sucess",
1: "OPRC_Error",
2: "OPRC_CoinMustReachTheValue",
3: "OPRC_CoinIsNotEnough",
4: "OPRC_OnlyBet",
5: "OPRC_OnlyMultiple",
}
OpResultCode_value = map[string]int32{
"OPRC_Sucess": 0,
"OPRC_Error": 1,
"OPRC_CoinMustReachTheValue": 2,
"OPRC_CoinIsNotEnough": 3,
"OPRC_OnlyBet": 4,
"OPRC_OnlyMultiple": 5,
}
)
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_crash_proto_enumTypes[0].Descriptor()
}
func (OpResultCode) Type() protoreflect.EnumType {
return &file_crash_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_crash_proto_rawDescGZIP(), []int{0}
}
//碰撞游戏
type CrashPacketID int32
const (
CrashPacketID_PACKET_CRASH_ZERO CrashPacketID = 0 // 弃用消息号
CrashPacketID_PACKET_SC_CRASH_ROOMINFO CrashPacketID = 5140 //房间信息
CrashPacketID_PACKET_CS_CRASH_PLAYEROP CrashPacketID = 5141 //玩家操作(客户-》服务)
CrashPacketID_PACKET_SC_CRASH_PLAYEROP CrashPacketID = 5142 //玩家操作(服务-》客户)
CrashPacketID_PACKET_SC_CRASH_ROOMSTATE CrashPacketID = 5143 //房间状态
CrashPacketID_PACKET_SC_CRASH_GAMEBILLED CrashPacketID = 5144 //游戏结算
CrashPacketID_PACKET_SC_CRASH_SEATS CrashPacketID = 5145 //座位信息
CrashPacketID_PACKET_SC_CRASH_PLAYERLIST CrashPacketID = 5146 //玩家列表
CrashPacketID_PACKET_SC_CRASH_SENDBET CrashPacketID = 5147 //批量押注筹码信息
CrashPacketID_PACKET_SC_CRASH_SENDTime CrashPacketID = 5148 //时间频率更新
CrashPacketID_PACKET_SC_CRASH_Parachute CrashPacketID = 5149 //跳伞推送
)
// Enum value maps for CrashPacketID.
var (
CrashPacketID_name = map[int32]string{
0: "PACKET_CRASH_ZERO",
5140: "PACKET_SC_CRASH_ROOMINFO",
5141: "PACKET_CS_CRASH_PLAYEROP",
5142: "PACKET_SC_CRASH_PLAYEROP",
5143: "PACKET_SC_CRASH_ROOMSTATE",
5144: "PACKET_SC_CRASH_GAMEBILLED",
5145: "PACKET_SC_CRASH_SEATS",
5146: "PACKET_SC_CRASH_PLAYERLIST",
5147: "PACKET_SC_CRASH_SENDBET",
5148: "PACKET_SC_CRASH_SENDTime",
5149: "PACKET_SC_CRASH_Parachute",
}
CrashPacketID_value = map[string]int32{
"PACKET_CRASH_ZERO": 0,
"PACKET_SC_CRASH_ROOMINFO": 5140,
"PACKET_CS_CRASH_PLAYEROP": 5141,
"PACKET_SC_CRASH_PLAYEROP": 5142,
"PACKET_SC_CRASH_ROOMSTATE": 5143,
"PACKET_SC_CRASH_GAMEBILLED": 5144,
"PACKET_SC_CRASH_SEATS": 5145,
"PACKET_SC_CRASH_PLAYERLIST": 5146,
"PACKET_SC_CRASH_SENDBET": 5147,
"PACKET_SC_CRASH_SENDTime": 5148,
"PACKET_SC_CRASH_Parachute": 5149,
}
)
func (x CrashPacketID) Enum() *CrashPacketID {
p := new(CrashPacketID)
*p = x
return p
}
func (x CrashPacketID) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (CrashPacketID) Descriptor() protoreflect.EnumDescriptor {
return file_crash_proto_enumTypes[1].Descriptor()
}
func (CrashPacketID) Type() protoreflect.EnumType {
return &file_crash_proto_enumTypes[1]
}
func (x CrashPacketID) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use CrashPacketID.Descriptor instead.
func (CrashPacketID) EnumDescriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{1}
}
//时间 PACKET_SC_CRASH_SENDTime
type CrashTime struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Millisecond int64 `protobuf:"varint,1,opt,name=Millisecond,proto3" json:"Millisecond,omitempty"` //毫秒
Multiple int32 `protobuf:"varint,2,opt,name=Multiple,proto3" json:"Multiple,omitempty"` //下注倍数
}
func (x *CrashTime) Reset() {
*x = CrashTime{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CrashTime) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CrashTime) ProtoMessage() {}
func (x *CrashTime) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 CrashTime.ProtoReflect.Descriptor instead.
func (*CrashTime) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{0}
}
func (x *CrashTime) GetMillisecond() int64 {
if x != nil {
return x.Millisecond
}
return 0
}
func (x *CrashTime) GetMultiple() int32 {
if x != nil {
return x.Multiple
}
return 0
}
type CrashPlayerData 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"` //性别
Coin int64 `protobuf:"varint,5,opt,name=Coin,proto3" json:"Coin,omitempty"` //金币
Pos int32 `protobuf:"varint,6,opt,name=Pos,proto3" json:"Pos,omitempty"` //座位位置
Flag int32 `protobuf:"varint,7,opt,name=Flag,proto3" json:"Flag,omitempty"` //二进制标记
Params []string `protobuf:"bytes,8,rep,name=Params,proto3" json:"Params,omitempty"` //其他数据 如:ip 等
City string `protobuf:"bytes,9,opt,name=City,proto3" json:"City,omitempty"` //城市
Lately20Win int64 `protobuf:"varint,10,opt,name=Lately20Win,proto3" json:"Lately20Win,omitempty"` //最近20局输赢 (赢的次数)
Lately20Bet int64 `protobuf:"varint,11,opt,name=Lately20Bet,proto3" json:"Lately20Bet,omitempty"` //最近20局总下注 (可能是负值)
HeadOutLine int32 `protobuf:"varint,12,opt,name=HeadOutLine,proto3" json:"HeadOutLine,omitempty"` //头像框
VIP int32 `protobuf:"varint,13,opt,name=VIP,proto3" json:"VIP,omitempty"`
NiceId int32 `protobuf:"varint,14,opt,name=NiceId,proto3" json:"NiceId,omitempty"`
}
func (x *CrashPlayerData) Reset() {
*x = CrashPlayerData{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CrashPlayerData) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CrashPlayerData) ProtoMessage() {}
func (x *CrashPlayerData) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 CrashPlayerData.ProtoReflect.Descriptor instead.
func (*CrashPlayerData) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{1}
}
func (x *CrashPlayerData) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *CrashPlayerData) GetSnId() int32 {
if x != nil {
return x.SnId
}
return 0
}
func (x *CrashPlayerData) GetHead() int32 {
if x != nil {
return x.Head
}
return 0
}
func (x *CrashPlayerData) GetSex() int32 {
if x != nil {
return x.Sex
}
return 0
}
func (x *CrashPlayerData) GetCoin() int64 {
if x != nil {
return x.Coin
}
return 0
}
func (x *CrashPlayerData) GetPos() int32 {
if x != nil {
return x.Pos
}
return 0
}
func (x *CrashPlayerData) GetFlag() int32 {
if x != nil {
return x.Flag
}
return 0
}
func (x *CrashPlayerData) GetParams() []string {
if x != nil {
return x.Params
}
return nil
}
func (x *CrashPlayerData) GetCity() string {
if x != nil {
return x.City
}
return ""
}
func (x *CrashPlayerData) GetLately20Win() int64 {
if x != nil {
return x.Lately20Win
}
return 0
}
func (x *CrashPlayerData) GetLately20Bet() int64 {
if x != nil {
return x.Lately20Bet
}
return 0
}
func (x *CrashPlayerData) GetHeadOutLine() int32 {
if x != nil {
return x.HeadOutLine
}
return 0
}
func (x *CrashPlayerData) GetVIP() int32 {
if x != nil {
return x.VIP
}
return 0
}
func (x *CrashPlayerData) GetNiceId() int32 {
if x != nil {
return x.NiceId
}
return 0
}
//筹码数据 PACKET_SC_CRASH_Parachute
type CrashChips struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Chip int64 `protobuf:"varint,1,opt,name=Chip,proto3" json:"Chip,omitempty"` //下注金额
Multiple int32 `protobuf:"varint,2,opt,name=Multiple,proto3" json:"Multiple,omitempty"` //下注倍数
SnId int32 `protobuf:"varint,3,opt,name=SnId,proto3" json:"SnId,omitempty"` //玩家ID
}
func (x *CrashChips) Reset() {
*x = CrashChips{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CrashChips) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CrashChips) ProtoMessage() {}
func (x *CrashChips) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 CrashChips.ProtoReflect.Descriptor instead.
func (*CrashChips) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{2}
}
func (x *CrashChips) GetChip() int64 {
if x != nil {
return x.Chip
}
return 0
}
func (x *CrashChips) GetMultiple() int32 {
if x != nil {
return x.Multiple
}
return 0
}
func (x *CrashChips) GetSnId() int32 {
if x != nil {
return x.SnId
}
return 0
}
type CrashZoneChips struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Data []*CrashChips `protobuf:"bytes,1,rep,name=Data,proto3" json:"Data,omitempty"` //筹码
}
func (x *CrashZoneChips) Reset() {
*x = CrashZoneChips{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CrashZoneChips) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CrashZoneChips) ProtoMessage() {}
func (x *CrashZoneChips) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 CrashZoneChips.ProtoReflect.Descriptor instead.
func (*CrashZoneChips) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{3}
}
func (x *CrashZoneChips) GetData() []*CrashChips {
if x != nil {
return x.Data
}
return nil
}
//房间信息
type SCCrashRoomInfo 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"` //规则参数
NumOfGames int32 `protobuf:"varint,6,opt,name=NumOfGames,proto3" json:"NumOfGames,omitempty"` //当前第几局
Cards []int32 `protobuf:"varint,7,rep,packed,name=Cards,proto3" json:"Cards,omitempty"` //牌数据
State int32 `protobuf:"varint,8,opt,name=State,proto3" json:"State,omitempty"` //房间当前状态
TimeOut int32 `protobuf:"varint,9,opt,name=TimeOut,proto3" json:"TimeOut,omitempty"` //等待剩余时间 单位:毫秒
BankerPos int32 `protobuf:"varint,10,opt,name=BankerPos,proto3" json:"BankerPos,omitempty"` //庄家位置
DisbandGen int32 `protobuf:"varint,11,opt,name=DisbandGen,proto3" json:"DisbandGen,omitempty"` //解散申请
AgentId int32 `protobuf:"varint,12,opt,name=AgentId,proto3" json:"AgentId,omitempty"` //代开房者
ParamsEx []int32 `protobuf:"varint,13,rep,packed,name=ParamsEx,proto3" json:"ParamsEx,omitempty"` //其他参数
SceneType int32 `protobuf:"varint,14,opt,name=SceneType,proto3" json:"SceneType,omitempty"` //房间模式 0:房卡模式 1:钻石模式
Players []*CrashPlayerData `protobuf:"bytes,15,rep,name=Players,proto3" json:"Players,omitempty"` //房间内的玩家信息
OtherChips []*CrashZoneChips `protobuf:"bytes,16,rep,name=OtherChips,proto3" json:"OtherChips,omitempty"` //其它人的筹码数据
MyChips []*CrashZoneChips `protobuf:"bytes,17,rep,name=MyChips,proto3" json:"MyChips,omitempty"` //我的筹码数据
Trend100Cur []int32 `protobuf:"varint,18,rep,packed,name=Trend100Cur,proto3" json:"Trend100Cur,omitempty"` //当前100局走势数据
Trend20Lately []int32 `protobuf:"varint,19,rep,packed,name=Trend20Lately,proto3" json:"Trend20Lately,omitempty"` //最近20局走势数据
Trend20CardKind []int32 `protobuf:"varint,20,rep,packed,name=Trend20CardKind,proto3" json:"Trend20CardKind,omitempty"` //最近20局牌型数据
AllOnlinePlayerNum int32 `protobuf:"varint,21,opt,name=AllOnlinePlayerNum,proto3" json:"AllOnlinePlayerNum,omitempty"` //在线玩家数量
OtherIntParams []int32 `protobuf:"varint,22,rep,packed,name=OtherIntParams,proto3" json:"OtherIntParams,omitempty"` //规则参数
LoopNum int32 `protobuf:"varint,23,opt,name=LoopNum,proto3" json:"LoopNum,omitempty"` // 后台控制结算结果时使用
AllBetCoin int64 `protobuf:"varint,24,opt,name=AllBetCoin,proto3" json:"AllBetCoin,omitempty"` //总下注筹码
AllBetPlayerNum int32 `protobuf:"varint,25,opt,name=AllBetPlayerNum,proto3" json:"AllBetPlayerNum,omitempty"` //已下注的玩家数量
ParachutePlayerNum int32 `protobuf:"varint,26,opt,name=ParachutePlayerNum,proto3" json:"ParachutePlayerNum,omitempty"` //已跳伞玩家数量
ParachutePlayerCoin int64 `protobuf:"varint,27,opt,name=ParachutePlayerCoin,proto3" json:"ParachutePlayerCoin,omitempty"` //已跳伞玩家下注金额
}
func (x *SCCrashRoomInfo) Reset() {
*x = SCCrashRoomInfo{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCCrashRoomInfo) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCCrashRoomInfo) ProtoMessage() {}
func (x *SCCrashRoomInfo) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 SCCrashRoomInfo.ProtoReflect.Descriptor instead.
func (*SCCrashRoomInfo) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{4}
}
func (x *SCCrashRoomInfo) GetRoomId() int32 {
if x != nil {
return x.RoomId
}
return 0
}
func (x *SCCrashRoomInfo) GetCreator() int32 {
if x != nil {
return x.Creator
}
return 0
}
func (x *SCCrashRoomInfo) GetGameId() int32 {
if x != nil {
return x.GameId
}
return 0
}
func (x *SCCrashRoomInfo) GetRoomMode() int32 {
if x != nil {
return x.RoomMode
}
return 0
}
func (x *SCCrashRoomInfo) GetParams() []int32 {
if x != nil {
return x.Params
}
return nil
}
func (x *SCCrashRoomInfo) GetNumOfGames() int32 {
if x != nil {
return x.NumOfGames
}
return 0
}
func (x *SCCrashRoomInfo) GetCards() []int32 {
if x != nil {
return x.Cards
}
return nil
}
func (x *SCCrashRoomInfo) GetState() int32 {
if x != nil {
return x.State
}
return 0
}
func (x *SCCrashRoomInfo) GetTimeOut() int32 {
if x != nil {
return x.TimeOut
}
return 0
}
func (x *SCCrashRoomInfo) GetBankerPos() int32 {
if x != nil {
return x.BankerPos
}
return 0
}
func (x *SCCrashRoomInfo) GetDisbandGen() int32 {
if x != nil {
return x.DisbandGen
}
return 0
}
func (x *SCCrashRoomInfo) GetAgentId() int32 {
if x != nil {
return x.AgentId
}
return 0
}
func (x *SCCrashRoomInfo) GetParamsEx() []int32 {
if x != nil {
return x.ParamsEx
}
return nil
}
func (x *SCCrashRoomInfo) GetSceneType() int32 {
if x != nil {
return x.SceneType
}
return 0
}
func (x *SCCrashRoomInfo) GetPlayers() []*CrashPlayerData {
if x != nil {
return x.Players
}
return nil
}
func (x *SCCrashRoomInfo) GetOtherChips() []*CrashZoneChips {
if x != nil {
return x.OtherChips
}
return nil
}
func (x *SCCrashRoomInfo) GetMyChips() []*CrashZoneChips {
if x != nil {
return x.MyChips
}
return nil
}
func (x *SCCrashRoomInfo) GetTrend100Cur() []int32 {
if x != nil {
return x.Trend100Cur
}
return nil
}
func (x *SCCrashRoomInfo) GetTrend20Lately() []int32 {
if x != nil {
return x.Trend20Lately
}
return nil
}
func (x *SCCrashRoomInfo) GetTrend20CardKind() []int32 {
if x != nil {
return x.Trend20CardKind
}
return nil
}
func (x *SCCrashRoomInfo) GetAllOnlinePlayerNum() int32 {
if x != nil {
return x.AllOnlinePlayerNum
}
return 0
}
func (x *SCCrashRoomInfo) GetOtherIntParams() []int32 {
if x != nil {
return x.OtherIntParams
}
return nil
}
func (x *SCCrashRoomInfo) GetLoopNum() int32 {
if x != nil {
return x.LoopNum
}
return 0
}
func (x *SCCrashRoomInfo) GetAllBetCoin() int64 {
if x != nil {
return x.AllBetCoin
}
return 0
}
func (x *SCCrashRoomInfo) GetAllBetPlayerNum() int32 {
if x != nil {
return x.AllBetPlayerNum
}
return 0
}
func (x *SCCrashRoomInfo) GetParachutePlayerNum() int32 {
if x != nil {
return x.ParachutePlayerNum
}
return 0
}
func (x *SCCrashRoomInfo) GetParachutePlayerCoin() int64 {
if x != nil {
return x.ParachutePlayerCoin
}
return 0
}
//座位位置
type SCCrashSeats struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Data []*CrashPlayerData `protobuf:"bytes,1,rep,name=Data,proto3" json:"Data,omitempty"` //玩家信息
PlayerNum int32 `protobuf:"varint,2,opt,name=PlayerNum,proto3" json:"PlayerNum,omitempty"` //玩家数量
}
func (x *SCCrashSeats) Reset() {
*x = SCCrashSeats{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCCrashSeats) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCCrashSeats) ProtoMessage() {}
func (x *SCCrashSeats) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 SCCrashSeats.ProtoReflect.Descriptor instead.
func (*SCCrashSeats) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{5}
}
func (x *SCCrashSeats) GetData() []*CrashPlayerData {
if x != nil {
return x.Data
}
return nil
}
func (x *SCCrashSeats) GetPlayerNum() int32 {
if x != nil {
return x.PlayerNum
}
return 0
}
//玩家操作
type CSCrashOp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
OpCode int32 `protobuf:"varint,1,opt,name=OpCode,proto3" json:"OpCode,omitempty"` //操作码 0:押注 1:获取在线玩家 2:跳伞
Params []int64 `protobuf:"varint,2,rep,packed,name=Params,proto3" json:"Params,omitempty"` //操作参数
}
func (x *CSCrashOp) Reset() {
*x = CSCrashOp{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CSCrashOp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CSCrashOp) ProtoMessage() {}
func (x *CSCrashOp) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 CSCrashOp.ProtoReflect.Descriptor instead.
func (*CSCrashOp) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{6}
}
func (x *CSCrashOp) GetOpCode() int32 {
if x != nil {
return x.OpCode
}
return 0
}
func (x *CSCrashOp) GetParams() []int64 {
if x != nil {
return x.Params
}
return nil
}
//玩家操作返回
type SCCrashOp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
SnId int32 `protobuf:"varint,1,opt,name=SnId,proto3" json:"SnId,omitempty"` //玩家ID
OpCode int32 `protobuf:"varint,2,opt,name=OpCode,proto3" json:"OpCode,omitempty"` //操作码
Params []int64 `protobuf:"varint,3,rep,packed,name=Params,proto3" json:"Params,omitempty"` //操作参数
OpRetCode OpResultCode `protobuf:"varint,4,opt,name=OpRetCode,proto3,enum=crash.OpResultCode" json:"OpRetCode,omitempty"` //操作结果
}
func (x *SCCrashOp) Reset() {
*x = SCCrashOp{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCCrashOp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCCrashOp) ProtoMessage() {}
func (x *SCCrashOp) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 SCCrashOp.ProtoReflect.Descriptor instead.
func (*SCCrashOp) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{7}
}
func (x *SCCrashOp) GetSnId() int32 {
if x != nil {
return x.SnId
}
return 0
}
func (x *SCCrashOp) GetOpCode() int32 {
if x != nil {
return x.OpCode
}
return 0
}
func (x *SCCrashOp) GetParams() []int64 {
if x != nil {
return x.Params
}
return nil
}
func (x *SCCrashOp) GetOpRetCode() OpResultCode {
if x != nil {
return x.OpRetCode
}
return OpResultCode_OPRC_Sucess
}
//房间状态
type SCCrashRoomState struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
State int32 `protobuf:"varint,1,opt,name=State,proto3" json:"State,omitempty"` //房间当前状态
SubState int32 `protobuf:"varint,2,opt,name=SubState,proto3" json:"SubState,omitempty"` //房间当前子状态
Params []int32 `protobuf:"varint,3,rep,packed,name=Params,proto3" json:"Params,omitempty"` //状态参数
}
func (x *SCCrashRoomState) Reset() {
*x = SCCrashRoomState{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCCrashRoomState) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCCrashRoomState) ProtoMessage() {}
func (x *SCCrashRoomState) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 SCCrashRoomState.ProtoReflect.Descriptor instead.
func (*SCCrashRoomState) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{8}
}
func (x *SCCrashRoomState) GetState() int32 {
if x != nil {
return x.State
}
return 0
}
func (x *SCCrashRoomState) GetSubState() int32 {
if x != nil {
return x.SubState
}
return 0
}
func (x *SCCrashRoomState) GetParams() []int32 {
if x != nil {
return x.Params
}
return nil
}
//玩家列表
type SCCrashPlayerList struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Data []*CrashPlayerData `protobuf:"bytes,1,rep,name=Data,proto3" json:"Data,omitempty"`
OLNum int32 `protobuf:"varint,2,opt,name=OLNum,proto3" json:"OLNum,omitempty"` //在线人数
}
func (x *SCCrashPlayerList) Reset() {
*x = SCCrashPlayerList{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCCrashPlayerList) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCCrashPlayerList) ProtoMessage() {}
func (x *SCCrashPlayerList) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 SCCrashPlayerList.ProtoReflect.Descriptor instead.
func (*SCCrashPlayerList) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{9}
}
func (x *SCCrashPlayerList) GetData() []*CrashPlayerData {
if x != nil {
return x.Data
}
return nil
}
func (x *SCCrashPlayerList) GetOLNum() int32 {
if x != nil {
return x.OLNum
}
return 0
}
//
type CrashBill struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
SnId int32 `protobuf:"varint,1,opt,name=SnId,proto3" json:"SnId,omitempty"` //玩家ID
Coin int64 `protobuf:"varint,2,opt,name=Coin,proto3" json:"Coin,omitempty"` //总金币
GainCoin int64 `protobuf:"varint,3,opt,name=GainCoin,proto3" json:"GainCoin,omitempty"` //本局输赢金币 这个含税了
}
func (x *CrashBill) Reset() {
*x = CrashBill{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CrashBill) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CrashBill) ProtoMessage() {}
func (x *CrashBill) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 CrashBill.ProtoReflect.Descriptor instead.
func (*CrashBill) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{10}
}
func (x *CrashBill) GetSnId() int32 {
if x != nil {
return x.SnId
}
return 0
}
func (x *CrashBill) GetCoin() int64 {
if x != nil {
return x.Coin
}
return 0
}
func (x *CrashBill) GetGainCoin() int64 {
if x != nil {
return x.GainCoin
}
return 0
}
//大赢家
type CrashBigWinner struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
SnId int32 `protobuf:"varint,1,opt,name=SnId,proto3" json:"SnId,omitempty"` //账号
Name string `protobuf:"bytes,2,opt,name=Name,proto3" json:"Name,omitempty"` //名字
Head int32 `protobuf:"varint,3,opt,name=Head,proto3" json:"Head,omitempty"` //头像
HeadOutLine int32 `protobuf:"varint,4,opt,name=HeadOutLine,proto3" json:"HeadOutLine,omitempty"` //头像框
VIP int32 `protobuf:"varint,5,opt,name=VIP,proto3" json:"VIP,omitempty"`
Sex int32 `protobuf:"varint,6,opt,name=Sex,proto3" json:"Sex,omitempty"` //性别
Coin int64 `protobuf:"varint,7,opt,name=Coin,proto3" json:"Coin,omitempty"` //金币
GainCoin int32 `protobuf:"varint,8,opt,name=GainCoin,proto3" json:"GainCoin,omitempty"` //本局赢的钱
City string `protobuf:"bytes,9,opt,name=City,proto3" json:"City,omitempty"` //城市
}
func (x *CrashBigWinner) Reset() {
*x = CrashBigWinner{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CrashBigWinner) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CrashBigWinner) ProtoMessage() {}
func (x *CrashBigWinner) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 CrashBigWinner.ProtoReflect.Descriptor instead.
func (*CrashBigWinner) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{11}
}
func (x *CrashBigWinner) GetSnId() int32 {
if x != nil {
return x.SnId
}
return 0
}
func (x *CrashBigWinner) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *CrashBigWinner) GetHead() int32 {
if x != nil {
return x.Head
}
return 0
}
func (x *CrashBigWinner) GetHeadOutLine() int32 {
if x != nil {
return x.HeadOutLine
}
return 0
}
func (x *CrashBigWinner) GetVIP() int32 {
if x != nil {
return x.VIP
}
return 0
}
func (x *CrashBigWinner) GetSex() int32 {
if x != nil {
return x.Sex
}
return 0
}
func (x *CrashBigWinner) GetCoin() int64 {
if x != nil {
return x.Coin
}
return 0
}
func (x *CrashBigWinner) GetGainCoin() int32 {
if x != nil {
return x.GainCoin
}
return 0
}
func (x *CrashBigWinner) GetCity() string {
if x != nil {
return x.City
}
return ""
}
//结算
type SCCrashBilled struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
BillData []*CrashBill `protobuf:"bytes,1,rep,name=BillData,proto3" json:"BillData,omitempty"` //8个位置的结算数据
BigWinner *CrashBigWinner `protobuf:"bytes,2,opt,name=BigWinner,proto3" json:"BigWinner,omitempty"` //大赢家
LoopNum int32 `protobuf:"varint,3,opt,name=LoopNum,proto3" json:"LoopNum,omitempty"` // 后台控制结算结果时使用
}
func (x *SCCrashBilled) Reset() {
*x = SCCrashBilled{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCCrashBilled) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCCrashBilled) ProtoMessage() {}
func (x *SCCrashBilled) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 SCCrashBilled.ProtoReflect.Descriptor instead.
func (*SCCrashBilled) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{12}
}
func (x *SCCrashBilled) GetBillData() []*CrashBill {
if x != nil {
return x.BillData
}
return nil
}
func (x *SCCrashBilled) GetBigWinner() *CrashBigWinner {
if x != nil {
return x.BigWinner
}
return nil
}
func (x *SCCrashBilled) GetLoopNum() int32 {
if x != nil {
return x.LoopNum
}
return 0
}
//批量下注消息
type SCCrashSendBet struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Data []*CrashChips `protobuf:"bytes,1,rep,name=Data,proto3" json:"Data,omitempty"` //前20位筹码信息
AllBetCoin int64 `protobuf:"varint,2,opt,name=AllBetCoin,proto3" json:"AllBetCoin,omitempty"` //总下注筹码
AllOnlinePlayerNum int32 `protobuf:"varint,3,opt,name=AllOnlinePlayerNum,proto3" json:"AllOnlinePlayerNum,omitempty"` //所有在线人数
AllBetPlayerNum int32 `protobuf:"varint,4,opt,name=AllBetPlayerNum,proto3" json:"AllBetPlayerNum,omitempty"` //已下注的玩家数量
}
func (x *SCCrashSendBet) Reset() {
*x = SCCrashSendBet{}
if protoimpl.UnsafeEnabled {
mi := &file_crash_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SCCrashSendBet) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SCCrashSendBet) ProtoMessage() {}
func (x *SCCrashSendBet) ProtoReflect() protoreflect.Message {
mi := &file_crash_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 SCCrashSendBet.ProtoReflect.Descriptor instead.
func (*SCCrashSendBet) Descriptor() ([]byte, []int) {
return file_crash_proto_rawDescGZIP(), []int{13}
}
func (x *SCCrashSendBet) GetData() []*CrashChips {
if x != nil {
return x.Data
}
return nil
}
func (x *SCCrashSendBet) GetAllBetCoin() int64 {
if x != nil {
return x.AllBetCoin
}
return 0
}
func (x *SCCrashSendBet) GetAllOnlinePlayerNum() int32 {
if x != nil {
return x.AllOnlinePlayerNum
}
return 0
}
func (x *SCCrashSendBet) GetAllBetPlayerNum() int32 {
if x != nil {
return x.AllBetPlayerNum
}
return 0
}
var File_crash_proto protoreflect.FileDescriptor
var file_crash_proto_rawDesc = []byte{
0x0a, 0x0b, 0x63, 0x72, 0x61, 0x73, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x63,
0x72, 0x61, 0x73, 0x68, 0x22, 0x49, 0x0a, 0x09, 0x43, 0x72, 0x61, 0x73, 0x68, 0x54, 0x69, 0x6d,
0x65, 0x12, 0x20, 0x0a, 0x0b, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63,
0x6f, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x22,
0xd5, 0x02, 0x0a, 0x0f, 0x43, 0x72, 0x61, 0x73, 0x68, 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, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52,
0x04, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x06, 0x20, 0x01,
0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x6c, 0x61, 0x67, 0x18,
0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x50,
0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x50, 0x61, 0x72,
0x61, 0x6d, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x69, 0x74, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28,
0x09, 0x52, 0x04, 0x43, 0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x4c, 0x61, 0x74, 0x65, 0x6c,
0x79, 0x32, 0x30, 0x57, 0x69, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x4c, 0x61,
0x74, 0x65, 0x6c, 0x79, 0x32, 0x30, 0x57, 0x69, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x4c, 0x61, 0x74,
0x65, 0x6c, 0x79, 0x32, 0x30, 0x42, 0x65, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b,
0x4c, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x32, 0x30, 0x42, 0x65, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x48,
0x65, 0x61, 0x64, 0x4f, 0x75, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05,
0x52, 0x0b, 0x48, 0x65, 0x61, 0x64, 0x4f, 0x75, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x10, 0x0a,
0x03, 0x56, 0x49, 0x50, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x56, 0x49, 0x50, 0x12,
0x16, 0x0a, 0x06, 0x4e, 0x69, 0x63, 0x65, 0x49, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52,
0x06, 0x4e, 0x69, 0x63, 0x65, 0x49, 0x64, 0x22, 0x50, 0x0a, 0x0a, 0x43, 0x72, 0x61, 0x73, 0x68,
0x43, 0x68, 0x69, 0x70, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x68, 0x69, 0x70, 0x18, 0x01, 0x20,
0x01, 0x28, 0x03, 0x52, 0x04, 0x43, 0x68, 0x69, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x4d, 0x75, 0x6c,
0x74, 0x69, 0x70, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4d, 0x75, 0x6c,
0x74, 0x69, 0x70, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20,
0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x22, 0x37, 0x0a, 0x0e, 0x43, 0x72, 0x61,
0x73, 0x68, 0x5a, 0x6f, 0x6e, 0x65, 0x43, 0x68, 0x69, 0x70, 0x73, 0x12, 0x25, 0x0a, 0x04, 0x44,
0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x72, 0x61, 0x73,
0x68, 0x2e, 0x43, 0x72, 0x61, 0x73, 0x68, 0x43, 0x68, 0x69, 0x70, 0x73, 0x52, 0x04, 0x44, 0x61,
0x74, 0x61, 0x22, 0xb1, 0x07, 0x0a, 0x0f, 0x53, 0x43, 0x43, 0x72, 0x61, 0x73, 0x68, 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, 0x1e, 0x0a, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47, 0x61, 0x6d,
0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x4e, 0x75, 0x6d, 0x4f, 0x66, 0x47,
0x61, 0x6d, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x18, 0x07, 0x20,
0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74,
0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65,
0x12, 0x18, 0x0a, 0x07, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28,
0x05, 0x52, 0x07, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x42, 0x61,
0x6e, 0x6b, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x42,
0x61, 0x6e, 0x6b, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x44, 0x69, 0x73, 0x62,
0x61, 0x6e, 0x64, 0x47, 0x65, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x44, 0x69,
0x73, 0x62, 0x61, 0x6e, 0x64, 0x47, 0x65, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x67, 0x65, 0x6e,
0x74, 0x49, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x41, 0x67, 0x65, 0x6e, 0x74,
0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x45, 0x78, 0x18, 0x0d,
0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x45, 0x78, 0x12, 0x1c,
0x0a, 0x09, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28,
0x05, 0x52, 0x09, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x30, 0x0a, 0x07,
0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e,
0x63, 0x72, 0x61, 0x73, 0x68, 0x2e, 0x43, 0x72, 0x61, 0x73, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65,
0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x35,
0x0a, 0x0a, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x43, 0x68, 0x69, 0x70, 0x73, 0x18, 0x10, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x72, 0x61, 0x73, 0x68, 0x2e, 0x43, 0x72, 0x61, 0x73, 0x68,
0x5a, 0x6f, 0x6e, 0x65, 0x43, 0x68, 0x69, 0x70, 0x73, 0x52, 0x0a, 0x4f, 0x74, 0x68, 0x65, 0x72,
0x43, 0x68, 0x69, 0x70, 0x73, 0x12, 0x2f, 0x0a, 0x07, 0x4d, 0x79, 0x43, 0x68, 0x69, 0x70, 0x73,
0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x72, 0x61, 0x73, 0x68, 0x2e, 0x43,
0x72, 0x61, 0x73, 0x68, 0x5a, 0x6f, 0x6e, 0x65, 0x43, 0x68, 0x69, 0x70, 0x73, 0x52, 0x07, 0x4d,
0x79, 0x43, 0x68, 0x69, 0x70, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x54, 0x72, 0x65, 0x6e, 0x64, 0x31,
0x30, 0x30, 0x43, 0x75, 0x72, 0x18, 0x12, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0b, 0x54, 0x72, 0x65,
0x6e, 0x64, 0x31, 0x30, 0x30, 0x43, 0x75, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x54, 0x72, 0x65, 0x6e,
0x64, 0x32, 0x30, 0x4c, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x18, 0x13, 0x20, 0x03, 0x28, 0x05, 0x52,
0x0d, 0x54, 0x72, 0x65, 0x6e, 0x64, 0x32, 0x30, 0x4c, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x12, 0x28,
0x0a, 0x0f, 0x54, 0x72, 0x65, 0x6e, 0x64, 0x32, 0x30, 0x43, 0x61, 0x72, 0x64, 0x4b, 0x69, 0x6e,
0x64, 0x18, 0x14, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0f, 0x54, 0x72, 0x65, 0x6e, 0x64, 0x32, 0x30,
0x43, 0x61, 0x72, 0x64, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x2e, 0x0a, 0x12, 0x41, 0x6c, 0x6c, 0x4f,
0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x18, 0x15,
0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x41, 0x6c, 0x6c, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x50,
0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x12, 0x26, 0x0a, 0x0e, 0x4f, 0x74, 0x68, 0x65,
0x72, 0x49, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x16, 0x20, 0x03, 0x28, 0x05,
0x52, 0x0e, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x49, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73,
0x12, 0x18, 0x0a, 0x07, 0x4c, 0x6f, 0x6f, 0x70, 0x4e, 0x75, 0x6d, 0x18, 0x17, 0x20, 0x01, 0x28,
0x05, 0x52, 0x07, 0x4c, 0x6f, 0x6f, 0x70, 0x4e, 0x75, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x41, 0x6c,
0x6c, 0x42, 0x65, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x18, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a,
0x41, 0x6c, 0x6c, 0x42, 0x65, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x41, 0x6c,
0x6c, 0x42, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x18, 0x19, 0x20,
0x01, 0x28, 0x05, 0x52, 0x0f, 0x41, 0x6c, 0x6c, 0x42, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65,
0x72, 0x4e, 0x75, 0x6d, 0x12, 0x2e, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x61, 0x63, 0x68, 0x75, 0x74,
0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x05,
0x52, 0x12, 0x50, 0x61, 0x72, 0x61, 0x63, 0x68, 0x75, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65,
0x72, 0x4e, 0x75, 0x6d, 0x12, 0x30, 0x0a, 0x13, 0x50, 0x61, 0x72, 0x61, 0x63, 0x68, 0x75, 0x74,
0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x1b, 0x20, 0x01, 0x28,
0x03, 0x52, 0x13, 0x50, 0x61, 0x72, 0x61, 0x63, 0x68, 0x75, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79,
0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0x58, 0x0a, 0x0c, 0x53, 0x43, 0x43, 0x72, 0x61, 0x73,
0x68, 0x53, 0x65, 0x61, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x72, 0x61, 0x73, 0x68, 0x2e, 0x43, 0x72, 0x61,
0x73, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x44, 0x61,
0x74, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x18,
0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d,
0x22, 0x3b, 0x0a, 0x09, 0x43, 0x53, 0x43, 0x72, 0x61, 0x73, 0x68, 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, 0x16, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18,
0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x82, 0x01,
0x0a, 0x09, 0x53, 0x43, 0x43, 0x72, 0x61, 0x73, 0x68, 0x4f, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x53,
0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12,
0x16, 0x0a, 0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
0x06, 0x4f, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d,
0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12,
0x31, 0x0a, 0x09, 0x4f, 0x70, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x13, 0x2e, 0x63, 0x72, 0x61, 0x73, 0x68, 0x2e, 0x4f, 0x70, 0x52, 0x65, 0x73,
0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x4f, 0x70, 0x52, 0x65, 0x74, 0x43, 0x6f,
0x64, 0x65, 0x22, 0x5c, 0x0a, 0x10, 0x53, 0x43, 0x43, 0x72, 0x61, 0x73, 0x68, 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, 0x1a, 0x0a, 0x08,
0x53, 0x75, 0x62, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08,
0x53, 0x75, 0x62, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61,
0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73,
0x22, 0x55, 0x0a, 0x11, 0x53, 0x43, 0x43, 0x72, 0x61, 0x73, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65,
0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x72, 0x61, 0x73, 0x68, 0x2e, 0x43, 0x72, 0x61, 0x73,
0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x44, 0x61, 0x74,
0x61, 0x12, 0x14, 0x0a, 0x05, 0x4f, 0x4c, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
0x52, 0x05, 0x4f, 0x4c, 0x4e, 0x75, 0x6d, 0x22, 0x4f, 0x0a, 0x09, 0x43, 0x72, 0x61, 0x73, 0x68,
0x42, 0x69, 0x6c, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01,
0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e,
0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08,
0x47, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08,
0x47, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0xd6, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x61,
0x73, 0x68, 0x42, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x53,
0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x12,
0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e,
0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x48, 0x65, 0x61, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
0x05, 0x52, 0x04, 0x48, 0x65, 0x61, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x48, 0x65, 0x61, 0x64, 0x4f,
0x75, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x48, 0x65,
0x61, 0x64, 0x4f, 0x75, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x56, 0x49, 0x50,
0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x56, 0x49, 0x50, 0x12, 0x10, 0x0a, 0x03, 0x53,
0x65, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x53, 0x65, 0x78, 0x12, 0x12, 0x0a,
0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x43, 0x6f, 0x69,
0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x47, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x08, 0x20,
0x01, 0x28, 0x05, 0x52, 0x08, 0x47, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x12, 0x0a,
0x04, 0x43, 0x69, 0x74, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x43, 0x69, 0x74,
0x79, 0x22, 0x8c, 0x01, 0x0a, 0x0d, 0x53, 0x43, 0x43, 0x72, 0x61, 0x73, 0x68, 0x42, 0x69, 0x6c,
0x6c, 0x65, 0x64, 0x12, 0x2c, 0x0a, 0x08, 0x42, 0x69, 0x6c, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x72, 0x61, 0x73, 0x68, 0x2e, 0x43, 0x72,
0x61, 0x73, 0x68, 0x42, 0x69, 0x6c, 0x6c, 0x52, 0x08, 0x42, 0x69, 0x6c, 0x6c, 0x44, 0x61, 0x74,
0x61, 0x12, 0x33, 0x0a, 0x09, 0x42, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x72, 0x61, 0x73, 0x68, 0x2e, 0x43, 0x72, 0x61,
0x73, 0x68, 0x42, 0x69, 0x67, 0x57, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x52, 0x09, 0x42, 0x69, 0x67,
0x57, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x4c, 0x6f, 0x6f, 0x70, 0x4e, 0x75,
0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4c, 0x6f, 0x6f, 0x70, 0x4e, 0x75, 0x6d,
0x22, 0xb1, 0x01, 0x0a, 0x0e, 0x53, 0x43, 0x43, 0x72, 0x61, 0x73, 0x68, 0x53, 0x65, 0x6e, 0x64,
0x42, 0x65, 0x74, 0x12, 0x25, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x11, 0x2e, 0x63, 0x72, 0x61, 0x73, 0x68, 0x2e, 0x43, 0x72, 0x61, 0x73, 0x68, 0x43,
0x68, 0x69, 0x70, 0x73, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x41, 0x6c,
0x6c, 0x42, 0x65, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a,
0x41, 0x6c, 0x6c, 0x42, 0x65, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x2e, 0x0a, 0x12, 0x41, 0x6c,
0x6c, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d,
0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x41, 0x6c, 0x6c, 0x4f, 0x6e, 0x6c, 0x69, 0x6e,
0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x41, 0x6c,
0x6c, 0x42, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x18, 0x04, 0x20,
0x01, 0x28, 0x05, 0x52, 0x0f, 0x41, 0x6c, 0x6c, 0x42, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65,
0x72, 0x4e, 0x75, 0x6d, 0x2a, 0x92, 0x01, 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, 0x1e, 0x0a, 0x1a, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x43,
0x6f, 0x69, 0x6e, 0x4d, 0x75, 0x73, 0x74, 0x52, 0x65, 0x61, 0x63, 0x68, 0x54, 0x68, 0x65, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x43,
0x6f, 0x69, 0x6e, 0x49, 0x73, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x03,
0x12, 0x10, 0x0a, 0x0c, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x4f, 0x6e, 0x6c, 0x79, 0x42, 0x65, 0x74,
0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x4f, 0x6e, 0x6c, 0x79, 0x4d,
0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x10, 0x05, 0x2a, 0xde, 0x02, 0x0a, 0x0d, 0x43, 0x72,
0x61, 0x73, 0x68, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x15, 0x0a, 0x11, 0x50,
0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x52, 0x41, 0x53, 0x48, 0x5f, 0x5a, 0x45, 0x52, 0x4f,
0x10, 0x00, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f,
0x43, 0x52, 0x41, 0x53, 0x48, 0x5f, 0x52, 0x4f, 0x4f, 0x4d, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x94,
0x28, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x43,
0x52, 0x41, 0x53, 0x48, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4f, 0x50, 0x10, 0x95, 0x28,
0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x52,
0x41, 0x53, 0x48, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4f, 0x50, 0x10, 0x96, 0x28, 0x12,
0x1e, 0x0a, 0x19, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x52, 0x41,
0x53, 0x48, 0x5f, 0x52, 0x4f, 0x4f, 0x4d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x10, 0x97, 0x28, 0x12,
0x1f, 0x0a, 0x1a, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x52, 0x41,
0x53, 0x48, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x42, 0x49, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x98, 0x28,
0x12, 0x1a, 0x0a, 0x15, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x52,
0x41, 0x53, 0x48, 0x5f, 0x53, 0x45, 0x41, 0x54, 0x53, 0x10, 0x99, 0x28, 0x12, 0x1f, 0x0a, 0x1a,
0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x52, 0x41, 0x53, 0x48, 0x5f,
0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4c, 0x49, 0x53, 0x54, 0x10, 0x9a, 0x28, 0x12, 0x1c, 0x0a,
0x17, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x52, 0x41, 0x53, 0x48,
0x5f, 0x53, 0x45, 0x4e, 0x44, 0x42, 0x45, 0x54, 0x10, 0x9b, 0x28, 0x12, 0x1d, 0x0a, 0x18, 0x50,
0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x52, 0x41, 0x53, 0x48, 0x5f, 0x53,
0x45, 0x4e, 0x44, 0x54, 0x69, 0x6d, 0x65, 0x10, 0x9c, 0x28, 0x12, 0x1e, 0x0a, 0x19, 0x50, 0x41,
0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x52, 0x41, 0x53, 0x48, 0x5f, 0x50, 0x61,
0x72, 0x61, 0x63, 0x68, 0x75, 0x74, 0x65, 0x10, 0x9d, 0x28, 0x42, 0x09, 0x5a, 0x07, 0x2e, 0x3b,
0x63, 0x72, 0x61, 0x73, 0x68, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_crash_proto_rawDescOnce sync.Once
file_crash_proto_rawDescData = file_crash_proto_rawDesc
)
func file_crash_proto_rawDescGZIP() []byte {
file_crash_proto_rawDescOnce.Do(func() {
file_crash_proto_rawDescData = protoimpl.X.CompressGZIP(file_crash_proto_rawDescData)
})
return file_crash_proto_rawDescData
}
var file_crash_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_crash_proto_msgTypes = make([]protoimpl.MessageInfo, 14)
var file_crash_proto_goTypes = []interface{}{
(OpResultCode)(0), // 0: crash.OpResultCode
(CrashPacketID)(0), // 1: crash.CrashPacketID
(*CrashTime)(nil), // 2: crash.CrashTime
(*CrashPlayerData)(nil), // 3: crash.CrashPlayerData
(*CrashChips)(nil), // 4: crash.CrashChips
(*CrashZoneChips)(nil), // 5: crash.CrashZoneChips
(*SCCrashRoomInfo)(nil), // 6: crash.SCCrashRoomInfo
(*SCCrashSeats)(nil), // 7: crash.SCCrashSeats
(*CSCrashOp)(nil), // 8: crash.CSCrashOp
(*SCCrashOp)(nil), // 9: crash.SCCrashOp
(*SCCrashRoomState)(nil), // 10: crash.SCCrashRoomState
(*SCCrashPlayerList)(nil), // 11: crash.SCCrashPlayerList
(*CrashBill)(nil), // 12: crash.CrashBill
(*CrashBigWinner)(nil), // 13: crash.CrashBigWinner
(*SCCrashBilled)(nil), // 14: crash.SCCrashBilled
(*SCCrashSendBet)(nil), // 15: crash.SCCrashSendBet
}
var file_crash_proto_depIdxs = []int32{
4, // 0: crash.CrashZoneChips.Data:type_name -> crash.CrashChips
3, // 1: crash.SCCrashRoomInfo.Players:type_name -> crash.CrashPlayerData
5, // 2: crash.SCCrashRoomInfo.OtherChips:type_name -> crash.CrashZoneChips
5, // 3: crash.SCCrashRoomInfo.MyChips:type_name -> crash.CrashZoneChips
3, // 4: crash.SCCrashSeats.Data:type_name -> crash.CrashPlayerData
0, // 5: crash.SCCrashOp.OpRetCode:type_name -> crash.OpResultCode
3, // 6: crash.SCCrashPlayerList.Data:type_name -> crash.CrashPlayerData
12, // 7: crash.SCCrashBilled.BillData:type_name -> crash.CrashBill
13, // 8: crash.SCCrashBilled.BigWinner:type_name -> crash.CrashBigWinner
4, // 9: crash.SCCrashSendBet.Data:type_name -> crash.CrashChips
10, // [10:10] is the sub-list for method output_type
10, // [10:10] is the sub-list for method input_type
10, // [10:10] is the sub-list for extension type_name
10, // [10:10] is the sub-list for extension extendee
0, // [0:10] is the sub-list for field type_name
}
func init() { file_crash_proto_init() }
func file_crash_proto_init() {
if File_crash_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_crash_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CrashTime); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CrashPlayerData); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CrashChips); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CrashZoneChips); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCCrashRoomInfo); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCCrashSeats); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CSCrashOp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCCrashOp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCCrashRoomState); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCCrashPlayerList); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CrashBill); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CrashBigWinner); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCCrashBilled); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_crash_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SCCrashSendBet); 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_crash_proto_rawDesc,
NumEnums: 2,
NumMessages: 14,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_crash_proto_goTypes,
DependencyIndexes: file_crash_proto_depIdxs,
EnumInfos: file_crash_proto_enumTypes,
MessageInfos: file_crash_proto_msgTypes,
}.Build()
File_crash_proto = out.File
file_crash_proto_rawDesc = nil
file_crash_proto_goTypes = nil
file_crash_proto_depIdxs = nil
}