103 lines
3.2 KiB
Protocol Buffer
103 lines
3.2 KiB
Protocol Buffer
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; //玩家位置
|
|
} |