103 lines
2.9 KiB
Protocol Buffer
103 lines
2.9 KiB
Protocol Buffer
syntax = "proto3";
|
|
package pushcoin;
|
|
option go_package = "mongo.games.com/game/protocol/pushcoin";
|
|
|
|
// 5670~5679
|
|
enum PushCoinPacketID {
|
|
PACKET_PushCoin_ZERO = 0;// 弃用消息号
|
|
PACKET_SCPushCoinRoomInfo = 5670; // 房间信息
|
|
PACKET_SCPushCoinRoomState = 5671; // 房间状态
|
|
PACKET_CSPushCoinPlayerOp = 5672; // 玩家操作
|
|
PACKET_SCPushCoinPlayerOp = 5673; // 玩家操作返回
|
|
}
|
|
|
|
//房间信息
|
|
//PACKET_SCPushCoinRoomInfo
|
|
message SCPushCoinRoomInfo {
|
|
int32 RoomId = 1; //房间id
|
|
int32 GameId = 2; //游戏id
|
|
int32 RoomMode = 3; //游戏模式
|
|
repeated int32 Params = 4; //规则参数
|
|
int32 State = 5; //房间当前状态
|
|
int32 TimeOut = 6; //等待剩余时间 单位:秒
|
|
repeated PushCoinPlayerData Players = 7; //房间内的玩家信息
|
|
repeated ExchangeInfo ExchangeList = 8; //兑换信息
|
|
repeated DrawInfo DrawList = 9; //抽奖信息
|
|
}
|
|
|
|
message ItemInfo{
|
|
int32 ItemId = 1; //道具id
|
|
int32 ItemNum = 2; //道具数量
|
|
}
|
|
|
|
message ExchangeInfo{
|
|
int32 Id = 1; //兑换id
|
|
repeated ItemInfo Cost = 2; //消耗道具
|
|
repeated ItemInfo Gain = 3; //获得道具
|
|
int32 ShakeTimes = 4; //获得震动次数
|
|
}
|
|
|
|
message DrawInfo{
|
|
int32 Id = 1; //抽奖id
|
|
int32 ItemId = 2; //道具id
|
|
int32 ItemNum = 3; //道具数量
|
|
int64 Coin = 4; //价值
|
|
}
|
|
|
|
message PushCoinPlayerData {
|
|
string Name = 1; //名字
|
|
int32 SnId = 2; //账号
|
|
int32 Head = 3; //头像
|
|
int32 Sex = 4; //性别
|
|
int64 Coin = 5; //金币
|
|
int32 Flag = 6; //二进制标记 第一位:是否掉线(0:在线 1:掉线) 第二位:是否准备(0:未准备 1:已准备)
|
|
repeated string Params = 7; //其他数据 如:ip 等
|
|
int32 VIP = 8;
|
|
int32 RoleId = 9; //使用中的角色id
|
|
int64 Level = 10; //玩家等级
|
|
int64 Exp = 11; //玩家经验
|
|
int32 SkinId = 12; //皮肤id
|
|
int32 ShakeTimes = 13; //可震动次数
|
|
int64 BaseCoin = 14; //当前底分(单次投币金额)
|
|
int64 PowerLine = 15; // 当前能量值
|
|
int64 PowerLineMax = 16; // 能量值上限
|
|
int64 RefreshTimes = 17; // 刷新次数
|
|
}
|
|
|
|
//房间状态
|
|
//PACKET_SCPushCoinRoomState
|
|
message SCPushCoinRoomState {
|
|
int32 State = 1; //房间当前状态
|
|
int32 SubState = 2; //房间当前子状态
|
|
repeated int32 Params = 3; //状态参数
|
|
}
|
|
|
|
//玩家操作
|
|
//PACKET_CSPushCoinPlayerOp
|
|
message CSPushCoinPlayerOp {
|
|
OpCodes OpCode = 1;
|
|
repeated int64 OpParam = 2;
|
|
}
|
|
|
|
enum OpCodes {
|
|
OP_Zero = 0;
|
|
OP_Bet = 1; // 下注 [下注金额]
|
|
OP_Gain = 2; // 得分 [得分金额]
|
|
OP_Shake = 3; // 震动 [消耗次数]
|
|
OP_Refresh = 4; // 刷新 [桌面金额]
|
|
OP_Exchange = 5; // 兑换 [兑换id]
|
|
OP_Draw = 6; // 抽奖 [抽奖id]
|
|
}
|
|
|
|
enum OpResultCode {
|
|
OPRC_Success = 0; //成功
|
|
OPRC_Error = 1; //失败
|
|
}
|
|
|
|
//PACKET_SCPushCoinPlayerOp
|
|
message SCPushCoinPlayerOp {
|
|
OpResultCode OpRetCode = 1;
|
|
OpCodes OpCode = 2;
|
|
ExchangeInfo Exchange = 3; // 兑换信息,加到背包
|
|
DrawInfo Draw = 4; // 抽奖信息,掉落到桌面
|
|
} |