272 lines
6.6 KiB
Protocol Buffer
272 lines
6.6 KiB
Protocol Buffer
|
syntax = "proto3";
|
|||
|
package pb;
|
|||
|
option go_package = "common/proto/pb";
|
|||
|
|
|||
|
import "code.proto";
|
|||
|
|
|||
|
// 奖励档位
|
|||
|
enum ColorPrizeArea
|
|||
|
{
|
|||
|
CPA_Single_0 = 0; // 单色投注区域开出单色
|
|||
|
CPA_Single_1 = 1; // 单色投注区域开出双色
|
|||
|
CPA_Single_2 = 2; // 单色投注区域开出三色
|
|||
|
CPA_Double = 3; // 双色投注区域
|
|||
|
CPA_Three = 4; // 三色投注区域
|
|||
|
}
|
|||
|
|
|||
|
// 投注区域赔率范围配置信息
|
|||
|
message ColorPrizeAreaRange
|
|||
|
{
|
|||
|
ColorPrizeArea pos = 1; // 下注区域为单色区0-2时,该值表明是单色还是双色,三色不同的赔率
|
|||
|
int64 minMul = 2;
|
|||
|
int64 maxMul = 3;
|
|||
|
}
|
|||
|
|
|||
|
// color玩法配置信息
|
|||
|
message ColorRoomConfig
|
|||
|
{
|
|||
|
repeated int64 betList = 3; // 下注档位
|
|||
|
repeated ColorPrizeAreaRange mulRangeConfig = 5; // 赔率显示
|
|||
|
}
|
|||
|
|
|||
|
//骰子颜色类型
|
|||
|
enum ColorType
|
|||
|
{
|
|||
|
CT_Yellow = 0; // 黄色
|
|||
|
CT_White = 1; // 白色
|
|||
|
CT_Pink = 2; // 粉色
|
|||
|
CT_Blue = 3; // 蓝色
|
|||
|
CT_Red = 4; // 红色
|
|||
|
CT_Green = 5; // 绿色
|
|||
|
}
|
|||
|
|
|||
|
// 押注区域
|
|||
|
enum ColorBetArea
|
|||
|
{
|
|||
|
CBA_Yellow = 0; // 黄色
|
|||
|
CBA_White = 1; // 白色
|
|||
|
CBA_Pink = 2; // 粉色
|
|||
|
CBA_Blue = 3; // 蓝色
|
|||
|
CBA_Red = 4; // 红色
|
|||
|
CBA_Green = 5; // 绿色
|
|||
|
|
|||
|
CBA_Yellow2 = 6; // 双黄色
|
|||
|
CBA_White2 = 7; // 双白色
|
|||
|
CBA_Pink2 = 8; // 双粉色
|
|||
|
CBA_Blue2 = 9; // 双蓝色
|
|||
|
CBA_Red2 = 10; // 双红色
|
|||
|
CBA_Green2 = 11; // 双绿色
|
|||
|
|
|||
|
CBA_Yellow3 = 12; // 三黄色
|
|||
|
CBA_White3 = 13; // 三白色
|
|||
|
CBA_Pink3 = 14; // 三粉色
|
|||
|
CBA_Blue3 = 15; // 三蓝色
|
|||
|
CBA_Red3 = 16; // 三红色
|
|||
|
CBA_Green3 = 17; // 三绿色
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
//游戏阶段
|
|||
|
enum ColorGameStatus
|
|||
|
{
|
|||
|
CGS_WaitStart = 0; // 等待准备
|
|||
|
CGS_Start = 1; // 开始
|
|||
|
CGS_Betting = 2; // 下注
|
|||
|
CGS_BetEnd = 3; // 下注结束
|
|||
|
CGS_OpenThreeDice = 4; // 开三色
|
|||
|
CGS_Settle = 5; // 结算
|
|||
|
}
|
|||
|
|
|||
|
// 等待状态下房间显示信息
|
|||
|
message ColorRoomWaitStart
|
|||
|
{
|
|||
|
NtfColorTrend Trends = 1; // 路途显示
|
|||
|
}
|
|||
|
|
|||
|
// 开始房间显示信息
|
|||
|
message ColorRoomStart
|
|||
|
{
|
|||
|
NtfColorGameStart start = 1;
|
|||
|
NtfColorTrend Trends = 2; // 路途显示
|
|||
|
}
|
|||
|
|
|||
|
// 下注显示信息
|
|||
|
message ColorRoomBetting
|
|||
|
{
|
|||
|
NtfColorBetAreaInfo betAreaInfo = 1; // 每个投注区域的下注人数,下注金额显示
|
|||
|
}
|
|||
|
|
|||
|
// 结束下注显示信息
|
|||
|
message ColorRoomEndBet
|
|||
|
{
|
|||
|
NtfColorEndBetting areaMul = 1; // 结束下注后,更新每个投注区域的赔率
|
|||
|
NtfColorBetAreaInfo betAreaInfo = 2; // 每个投注区域的下注人数,下注金额显示
|
|||
|
NtfColorBigUser bigUser = 3; // 大客数据
|
|||
|
}
|
|||
|
|
|||
|
// 开骰子显示信息
|
|||
|
message ColorRoomOpenThreeDice
|
|||
|
{
|
|||
|
NtfColorOpenThreeDice dices = 1;
|
|||
|
}
|
|||
|
|
|||
|
// 结算信息
|
|||
|
message ColorRoomSettle
|
|||
|
{
|
|||
|
NtfColorSettle settle = 1;
|
|||
|
}
|
|||
|
|
|||
|
// 进房间发送房间当前所有信息及状态
|
|||
|
message NtfColorRoomInfo
|
|||
|
{
|
|||
|
ColorGameStatus status = 1;
|
|||
|
int64 endTime = 2; // 该状态结束时间
|
|||
|
ColorRoomConfig config = 101; // 房间配置
|
|||
|
ColorUser user = 100;
|
|||
|
ColorRoomWaitStart waitStart = 3; // 等待状态房间数据
|
|||
|
ColorRoomStart start = 4;
|
|||
|
ColorRoomBetting betting = 5;
|
|||
|
ColorRoomEndBet endBet = 6;
|
|||
|
ColorRoomOpenThreeDice openThreeDice = 7;
|
|||
|
ColorRoomSettle settle = 8;
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
message NtfColorGameStart
|
|||
|
{
|
|||
|
int64 endTime = 1; // 倒计时3秒后游戏开始,endTime = statusTime+3秒
|
|||
|
int64 jackpot = 2; // jackpot池
|
|||
|
}
|
|||
|
|
|||
|
message NtfColorBetting
|
|||
|
{
|
|||
|
int64 endTime = 1; // 结束时间
|
|||
|
}
|
|||
|
|
|||
|
message ReqColorBetting
|
|||
|
{
|
|||
|
ColorBetArea area = 1;
|
|||
|
int64 bet = 2;
|
|||
|
}
|
|||
|
|
|||
|
message RspColorBetting
|
|||
|
{
|
|||
|
ErrCode code = 1;
|
|||
|
ColorBetAreaInfo areaInfo = 2;
|
|||
|
}
|
|||
|
|
|||
|
message ColorBetAreaInfo
|
|||
|
{
|
|||
|
ColorBetArea area = 1; // 投注区域
|
|||
|
int64 totalBet = 2; // 所有玩家总投注金额
|
|||
|
int32 playerNum = 3; // 投注该区域人数
|
|||
|
int64 myBet = 4; // 我的投注金额
|
|||
|
}
|
|||
|
|
|||
|
// 更新投注区域信息
|
|||
|
message NtfColorBetAreaInfo
|
|||
|
{
|
|||
|
repeated ColorBetAreaInfo areaInfos = 1;
|
|||
|
}
|
|||
|
|
|||
|
// 奖励类型
|
|||
|
enum ColorPrizeType
|
|||
|
{
|
|||
|
CPT_Normal = 0; // 普通奖励
|
|||
|
CPT_Big = 1; // 爆奖
|
|||
|
CPT_Jackpot = 2; // jackpot奖
|
|||
|
}
|
|||
|
|
|||
|
// 投注区域实际赔率,奖励类型
|
|||
|
message ColorBetAreaMul
|
|||
|
{
|
|||
|
ColorBetArea area = 1; // 区域位置
|
|||
|
ColorPrizeArea prizeArea = 2; // 奖励档位
|
|||
|
ColorPrizeType prizeType = 3; // 奖励类型
|
|||
|
int64 mul = 4; // 赔率
|
|||
|
}
|
|||
|
|
|||
|
// 结束投注
|
|||
|
message NtfColorEndBetting
|
|||
|
{
|
|||
|
int64 endTime = 1; // 结束时间
|
|||
|
repeated ColorBetAreaMul areaMul = 2; // 更新区域实际赔率
|
|||
|
int64 jackpot = 3; // 下注结束,更新jackpot值
|
|||
|
}
|
|||
|
|
|||
|
message NtfColorOpenThreeDice
|
|||
|
{
|
|||
|
repeated ColorType color = 1; // 骰子开出颜色 3个
|
|||
|
int32 aniRouteIndex = 3; // 动画路径
|
|||
|
repeated ColorBetArea winArea = 4; // 中奖区域高亮
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// 玩家结算信息
|
|||
|
message NtfColorSettle
|
|||
|
{
|
|||
|
message UserBetAreaMul
|
|||
|
{
|
|||
|
ColorBetAreaMul areaMul = 1;
|
|||
|
int64 bet = 2; // 玩家在该区域投注金额
|
|||
|
int64 win = 3; // 该区域税前赢钱
|
|||
|
int64 realWin = 4; // 税后赢钱
|
|||
|
}
|
|||
|
repeated UserBetAreaMul userAreaWin = 1; // 每个投注区域的下注及输赢
|
|||
|
|
|||
|
repeated ColorType threeDice = 2; // 骰子开出颜色
|
|||
|
int64 totalWin = 3; // 总输赢,税后包含本金
|
|||
|
int64 totalBet = 4; // 总投注
|
|||
|
int64 totalWinBaseBet = 6; // 赢钱区域的总投注
|
|||
|
int64 tax = 5; // 税
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//游戏中几个玩家的数据
|
|||
|
message ColorUser {
|
|||
|
string Nick = 1; // 用户昵称
|
|||
|
string Head = 2; // 头像
|
|||
|
int64 Score = 3; // 分数
|
|||
|
int32 SeatId = 4; //在场景中的座位id
|
|||
|
int64 UserID = 5; //用户ID
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// 结束下注,更新大客投注信息
|
|||
|
message NtfColorBigUser
|
|||
|
{
|
|||
|
repeated ColorBigUser bigUser = 34; // 大客投注
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// 路途展示
|
|||
|
message NtfColorTrend
|
|||
|
{
|
|||
|
message ColorRate
|
|||
|
{
|
|||
|
ColorType color = 1;
|
|||
|
int32 rate = 2;
|
|||
|
}
|
|||
|
repeated ColorRate colorRate = 1; // 最近30局各颜色中奖概率
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// 赢钱或下注最多的6个玩家
|
|||
|
message ColorBigUser
|
|||
|
{
|
|||
|
string nickName = 5; //名字
|
|||
|
string avatar = 2;
|
|||
|
int64 winChips = 1; // 赢取金币
|
|||
|
repeated int64 areaId = 3; // 赢钱区域(前6个)
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
// 系统维护或流局
|
|||
|
message NtfColorMaintain
|
|||
|
{
|
|||
|
string msg = 2; // 维护消息
|
|||
|
int64 gold = 3; // 玩家金币重置为该值
|
|||
|
}
|