diff --git a/data/DB_GameFree.dat b/data/DB_GameFree.dat index 8eeff8c..7ee49a4 100644 Binary files a/data/DB_GameFree.dat and b/data/DB_GameFree.dat differ diff --git a/data/DB_GameFree.json b/data/DB_GameFree.json index 0dc2c5b..0ddecf2 100644 --- a/data/DB_GameFree.json +++ b/data/DB_GameFree.json @@ -6390,6 +6390,39 @@ ], "PlayerWaterRate": 100, "BetWaterRate": 100 + }, + { + "Id": 6080001, + "Name": "娃娃机", + "Title": "1", + "GameId": 608, + "GameRule": 60800, + "GameType": 1, + "SceneType": 1, + "Desc": "0", + "ShowType": 3, + "ShowId": 60800, + "BaseScore": 1000, + "Turn": 60800, + "BetDec": "1000", + "Ai": [ + 0 + ], + "OtherIntParams": [ + 0 + ], + "RobotNumRng": [ + 0 + ], + "SameIpLimit": 1, + "GameDif": "608", + "GameClass": 2, + "PlatformName": "越南棋牌", + "MaxBetCoin": [ + 0 + ], + "PlayerWaterRate": 100, + "BetWaterRate": 100 } ] } \ No newline at end of file diff --git a/data/DB_GameRule.dat b/data/DB_GameRule.dat index 814c530..0f2fb33 100644 Binary files a/data/DB_GameRule.dat and b/data/DB_GameRule.dat differ diff --git a/data/DB_GameRule.json b/data/DB_GameRule.json index 626dccc..8295ccb 100644 --- a/data/DB_GameRule.json +++ b/data/DB_GameRule.json @@ -195,6 +195,11 @@ "Name": "多财多福", "GameId": 307, "GameDif": "307" + }, + { + "Id": 60800, + "Name": "娃娃机", + "GameId": 608 } ] } \ No newline at end of file diff --git a/data/DB_PropExchange.dat b/data/DB_PropExchange.dat index e52ec5f..9d60e50 100644 Binary files a/data/DB_PropExchange.dat and b/data/DB_PropExchange.dat differ diff --git a/data/DB_Task.dat b/data/DB_Task.dat index d8e86ff..95a4c56 100644 Binary files a/data/DB_Task.dat and b/data/DB_Task.dat differ diff --git a/data/gameconfig/machine.json b/data/gameconfig/machine.json new file mode 100644 index 0000000..8d4687f --- /dev/null +++ b/data/gameconfig/machine.json @@ -0,0 +1,19 @@ +{ + "GameName":"娃娃机", + "GameId":608, + "GameMode":[0], + "SceneType":[1], + "CanForceStart":false, + "MinPlayerCnt":1, + "DefaultPlayerCnt":1, + "MaxIndex":0, + "TimeFreeStart":0, + "TimeFreeEnd":0, + "DependentPlayerCnt":true, + "EnterAfterStart":false, + "PerGameTakeCard":100, + "ViewLogCnt":-1, + "BetState":0, + "Params":[ + ] +} \ No newline at end of file diff --git a/protocol/clawdoll/clawdoll.pb.go b/protocol/clawdoll/clawdoll.pb.go new file mode 100644 index 0000000..e395726 --- /dev/null +++ b/protocol/clawdoll/clawdoll.pb.go @@ -0,0 +1,1094 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.27.1-devel +// protoc v3.19.4 +// source: clawdoll.proto + +package clawdoll + +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 CLAWDOLLPacketID int32 + +const ( + CLAWDOLLPacketID_PACKET_CLAWDOLL_ZERO CLAWDOLLPacketID = 0 //弃用消息号 + CLAWDOLLPacketID_PACKET_SC_CLAWDOLL_ROOMINFO CLAWDOLLPacketID = 5601 //房间信息 + CLAWDOLLPacketID_PACKET_CS_CLAWDOLL_PLAYEROP CLAWDOLLPacketID = 5602 //玩家操作(客户->服务) + CLAWDOLLPacketID_PACKET_SC_CLAWDOLL_PLAYEROP CLAWDOLLPacketID = 5603 //玩家操作(服务->客户) + CLAWDOLLPacketID_PACKET_SC_CLAWDOLL_ROOMSTATE CLAWDOLLPacketID = 5604 //房间状态 + CLAWDOLLPacketID_PACKET_SC_CLAWDOLL_GAMEBILLED CLAWDOLLPacketID = 5605 //游戏结算 + CLAWDOLLPacketID_PACKET_SC_CLAWDOLL_PlayerEnter CLAWDOLLPacketID = 5606 // 玩家进入 + CLAWDOLLPacketID_PACKET_SC_CLAWDOLL_PlayerLeave CLAWDOLLPacketID = 5607 // 玩家离开 + CLAWDOLLPacketID_PACKET_SC_CLAWDOLL_PLAYERINFO CLAWDOLLPacketID = 5608 // 玩家状态信息变化 +) + +// Enum value maps for CLAWDOLLPacketID. +var ( + CLAWDOLLPacketID_name = map[int32]string{ + 0: "PACKET_CLAWDOLL_ZERO", + 5601: "PACKET_SC_CLAWDOLL_ROOMINFO", + 5602: "PACKET_CS_CLAWDOLL_PLAYEROP", + 5603: "PACKET_SC_CLAWDOLL_PLAYEROP", + 5604: "PACKET_SC_CLAWDOLL_ROOMSTATE", + 5605: "PACKET_SC_CLAWDOLL_GAMEBILLED", + 5606: "PACKET_SC_CLAWDOLL_PlayerEnter", + 5607: "PACKET_SC_CLAWDOLL_PlayerLeave", + 5608: "PACKET_SC_CLAWDOLL_PLAYERINFO", + } + CLAWDOLLPacketID_value = map[string]int32{ + "PACKET_CLAWDOLL_ZERO": 0, + "PACKET_SC_CLAWDOLL_ROOMINFO": 5601, + "PACKET_CS_CLAWDOLL_PLAYEROP": 5602, + "PACKET_SC_CLAWDOLL_PLAYEROP": 5603, + "PACKET_SC_CLAWDOLL_ROOMSTATE": 5604, + "PACKET_SC_CLAWDOLL_GAMEBILLED": 5605, + "PACKET_SC_CLAWDOLL_PlayerEnter": 5606, + "PACKET_SC_CLAWDOLL_PlayerLeave": 5607, + "PACKET_SC_CLAWDOLL_PLAYERINFO": 5608, + } +) + +func (x CLAWDOLLPacketID) Enum() *CLAWDOLLPacketID { + p := new(CLAWDOLLPacketID) + *p = x + return p +} + +func (x CLAWDOLLPacketID) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CLAWDOLLPacketID) Descriptor() protoreflect.EnumDescriptor { + return file_clawdoll_proto_enumTypes[0].Descriptor() +} + +func (CLAWDOLLPacketID) Type() protoreflect.EnumType { + return &file_clawdoll_proto_enumTypes[0] +} + +func (x CLAWDOLLPacketID) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use CLAWDOLLPacketID.Descriptor instead. +func (CLAWDOLLPacketID) EnumDescriptor() ([]byte, []int) { + return file_clawdoll_proto_rawDescGZIP(), []int{0} +} + +//操作结果 +type OpResultCode int32 + +const ( + OpResultCode_OPRC_Success OpResultCode = 0 //成功 + OpResultCode_OPRC_Error OpResultCode = 1 //失败 + OpResultCode_OPRC_CoinNotEnough OpResultCode = 2 //钱不够 + OpResultCode_OPRC_PosAlReadyPlaying OpResultCode = 3 //本局位置已存在玩家 +) + +// Enum value maps for OpResultCode. +var ( + OpResultCode_name = map[int32]string{ + 0: "OPRC_Success", + 1: "OPRC_Error", + 2: "OPRC_CoinNotEnough", + 3: "OPRC_PosAlReadyPlaying", + } + OpResultCode_value = map[string]int32{ + "OPRC_Success": 0, + "OPRC_Error": 1, + "OPRC_CoinNotEnough": 2, + "OPRC_PosAlReadyPlaying": 3, + } +) + +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_clawdoll_proto_enumTypes[1].Descriptor() +} + +func (OpResultCode) Type() protoreflect.EnumType { + return &file_clawdoll_proto_enumTypes[1] +} + +func (x OpResultCode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use OpResultCode.Descriptor instead. +func (OpResultCode) EnumDescriptor() ([]byte, []int) { + return file_clawdoll_proto_rawDescGZIP(), []int{1} +} + +type CLAWDOLLPlayerData 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"` //金币 + HeadOutLine int32 `protobuf:"varint,6,opt,name=HeadOutLine,proto3" json:"HeadOutLine,omitempty"` //头像框 + VIP int32 `protobuf:"varint,7,opt,name=VIP,proto3" json:"VIP,omitempty"` + Flag int32 `protobuf:"varint,8,opt,name=Flag,proto3" json:"Flag,omitempty"` //二进制标记 第一位:是否掉线(0:在线 1:掉线) 第二位:是否准备(0:未准备 1:已准备) + WinCoin int64 `protobuf:"varint,9,opt,name=WinCoin,proto3" json:"WinCoin,omitempty"` // 本局赢分 +} + +func (x *CLAWDOLLPlayerData) Reset() { + *x = CLAWDOLLPlayerData{} + if protoimpl.UnsafeEnabled { + mi := &file_clawdoll_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CLAWDOLLPlayerData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CLAWDOLLPlayerData) ProtoMessage() {} + +func (x *CLAWDOLLPlayerData) ProtoReflect() protoreflect.Message { + mi := &file_clawdoll_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 CLAWDOLLPlayerData.ProtoReflect.Descriptor instead. +func (*CLAWDOLLPlayerData) Descriptor() ([]byte, []int) { + return file_clawdoll_proto_rawDescGZIP(), []int{0} +} + +func (x *CLAWDOLLPlayerData) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *CLAWDOLLPlayerData) GetSnId() int32 { + if x != nil { + return x.SnId + } + return 0 +} + +func (x *CLAWDOLLPlayerData) GetHead() int32 { + if x != nil { + return x.Head + } + return 0 +} + +func (x *CLAWDOLLPlayerData) GetSex() int32 { + if x != nil { + return x.Sex + } + return 0 +} + +func (x *CLAWDOLLPlayerData) GetCoin() int64 { + if x != nil { + return x.Coin + } + return 0 +} + +func (x *CLAWDOLLPlayerData) GetHeadOutLine() int32 { + if x != nil { + return x.HeadOutLine + } + return 0 +} + +func (x *CLAWDOLLPlayerData) GetVIP() int32 { + if x != nil { + return x.VIP + } + return 0 +} + +func (x *CLAWDOLLPlayerData) GetFlag() int32 { + if x != nil { + return x.Flag + } + return 0 +} + +func (x *CLAWDOLLPlayerData) GetWinCoin() int64 { + if x != nil { + return x.WinCoin + } + return 0 +} + +//房间信息 +type SCCLAWDOLLRoomInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RoomId int32 `protobuf:"varint,1,opt,name=RoomId,proto3" json:"RoomId,omitempty"` //房间id + GameId int32 `protobuf:"varint,2,opt,name=GameId,proto3" json:"GameId,omitempty"` //游戏id + RoomMode int32 `protobuf:"varint,3,opt,name=RoomMode,proto3" json:"RoomMode,omitempty"` //游戏模式 + Params []int32 `protobuf:"varint,4,rep,packed,name=Params,proto3" json:"Params,omitempty"` //规则参数 + State int32 `protobuf:"varint,5,opt,name=State,proto3" json:"State,omitempty"` //房间当前状态 + TimeOut int32 `protobuf:"varint,6,opt,name=TimeOut,proto3" json:"TimeOut,omitempty"` //该状态已经历时间 单位:秒 + Players []*CLAWDOLLPlayerData `protobuf:"bytes,7,rep,name=Players,proto3" json:"Players,omitempty"` //房间内的玩家信息 + TotalPlayer int32 `protobuf:"varint,8,opt,name=TotalPlayer,proto3" json:"TotalPlayer,omitempty"` //房间总人数 + RoundId int32 `protobuf:"varint,9,opt,name=RoundId,proto3" json:"RoundId,omitempty"` //当前局数ID + ParamsEx []int32 `protobuf:"varint,10,rep,packed,name=ParamsEx,proto3" json:"ParamsEx,omitempty"` //其他参数 + GameFreeId int32 `protobuf:"varint,15,opt,name=GameFreeId,proto3" json:"GameFreeId,omitempty"` + BaseScore int32 `protobuf:"varint,16,opt,name=BaseScore,proto3" json:"BaseScore,omitempty"` //基础分 +} + +func (x *SCCLAWDOLLRoomInfo) Reset() { + *x = SCCLAWDOLLRoomInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_clawdoll_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SCCLAWDOLLRoomInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SCCLAWDOLLRoomInfo) ProtoMessage() {} + +func (x *SCCLAWDOLLRoomInfo) ProtoReflect() protoreflect.Message { + mi := &file_clawdoll_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 SCCLAWDOLLRoomInfo.ProtoReflect.Descriptor instead. +func (*SCCLAWDOLLRoomInfo) Descriptor() ([]byte, []int) { + return file_clawdoll_proto_rawDescGZIP(), []int{1} +} + +func (x *SCCLAWDOLLRoomInfo) GetRoomId() int32 { + if x != nil { + return x.RoomId + } + return 0 +} + +func (x *SCCLAWDOLLRoomInfo) GetGameId() int32 { + if x != nil { + return x.GameId + } + return 0 +} + +func (x *SCCLAWDOLLRoomInfo) GetRoomMode() int32 { + if x != nil { + return x.RoomMode + } + return 0 +} + +func (x *SCCLAWDOLLRoomInfo) GetParams() []int32 { + if x != nil { + return x.Params + } + return nil +} + +func (x *SCCLAWDOLLRoomInfo) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +func (x *SCCLAWDOLLRoomInfo) GetTimeOut() int32 { + if x != nil { + return x.TimeOut + } + return 0 +} + +func (x *SCCLAWDOLLRoomInfo) GetPlayers() []*CLAWDOLLPlayerData { + if x != nil { + return x.Players + } + return nil +} + +func (x *SCCLAWDOLLRoomInfo) GetTotalPlayer() int32 { + if x != nil { + return x.TotalPlayer + } + return 0 +} + +func (x *SCCLAWDOLLRoomInfo) GetRoundId() int32 { + if x != nil { + return x.RoundId + } + return 0 +} + +func (x *SCCLAWDOLLRoomInfo) GetParamsEx() []int32 { + if x != nil { + return x.ParamsEx + } + return nil +} + +func (x *SCCLAWDOLLRoomInfo) GetGameFreeId() int32 { + if x != nil { + return x.GameFreeId + } + return 0 +} + +func (x *SCCLAWDOLLRoomInfo) GetBaseScore() int32 { + if x != nil { + return x.BaseScore + } + return 0 +} + +//玩家操作 +type CSCLAWDOLLOp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OpCode int32 `protobuf:"varint,1,opt,name=OpCode,proto3" json:"OpCode,omitempty"` + Params []int64 `protobuf:"varint,2,rep,packed,name=Params,proto3" json:"Params,omitempty"` +} + +func (x *CSCLAWDOLLOp) Reset() { + *x = CSCLAWDOLLOp{} + if protoimpl.UnsafeEnabled { + mi := &file_clawdoll_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CSCLAWDOLLOp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CSCLAWDOLLOp) ProtoMessage() {} + +func (x *CSCLAWDOLLOp) ProtoReflect() protoreflect.Message { + mi := &file_clawdoll_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 CSCLAWDOLLOp.ProtoReflect.Descriptor instead. +func (*CSCLAWDOLLOp) Descriptor() ([]byte, []int) { + return file_clawdoll_proto_rawDescGZIP(), []int{2} +} + +func (x *CSCLAWDOLLOp) GetOpCode() int32 { + if x != nil { + return x.OpCode + } + return 0 +} + +func (x *CSCLAWDOLLOp) GetParams() []int64 { + if x != nil { + return x.Params + } + return nil +} + +//玩家操作返回 +type SCCLAWDOLLOp 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"` //操作参数 同上 CSCLAWDOLLOp + OpRetCode OpResultCode `protobuf:"varint,4,opt,name=OpRetCode,proto3,enum=clawdoll.OpResultCode" json:"OpRetCode,omitempty"` //操作结果 +} + +func (x *SCCLAWDOLLOp) Reset() { + *x = SCCLAWDOLLOp{} + if protoimpl.UnsafeEnabled { + mi := &file_clawdoll_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SCCLAWDOLLOp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SCCLAWDOLLOp) ProtoMessage() {} + +func (x *SCCLAWDOLLOp) ProtoReflect() protoreflect.Message { + mi := &file_clawdoll_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 SCCLAWDOLLOp.ProtoReflect.Descriptor instead. +func (*SCCLAWDOLLOp) Descriptor() ([]byte, []int) { + return file_clawdoll_proto_rawDescGZIP(), []int{3} +} + +func (x *SCCLAWDOLLOp) GetSnId() int32 { + if x != nil { + return x.SnId + } + return 0 +} + +func (x *SCCLAWDOLLOp) GetOpCode() int32 { + if x != nil { + return x.OpCode + } + return 0 +} + +func (x *SCCLAWDOLLOp) GetParams() []int64 { + if x != nil { + return x.Params + } + return nil +} + +func (x *SCCLAWDOLLOp) GetOpRetCode() OpResultCode { + if x != nil { + return x.OpRetCode + } + return OpResultCode_OPRC_Success +} + +//发送给客户端的数据 单局结算 +type SCCLAWDOLLRoundGameBilled struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RoundId int32 `protobuf:"varint,1,opt,name=RoundId,proto3" json:"RoundId,omitempty"` //牌局ID + ClowResult int32 `protobuf:"varint,2,opt,name=ClowResult,proto3" json:"ClowResult,omitempty"` //抓取结果 + Award int64 `protobuf:"varint,3,opt,name=Award,proto3" json:"Award,omitempty"` //获奖金额 + Balance int64 `protobuf:"varint,4,opt,name=Balance,proto3" json:"Balance,omitempty"` //玩家余额 +} + +func (x *SCCLAWDOLLRoundGameBilled) Reset() { + *x = SCCLAWDOLLRoundGameBilled{} + if protoimpl.UnsafeEnabled { + mi := &file_clawdoll_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SCCLAWDOLLRoundGameBilled) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SCCLAWDOLLRoundGameBilled) ProtoMessage() {} + +func (x *SCCLAWDOLLRoundGameBilled) ProtoReflect() protoreflect.Message { + mi := &file_clawdoll_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 SCCLAWDOLLRoundGameBilled.ProtoReflect.Descriptor instead. +func (*SCCLAWDOLLRoundGameBilled) Descriptor() ([]byte, []int) { + return file_clawdoll_proto_rawDescGZIP(), []int{4} +} + +func (x *SCCLAWDOLLRoundGameBilled) GetRoundId() int32 { + if x != nil { + return x.RoundId + } + return 0 +} + +func (x *SCCLAWDOLLRoundGameBilled) GetClowResult() int32 { + if x != nil { + return x.ClowResult + } + return 0 +} + +func (x *SCCLAWDOLLRoundGameBilled) GetAward() int64 { + if x != nil { + return x.Award + } + return 0 +} + +func (x *SCCLAWDOLLRoundGameBilled) GetBalance() int64 { + if x != nil { + return x.Balance + } + return 0 +} + +//房间状态 +type SCCLAWDOLLRoomState struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + State int32 `protobuf:"varint,1,opt,name=State,proto3" json:"State,omitempty"` //房间当前状态 + Params []float32 `protobuf:"fixed32,2,rep,packed,name=Params,proto3" json:"Params,omitempty"` +} + +func (x *SCCLAWDOLLRoomState) Reset() { + *x = SCCLAWDOLLRoomState{} + if protoimpl.UnsafeEnabled { + mi := &file_clawdoll_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SCCLAWDOLLRoomState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SCCLAWDOLLRoomState) ProtoMessage() {} + +func (x *SCCLAWDOLLRoomState) ProtoReflect() protoreflect.Message { + mi := &file_clawdoll_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 SCCLAWDOLLRoomState.ProtoReflect.Descriptor instead. +func (*SCCLAWDOLLRoomState) Descriptor() ([]byte, []int) { + return file_clawdoll_proto_rawDescGZIP(), []int{5} +} + +func (x *SCCLAWDOLLRoomState) GetState() int32 { + if x != nil { + return x.State + } + return 0 +} + +func (x *SCCLAWDOLLRoomState) GetParams() []float32 { + if x != nil { + return x.Params + } + return nil +} + +//玩家信息 +type SCCLAWDOLLPlayerInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SnId int32 `protobuf:"varint,1,opt,name=SnId,proto3" json:"SnId,omitempty"` //玩家ID + GainCoin int64 `protobuf:"varint,2,opt,name=gainCoin,proto3" json:"gainCoin,omitempty"` //本局赢取 + Coin int64 `protobuf:"varint,3,opt,name=Coin,proto3" json:"Coin,omitempty"` // 玩家 +} + +func (x *SCCLAWDOLLPlayerInfo) Reset() { + *x = SCCLAWDOLLPlayerInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_clawdoll_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SCCLAWDOLLPlayerInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SCCLAWDOLLPlayerInfo) ProtoMessage() {} + +func (x *SCCLAWDOLLPlayerInfo) ProtoReflect() protoreflect.Message { + mi := &file_clawdoll_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 SCCLAWDOLLPlayerInfo.ProtoReflect.Descriptor instead. +func (*SCCLAWDOLLPlayerInfo) Descriptor() ([]byte, []int) { + return file_clawdoll_proto_rawDescGZIP(), []int{6} +} + +func (x *SCCLAWDOLLPlayerInfo) GetSnId() int32 { + if x != nil { + return x.SnId + } + return 0 +} + +func (x *SCCLAWDOLLPlayerInfo) GetGainCoin() int64 { + if x != nil { + return x.GainCoin + } + return 0 +} + +func (x *SCCLAWDOLLPlayerInfo) GetCoin() int64 { + if x != nil { + return x.Coin + } + return 0 +} + +//玩家进入 +//PACKET_SCCLAWDOLLPlayerEnter +type SCCLAWDOLLPlayerEnter struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *CLAWDOLLPlayerData `protobuf:"bytes,1,opt,name=Data,proto3" json:"Data,omitempty"` +} + +func (x *SCCLAWDOLLPlayerEnter) Reset() { + *x = SCCLAWDOLLPlayerEnter{} + if protoimpl.UnsafeEnabled { + mi := &file_clawdoll_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SCCLAWDOLLPlayerEnter) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SCCLAWDOLLPlayerEnter) ProtoMessage() {} + +func (x *SCCLAWDOLLPlayerEnter) ProtoReflect() protoreflect.Message { + mi := &file_clawdoll_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 SCCLAWDOLLPlayerEnter.ProtoReflect.Descriptor instead. +func (*SCCLAWDOLLPlayerEnter) Descriptor() ([]byte, []int) { + return file_clawdoll_proto_rawDescGZIP(), []int{7} +} + +func (x *SCCLAWDOLLPlayerEnter) GetData() *CLAWDOLLPlayerData { + if x != nil { + return x.Data + } + return nil +} + +//玩家离开 +//PACKET_SCCLAWDOLLPlayerLeave +type SCCLAWDOLLPlayerLeave struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Pos int32 `protobuf:"varint,1,opt,name=Pos,proto3" json:"Pos,omitempty"` //玩家位置 +} + +func (x *SCCLAWDOLLPlayerLeave) Reset() { + *x = SCCLAWDOLLPlayerLeave{} + if protoimpl.UnsafeEnabled { + mi := &file_clawdoll_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SCCLAWDOLLPlayerLeave) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SCCLAWDOLLPlayerLeave) ProtoMessage() {} + +func (x *SCCLAWDOLLPlayerLeave) ProtoReflect() protoreflect.Message { + mi := &file_clawdoll_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 SCCLAWDOLLPlayerLeave.ProtoReflect.Descriptor instead. +func (*SCCLAWDOLLPlayerLeave) Descriptor() ([]byte, []int) { + return file_clawdoll_proto_rawDescGZIP(), []int{8} +} + +func (x *SCCLAWDOLLPlayerLeave) GetPos() int32 { + if x != nil { + return x.Pos + } + return 0 +} + +var File_clawdoll_proto protoreflect.FileDescriptor + +var file_clawdoll_proto_rawDesc = []byte{ + 0x0a, 0x0e, 0x63, 0x6c, 0x61, 0x77, 0x64, 0x6f, 0x6c, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x12, 0x08, 0x63, 0x6c, 0x61, 0x77, 0x64, 0x6f, 0x6c, 0x6c, 0x22, 0xd8, 0x01, 0x0a, 0x12, 0x43, + 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 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, 0x20, 0x0a, 0x0b, 0x48, 0x65, 0x61, 0x64, 0x4f, 0x75, 0x74, 0x4c, 0x69, + 0x6e, 0x65, 0x18, 0x06, 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, 0x07, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x03, 0x56, 0x49, 0x50, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x6c, 0x61, 0x67, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x57, + 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x57, 0x69, + 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0xf6, 0x02, 0x0a, 0x12, 0x53, 0x43, 0x43, 0x4c, 0x41, 0x57, + 0x44, 0x4f, 0x4c, 0x4c, 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, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x02, + 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, 0x03, 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, 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x75, + 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x75, 0x74, + 0x12, 0x36, 0x0a, 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x61, 0x77, 0x64, 0x6f, 0x6c, 0x6c, 0x2e, 0x43, 0x4c, 0x41, + 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, + 0x07, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x54, 0x6f, 0x74, 0x61, + 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x54, + 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x52, 0x6f, + 0x75, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x52, 0x6f, 0x75, + 0x6e, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x45, 0x78, + 0x18, 0x0a, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x45, 0x78, + 0x12, 0x1e, 0x0a, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x47, 0x61, 0x6d, 0x65, 0x46, 0x72, 0x65, 0x65, 0x49, 0x64, + 0x12, 0x1c, 0x0a, 0x09, 0x42, 0x61, 0x73, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x42, 0x61, 0x73, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0x3e, + 0x0a, 0x0c, 0x43, 0x53, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 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, 0x88, + 0x01, 0x0a, 0x0c, 0x53, 0x43, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 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, 0x34, 0x0a, 0x09, 0x4f, 0x70, 0x52, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x63, 0x6c, 0x61, 0x77, 0x64, 0x6f, 0x6c, + 0x6c, 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, 0x85, 0x01, 0x0a, 0x19, 0x53, 0x43, + 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x47, 0x61, 0x6d, + 0x65, 0x42, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x52, 0x6f, 0x75, 0x6e, 0x64, + 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x49, + 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x43, 0x6c, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x43, 0x6c, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x12, 0x14, 0x0a, 0x05, 0x41, 0x77, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x05, 0x41, 0x77, 0x61, 0x72, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x42, 0x61, 0x6c, 0x61, 0x6e, + 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, + 0x65, 0x22, 0x43, 0x0a, 0x13, 0x53, 0x43, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 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, 0x02, 0x52, 0x06, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x5a, 0x0a, 0x14, 0x53, 0x43, 0x43, 0x4c, 0x41, 0x57, + 0x44, 0x4f, 0x4c, 0x4c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, + 0x0a, 0x04, 0x53, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, + 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x67, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x12, + 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x43, 0x6f, + 0x69, 0x6e, 0x22, 0x49, 0x0a, 0x15, 0x53, 0x43, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x04, 0x44, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x61, 0x77, + 0x64, 0x6f, 0x6c, 0x6c, 0x2e, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x29, 0x0a, + 0x15, 0x53, 0x43, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 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, 0x2a, 0xc7, 0x02, 0x0a, 0x10, 0x43, 0x4c, 0x41, + 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x18, 0x0a, + 0x14, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, + 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, 0x4b, 0x45, + 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x5f, 0x52, 0x4f, + 0x4f, 0x4d, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0xe1, 0x2b, 0x12, 0x20, 0x0a, 0x1b, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x43, 0x53, 0x5f, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x5f, + 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4f, 0x50, 0x10, 0xe2, 0x2b, 0x12, 0x20, 0x0a, 0x1b, 0x50, + 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, + 0x4c, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x4f, 0x50, 0x10, 0xe3, 0x2b, 0x12, 0x21, 0x0a, + 0x1c, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x4c, 0x41, 0x57, 0x44, + 0x4f, 0x4c, 0x4c, 0x5f, 0x52, 0x4f, 0x4f, 0x4d, 0x53, 0x54, 0x41, 0x54, 0x45, 0x10, 0xe4, 0x2b, + 0x12, 0x22, 0x0a, 0x1d, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x4c, + 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x42, 0x49, 0x4c, 0x4c, 0x45, + 0x44, 0x10, 0xe5, 0x2b, 0x12, 0x23, 0x0a, 0x1e, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, + 0x43, 0x5f, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0xe6, 0x2b, 0x12, 0x23, 0x0a, 0x1e, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x4c, 0x41, 0x57, 0x44, 0x4f, 0x4c, 0x4c, 0x5f, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x10, 0xe7, 0x2b, 0x12, 0x22, + 0x0a, 0x1d, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x5f, 0x43, 0x4c, 0x41, 0x57, + 0x44, 0x4f, 0x4c, 0x4c, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x49, 0x4e, 0x46, 0x4f, 0x10, + 0xe8, 0x2b, 0x2a, 0x64, 0x0a, 0x0c, 0x4f, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, + 0x64, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x43, 0x6f, 0x69, + 0x6e, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, + 0x4f, 0x50, 0x52, 0x43, 0x5f, 0x50, 0x6f, 0x73, 0x41, 0x6c, 0x52, 0x65, 0x61, 0x64, 0x79, 0x50, + 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x10, 0x03, 0x42, 0x28, 0x5a, 0x26, 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, 0x63, 0x6c, 0x61, 0x77, 0x64, 0x6f, + 0x6c, 0x6c, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_clawdoll_proto_rawDescOnce sync.Once + file_clawdoll_proto_rawDescData = file_clawdoll_proto_rawDesc +) + +func file_clawdoll_proto_rawDescGZIP() []byte { + file_clawdoll_proto_rawDescOnce.Do(func() { + file_clawdoll_proto_rawDescData = protoimpl.X.CompressGZIP(file_clawdoll_proto_rawDescData) + }) + return file_clawdoll_proto_rawDescData +} + +var file_clawdoll_proto_enumTypes = make([]protoimpl.EnumInfo, 2) +var file_clawdoll_proto_msgTypes = make([]protoimpl.MessageInfo, 9) +var file_clawdoll_proto_goTypes = []interface{}{ + (CLAWDOLLPacketID)(0), // 0: clawdoll.CLAWDOLLPacketID + (OpResultCode)(0), // 1: clawdoll.OpResultCode + (*CLAWDOLLPlayerData)(nil), // 2: clawdoll.CLAWDOLLPlayerData + (*SCCLAWDOLLRoomInfo)(nil), // 3: clawdoll.SCCLAWDOLLRoomInfo + (*CSCLAWDOLLOp)(nil), // 4: clawdoll.CSCLAWDOLLOp + (*SCCLAWDOLLOp)(nil), // 5: clawdoll.SCCLAWDOLLOp + (*SCCLAWDOLLRoundGameBilled)(nil), // 6: clawdoll.SCCLAWDOLLRoundGameBilled + (*SCCLAWDOLLRoomState)(nil), // 7: clawdoll.SCCLAWDOLLRoomState + (*SCCLAWDOLLPlayerInfo)(nil), // 8: clawdoll.SCCLAWDOLLPlayerInfo + (*SCCLAWDOLLPlayerEnter)(nil), // 9: clawdoll.SCCLAWDOLLPlayerEnter + (*SCCLAWDOLLPlayerLeave)(nil), // 10: clawdoll.SCCLAWDOLLPlayerLeave +} +var file_clawdoll_proto_depIdxs = []int32{ + 2, // 0: clawdoll.SCCLAWDOLLRoomInfo.Players:type_name -> clawdoll.CLAWDOLLPlayerData + 1, // 1: clawdoll.SCCLAWDOLLOp.OpRetCode:type_name -> clawdoll.OpResultCode + 2, // 2: clawdoll.SCCLAWDOLLPlayerEnter.Data:type_name -> clawdoll.CLAWDOLLPlayerData + 3, // [3:3] is the sub-list for method output_type + 3, // [3:3] is the sub-list for method input_type + 3, // [3:3] is the sub-list for extension type_name + 3, // [3:3] is the sub-list for extension extendee + 0, // [0:3] is the sub-list for field type_name +} + +func init() { file_clawdoll_proto_init() } +func file_clawdoll_proto_init() { + if File_clawdoll_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_clawdoll_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CLAWDOLLPlayerData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_clawdoll_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SCCLAWDOLLRoomInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_clawdoll_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CSCLAWDOLLOp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_clawdoll_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SCCLAWDOLLOp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_clawdoll_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SCCLAWDOLLRoundGameBilled); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_clawdoll_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SCCLAWDOLLRoomState); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_clawdoll_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SCCLAWDOLLPlayerInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_clawdoll_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SCCLAWDOLLPlayerEnter); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_clawdoll_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SCCLAWDOLLPlayerLeave); 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_clawdoll_proto_rawDesc, + NumEnums: 2, + NumMessages: 9, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_clawdoll_proto_goTypes, + DependencyIndexes: file_clawdoll_proto_depIdxs, + EnumInfos: file_clawdoll_proto_enumTypes, + MessageInfos: file_clawdoll_proto_msgTypes, + }.Build() + File_clawdoll_proto = out.File + file_clawdoll_proto_rawDesc = nil + file_clawdoll_proto_goTypes = nil + file_clawdoll_proto_depIdxs = nil +} diff --git a/protocol/clawdoll/clawdoll.proto b/protocol/clawdoll/clawdoll.proto new file mode 100644 index 0000000..e7091b2 --- /dev/null +++ b/protocol/clawdoll/clawdoll.proto @@ -0,0 +1,103 @@ +syntax = "proto3"; +package clawdoll; +option go_package = "mongo.games.com/game/protocol/clawdoll"; + +//娃娃机 +enum CLAWDOLLPacketID { + PACKET_CLAWDOLL_ZERO = 0; //弃用消息号 + PACKET_SC_CLAWDOLL_ROOMINFO = 5601; //房间信息 + PACKET_CS_CLAWDOLL_PLAYEROP = 5602; //玩家操作(客户->服务) + PACKET_SC_CLAWDOLL_PLAYEROP = 5603; //玩家操作(服务->客户) + PACKET_SC_CLAWDOLL_ROOMSTATE = 5604; //房间状态 + PACKET_SC_CLAWDOLL_GAMEBILLED = 5605; //游戏结算 + PACKET_SC_CLAWDOLL_PlayerEnter = 5606; // 玩家进入 + PACKET_SC_CLAWDOLL_PlayerLeave = 5607; // 玩家离开 + PACKET_SC_CLAWDOLL_PLAYERINFO = 5608; // 玩家状态信息变化 +} + +//操作结果 +enum OpResultCode { + OPRC_Success = 0; //成功 + OPRC_Error = 1; //失败 + OPRC_CoinNotEnough = 2; //钱不够 + OPRC_PosAlReadyPlaying = 3; //本局位置已存在玩家 +} + +message CLAWDOLLPlayerData { + string Name = 1; //名字 + int32 SnId = 2; //账号 + int32 Head = 3; //头像 + int32 Sex = 4; //性别 + int64 Coin = 5; //金币 + int32 HeadOutLine = 6; //头像框 + int32 VIP = 7; + int32 Flag = 8; //二进制标记 第一位:是否掉线(0:在线 1:掉线) 第二位:是否准备(0:未准备 1:已准备) + + int64 WinCoin = 9; // 本局赢分 + +} + +//房间信息 +message SCCLAWDOLLRoomInfo { + int32 RoomId = 1; //房间id + int32 GameId = 2; //游戏id + int32 RoomMode = 3; //游戏模式 + repeated int32 Params = 4; //规则参数 + int32 State = 5; //房间当前状态 + int32 TimeOut = 6; //该状态已经历时间 单位:秒 + repeated CLAWDOLLPlayerData Players = 7; //房间内的玩家信息 + int32 TotalPlayer = 8; //房间总人数 + int32 RoundId = 9; //当前局数ID + repeated int32 ParamsEx = 10; //其他参数 + + int32 GameFreeId = 15; + int32 BaseScore = 16; //基础分 +} + +//玩家操作 +message CSCLAWDOLLOp { + int32 OpCode = 1; + repeated int64 Params = 2; +} + +//玩家操作返回 +message SCCLAWDOLLOp { + int32 SnId = 1; //玩家ID + int32 OpCode = 2; //操作码 + repeated int64 Params = 3; //操作参数 同上 CSCLAWDOLLOp + OpResultCode OpRetCode = 4; //操作结果 +} + +//发送给客户端的数据 单局结算 +message SCCLAWDOLLRoundGameBilled { + int32 RoundId = 1; //牌局ID + int32 ClowResult = 2; //抓取结果 + int64 Award = 3; //获奖金额 + int64 Balance = 4; //玩家余额 +} + +//房间状态 +message SCCLAWDOLLRoomState { + int32 State = 1; //房间当前状态 + repeated float Params = 2; +} + +//玩家信息 +message SCCLAWDOLLPlayerInfo { + int32 SnId = 1; //玩家ID + int64 gainCoin = 2; //本局赢取 + int64 Coin = 3; // 玩家 +} + + +//玩家进入 +//PACKET_SCCLAWDOLLPlayerEnter +message SCCLAWDOLLPlayerEnter { + CLAWDOLLPlayerData Data = 1; +} + +//玩家离开 +//PACKET_SCCLAWDOLLPlayerLeave +message SCCLAWDOLLPlayerLeave { + int32 Pos = 1; //玩家位置 +} \ No newline at end of file diff --git a/protocol/dollmachine/dollmachine.pb.go b/protocol/dollmachine/dollmachine.pb.go new file mode 100644 index 0000000..6624f68 --- /dev/null +++ b/protocol/dollmachine/dollmachine.pb.go @@ -0,0 +1,537 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.27.1-devel +// protoc v3.19.4 +// source: dollmachine.proto + +package dollmachine + +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) +) + +//S-GAME M-娃娃机主机 +//娃娃机协议 +type DollMachinePacketID int32 + +const ( + DollMachinePacketID_PACKET_SMDollMachineZero DollMachinePacketID = 0 + DollMachinePacketID_PACKET_SMDollMachineMove DollMachinePacketID = 3001 + DollMachinePacketID_PACKET_SMDollMachineGrab DollMachinePacketID = 3002 + DollMachinePacketID_PACKET_MSDollMachineGrab DollMachinePacketID = 3003 + DollMachinePacketID_PACKET_MSDollMachineList DollMachinePacketID = 3004 +) + +// Enum value maps for DollMachinePacketID. +var ( + DollMachinePacketID_name = map[int32]string{ + 0: "PACKET_SMDollMachineZero", + 3001: "PACKET_SMDollMachineMove", + 3002: "PACKET_SMDollMachineGrab", + 3003: "PACKET_MSDollMachineGrab", + 3004: "PACKET_MSDollMachineList", + } + DollMachinePacketID_value = map[string]int32{ + "PACKET_SMDollMachineZero": 0, + "PACKET_SMDollMachineMove": 3001, + "PACKET_SMDollMachineGrab": 3002, + "PACKET_MSDollMachineGrab": 3003, + "PACKET_MSDollMachineList": 3004, + } +) + +func (x DollMachinePacketID) Enum() *DollMachinePacketID { + p := new(DollMachinePacketID) + *p = x + return p +} + +func (x DollMachinePacketID) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (DollMachinePacketID) Descriptor() protoreflect.EnumDescriptor { + return file_dollmachine_proto_enumTypes[0].Descriptor() +} + +func (DollMachinePacketID) Type() protoreflect.EnumType { + return &file_dollmachine_proto_enumTypes[0] +} + +func (x DollMachinePacketID) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use DollMachinePacketID.Descriptor instead. +func (DollMachinePacketID) EnumDescriptor() ([]byte, []int) { + return file_dollmachine_proto_rawDescGZIP(), []int{0} +} + +//移动 +type SMDollMachineMove struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Snid int32 `protobuf:"varint,1,opt,name=Snid,proto3" json:"Snid,omitempty"` + Id int32 `protobuf:"varint,2,opt,name=Id,proto3" json:"Id,omitempty"` //娃娃机标识 + Direction int32 `protobuf:"varint,3,opt,name=Direction,proto3" json:"Direction,omitempty"` // 1-前 2-后 3-左 4-右 +} + +func (x *SMDollMachineMove) Reset() { + *x = SMDollMachineMove{} + if protoimpl.UnsafeEnabled { + mi := &file_dollmachine_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SMDollMachineMove) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SMDollMachineMove) ProtoMessage() {} + +func (x *SMDollMachineMove) ProtoReflect() protoreflect.Message { + mi := &file_dollmachine_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 SMDollMachineMove.ProtoReflect.Descriptor instead. +func (*SMDollMachineMove) Descriptor() ([]byte, []int) { + return file_dollmachine_proto_rawDescGZIP(), []int{0} +} + +func (x *SMDollMachineMove) GetSnid() int32 { + if x != nil { + return x.Snid + } + return 0 +} + +func (x *SMDollMachineMove) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *SMDollMachineMove) GetDirection() int32 { + if x != nil { + return x.Direction + } + return 0 +} + +//下抓 +type SMDollMachineGrab struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TypeId int32 `protobuf:"varint,1,opt,name=TypeId,proto3" json:"TypeId,omitempty"` //1-弱力抓 2 -强力抓 3-必出抓 + Id int32 `protobuf:"varint,2,opt,name=Id,proto3" json:"Id,omitempty"` //娃娃机标识 + Snid int32 `protobuf:"varint,3,opt,name=Snid,proto3" json:"Snid,omitempty"` +} + +func (x *SMDollMachineGrab) Reset() { + *x = SMDollMachineGrab{} + if protoimpl.UnsafeEnabled { + mi := &file_dollmachine_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SMDollMachineGrab) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SMDollMachineGrab) ProtoMessage() {} + +func (x *SMDollMachineGrab) ProtoReflect() protoreflect.Message { + mi := &file_dollmachine_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 SMDollMachineGrab.ProtoReflect.Descriptor instead. +func (*SMDollMachineGrab) Descriptor() ([]byte, []int) { + return file_dollmachine_proto_rawDescGZIP(), []int{1} +} + +func (x *SMDollMachineGrab) GetTypeId() int32 { + if x != nil { + return x.TypeId + } + return 0 +} + +func (x *SMDollMachineGrab) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *SMDollMachineGrab) GetSnid() int32 { + if x != nil { + return x.Snid + } + return 0 +} + +//返回下抓结果 +type MSDollMachineGrab struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Snid int32 `protobuf:"varint,1,opt,name=Snid,proto3" json:"Snid,omitempty"` + Id int32 `protobuf:"varint,2,opt,name=Id,proto3" json:"Id,omitempty"` //娃娃机标识 + Result int32 `protobuf:"varint,3,opt,name=Result,proto3" json:"Result,omitempty"` //1-中奖 其他未中奖 +} + +func (x *MSDollMachineGrab) Reset() { + *x = MSDollMachineGrab{} + if protoimpl.UnsafeEnabled { + mi := &file_dollmachine_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MSDollMachineGrab) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MSDollMachineGrab) ProtoMessage() {} + +func (x *MSDollMachineGrab) ProtoReflect() protoreflect.Message { + mi := &file_dollmachine_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 MSDollMachineGrab.ProtoReflect.Descriptor instead. +func (*MSDollMachineGrab) Descriptor() ([]byte, []int) { + return file_dollmachine_proto_rawDescGZIP(), []int{2} +} + +func (x *MSDollMachineGrab) GetSnid() int32 { + if x != nil { + return x.Snid + } + return 0 +} + +func (x *MSDollMachineGrab) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *MSDollMachineGrab) GetResult() int32 { + if x != nil { + return x.Result + } + return 0 +} + +//返回所有娃娃机连接 +type MSDollMachineList struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*DollMachine `protobuf:"bytes,1,rep,name=data,proto3" json:"data,omitempty"` +} + +func (x *MSDollMachineList) Reset() { + *x = MSDollMachineList{} + if protoimpl.UnsafeEnabled { + mi := &file_dollmachine_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MSDollMachineList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MSDollMachineList) ProtoMessage() {} + +func (x *MSDollMachineList) ProtoReflect() protoreflect.Message { + mi := &file_dollmachine_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 MSDollMachineList.ProtoReflect.Descriptor instead. +func (*MSDollMachineList) Descriptor() ([]byte, []int) { + return file_dollmachine_proto_rawDescGZIP(), []int{3} +} + +func (x *MSDollMachineList) GetData() []*DollMachine { + if x != nil { + return x.Data + } + return nil +} + +type DollMachine struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` + Status int32 `protobuf:"varint,2,opt,name=Status,proto3" json:"Status,omitempty"` //1-空闲 2-无法使用 +} + +func (x *DollMachine) Reset() { + *x = DollMachine{} + if protoimpl.UnsafeEnabled { + mi := &file_dollmachine_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DollMachine) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DollMachine) ProtoMessage() {} + +func (x *DollMachine) ProtoReflect() protoreflect.Message { + mi := &file_dollmachine_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 DollMachine.ProtoReflect.Descriptor instead. +func (*DollMachine) Descriptor() ([]byte, []int) { + return file_dollmachine_proto_rawDescGZIP(), []int{4} +} + +func (x *DollMachine) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *DollMachine) GetStatus() int32 { + if x != nil { + return x.Status + } + return 0 +} + +var File_dollmachine_proto protoreflect.FileDescriptor + +var file_dollmachine_proto_rawDesc = []byte{ + 0x0a, 0x11, 0x64, 0x6f, 0x6c, 0x6c, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x12, 0x0b, 0x64, 0x6f, 0x6c, 0x6c, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, + 0x22, 0x55, 0x0a, 0x11, 0x53, 0x4d, 0x44, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, + 0x65, 0x4d, 0x6f, 0x76, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x69, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x44, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x44, 0x69, + 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4f, 0x0a, 0x11, 0x53, 0x4d, 0x44, 0x6f, 0x6c, + 0x6c, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x47, 0x72, 0x61, 0x62, 0x12, 0x16, 0x0a, 0x06, + 0x54, 0x79, 0x70, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x54, 0x79, + 0x70, 0x65, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x6e, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x69, 0x64, 0x22, 0x4f, 0x0a, 0x11, 0x4d, 0x53, 0x44, 0x6f, + 0x6c, 0x6c, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x47, 0x72, 0x61, 0x62, 0x12, 0x12, 0x0a, + 0x04, 0x53, 0x6e, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x6e, 0x69, + 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, + 0x64, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x41, 0x0a, 0x11, 0x4d, 0x53, 0x44, + 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2c, + 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, + 0x6f, 0x6c, 0x6c, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2e, 0x44, 0x6f, 0x6c, 0x6c, 0x4d, + 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x35, 0x0a, 0x0b, + 0x44, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x2a, 0xaf, 0x01, 0x0a, 0x13, 0x44, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x63, 0x68, + 0x69, 0x6e, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x18, 0x50, + 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x4d, 0x44, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x63, 0x68, + 0x69, 0x6e, 0x65, 0x5a, 0x65, 0x72, 0x6f, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, + 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x4d, 0x44, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, + 0x65, 0x4d, 0x6f, 0x76, 0x65, 0x10, 0xb9, 0x17, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, + 0x45, 0x54, 0x5f, 0x53, 0x4d, 0x44, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, + 0x47, 0x72, 0x61, 0x62, 0x10, 0xba, 0x17, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, + 0x54, 0x5f, 0x4d, 0x53, 0x44, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x47, + 0x72, 0x61, 0x62, 0x10, 0xbb, 0x17, 0x12, 0x1d, 0x0a, 0x18, 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, + 0x5f, 0x4d, 0x53, 0x44, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x4c, 0x69, + 0x73, 0x74, 0x10, 0xbc, 0x17, 0x42, 0x2b, 0x5a, 0x29, 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, 0x64, 0x6f, 0x6c, 0x6c, 0x6d, 0x61, 0x63, 0x68, 0x69, + 0x6e, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_dollmachine_proto_rawDescOnce sync.Once + file_dollmachine_proto_rawDescData = file_dollmachine_proto_rawDesc +) + +func file_dollmachine_proto_rawDescGZIP() []byte { + file_dollmachine_proto_rawDescOnce.Do(func() { + file_dollmachine_proto_rawDescData = protoimpl.X.CompressGZIP(file_dollmachine_proto_rawDescData) + }) + return file_dollmachine_proto_rawDescData +} + +var file_dollmachine_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_dollmachine_proto_msgTypes = make([]protoimpl.MessageInfo, 5) +var file_dollmachine_proto_goTypes = []interface{}{ + (DollMachinePacketID)(0), // 0: dollmachine.DollMachinePacketID + (*SMDollMachineMove)(nil), // 1: dollmachine.SMDollMachineMove + (*SMDollMachineGrab)(nil), // 2: dollmachine.SMDollMachineGrab + (*MSDollMachineGrab)(nil), // 3: dollmachine.MSDollMachineGrab + (*MSDollMachineList)(nil), // 4: dollmachine.MSDollMachineList + (*DollMachine)(nil), // 5: dollmachine.DollMachine +} +var file_dollmachine_proto_depIdxs = []int32{ + 5, // 0: dollmachine.MSDollMachineList.data:type_name -> dollmachine.DollMachine + 1, // [1:1] is the sub-list for method output_type + 1, // [1:1] is the sub-list for method input_type + 1, // [1:1] is the sub-list for extension type_name + 1, // [1:1] is the sub-list for extension extendee + 0, // [0:1] is the sub-list for field type_name +} + +func init() { file_dollmachine_proto_init() } +func file_dollmachine_proto_init() { + if File_dollmachine_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_dollmachine_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SMDollMachineMove); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dollmachine_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SMDollMachineGrab); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dollmachine_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MSDollMachineGrab); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dollmachine_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MSDollMachineList); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dollmachine_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DollMachine); 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_dollmachine_proto_rawDesc, + NumEnums: 1, + NumMessages: 5, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_dollmachine_proto_goTypes, + DependencyIndexes: file_dollmachine_proto_depIdxs, + EnumInfos: file_dollmachine_proto_enumTypes, + MessageInfos: file_dollmachine_proto_msgTypes, + }.Build() + File_dollmachine_proto = out.File + file_dollmachine_proto_rawDesc = nil + file_dollmachine_proto_goTypes = nil + file_dollmachine_proto_depIdxs = nil +} diff --git a/protocol/dollmachine/dollmachine.proto b/protocol/dollmachine/dollmachine.proto new file mode 100644 index 0000000..450795e --- /dev/null +++ b/protocol/dollmachine/dollmachine.proto @@ -0,0 +1,43 @@ +syntax = "proto3"; +package dollmachine; +option go_package = "mongo.games.com/game/protocol/dollmachine"; + +//S-GAME M-娃娃机主机 +//娃娃机协议 +enum DollMachinePacketID { + PACKET_SMDollMachineZero = 0; + PACKET_SMDollMachineMove = 3001; + PACKET_SMDollMachineGrab = 3002; + PACKET_MSDollMachineGrab = 3003; + PACKET_MSDollMachineList = 3004; +} + +//移动 +message SMDollMachineMove{ + int32 Snid = 1; + int32 Id = 2; //娃娃机标识 + int32 Direction = 3; // 1-前 2-后 3-左 4-右 +} + +//下抓 +message SMDollMachineGrab{ + int32 TypeId = 1;//1-弱力抓 2 -强力抓 3-必出抓 + int32 Id =2; //娃娃机标识 + int32 Snid = 3; +} + +//返回下抓结果 +message MSDollMachineGrab{ + int32 Snid = 1; + int32 Id = 2; //娃娃机标识 + int32 Result = 3;//1-中奖 其他未中奖 +} + +//返回所有娃娃机连接 +message MSDollMachineList{ + repeated DollMachine data = 1; +} +message DollMachine{ + int32 Id = 1; + int32 Status = 2; //1-空闲 2-无法使用 +} \ No newline at end of file diff --git a/xlsx/DB_GameFree.xlsx b/xlsx/DB_GameFree.xlsx index 0e61304..27a3274 100644 Binary files a/xlsx/DB_GameFree.xlsx and b/xlsx/DB_GameFree.xlsx differ diff --git a/xlsx/DB_GameRule.xlsx b/xlsx/DB_GameRule.xlsx index 31ead19..eddc77e 100644 Binary files a/xlsx/DB_GameRule.xlsx and b/xlsx/DB_GameRule.xlsx differ