|
| 1 | +syntax = "proto3"; |
| 2 | +package messages; |
| 3 | +import "vo.proto"; |
| 4 | + |
| 5 | +// 进入房间,断线重连 |
| 6 | +message CEnterRoom |
| 7 | +{ |
| 8 | + uint32 code = 1 ;//协议号 |
| 9 | + string invitecode= 2; //房间邀请码,每个私人局房间都有一个唯一的邀请码 |
| 10 | +} |
| 11 | + |
| 12 | +message SEnterRoom |
| 13 | +{ |
| 14 | + uint32 code = 1 ;//协议号 |
| 15 | + RoomData roominfo = 2;//房间信息 |
| 16 | + repeated RoomUser userinfo = 3;//房间内玩家信息 |
| 17 | + repeated RoomCards cardinfo = 4;//玩家牌面数据 |
| 18 | + RoomVote voteinfo = 5;//投票中时的投票数据 |
| 19 | + uint32 error = 6 ; // 错误码 |
| 20 | +} |
| 21 | + |
| 22 | +// 离开房间 |
| 23 | +message CLeave |
| 24 | +{ |
| 25 | + uint32 code = 1 ;//协议号 |
| 26 | +} |
| 27 | +message SLeave |
| 28 | +{ |
| 29 | + uint32 code = 1 ;//协议号 |
| 30 | + uint32 seat = 2; //玩家选择的座位号 |
| 31 | + uint32 error= 3 ; // 错误码 |
| 32 | +} |
| 33 | + |
| 34 | +// 准备游戏 |
| 35 | +message CReady |
| 36 | +{ |
| 37 | + uint32 code = 1 ;//协议号 |
| 38 | + bool ready = 2; //true准备,false取消 |
| 39 | +} |
| 40 | +message SReady |
| 41 | +{ |
| 42 | + uint32 code = 1 ;//协议号 |
| 43 | + uint32 seat = 2; //准备游戏的玩家座位 |
| 44 | + bool ready= 3; //true准备,false取消 |
| 45 | + uint32 error= 4 ; // 错误码 |
| 46 | +} |
| 47 | + |
| 48 | +// 创建房间 |
| 49 | +message CCreateRoom |
| 50 | +{ |
| 51 | + uint32 code = 1 ;//协议号 |
| 52 | + string rname = 2; //房间名字 |
| 53 | + uint32 rtype = 3; //房间类型,里面定义低注等 |
| 54 | + uint32 ante = 4; //底分 |
| 55 | + uint32 round = 5; //牌局数 |
| 56 | + uint32 payment = 6; //付费方式0=房主付费,1=AA付费 |
| 57 | + uint32 pao = 7; //1=大牌玩法,0=不能炮胡 |
| 58 | + uint32 count = 8; //房间人数(2,4) |
| 59 | +} |
| 60 | +// 返回房间数据, |
| 61 | +message SCreateRoom |
| 62 | +{ |
| 63 | + uint32 code = 1 ;//协议号 |
| 64 | + RoomData rdata = 2; //房间数据 |
| 65 | + uint32 error = 3 ; // 错误码 |
| 66 | +} |
| 67 | + |
| 68 | +// 踢人 |
| 69 | +message CKick |
| 70 | +{ |
| 71 | + uint32 code = 1 ;//协议号 |
| 72 | + uint32 seat = 2; //被踢的玩家座位 |
| 73 | +} |
| 74 | +message SKick |
| 75 | +{ |
| 76 | + uint32 code = 1 ;//协议号 |
| 77 | + uint32 seat = 2; //被踢的玩家座位 |
| 78 | + uint32 userid = 3; //被踢的玩家id |
| 79 | + uint32 result = 4; //0失败,1房主T人,2房间被解散 |
| 80 | + uint32 error = 5 ; // 错误码 |
| 81 | +} |
| 82 | + |
| 83 | +// 其他玩家进入房间 |
| 84 | +message SCamein |
| 85 | +{ |
| 86 | + uint32 code = 1 ;//协议号 |
| 87 | + RoomUser userinfo= 2;// 玩家的信息 |
| 88 | +} |
| 89 | + |
| 90 | +//开始游戏,打骰,选庄,选赖,发牌,包含两个骰子数字 |
| 91 | +message SGamestart |
| 92 | +{ |
| 93 | + uint32 code = 1 ;//协议号 |
| 94 | + uint32 dice = 2; //1-6的骰子数,如63表示6,3 |
| 95 | + uint32 dealer= 3; //庄家位置 |
| 96 | + uint32 laipi = 4; //赖皮牌值 |
| 97 | + uint32 laizi = 5; //赖子牌值 |
| 98 | + repeated uint32 cards = 6; //手牌13张,庄家14张 |
| 99 | + uint32 value = 7; //是否杠胡,掩码,庄家操作提示 |
| 100 | +} |
| 101 | + |
| 102 | +//抓牌 |
| 103 | +message SDraw |
| 104 | +{ |
| 105 | + uint32 code = 1 ;//协议号 |
| 106 | + uint32 seat = 2; //摸牌玩家的座位号(1-4) |
| 107 | + uint32 card = 3; //所摸的牌,不是自己时为空 |
| 108 | + uint32 value= 4; //掩码 |
| 109 | + uint32 kong = 5; //1:杠后摸牌0:普通摸牌 |
| 110 | +} |
| 111 | + |
| 112 | +// 出牌 |
| 113 | +message CDiscard |
| 114 | +{ |
| 115 | + uint32 code = 1 ;//协议号 |
| 116 | + uint32 card = 2; //牌值 |
| 117 | +} |
| 118 | + |
| 119 | +//玩家出牌广播 |
| 120 | +message SDiscard |
| 121 | +{ |
| 122 | + uint32 code = 1 ;//协议号 |
| 123 | + uint32 seat = 2; //出牌玩家的座位号(1-4) |
| 124 | + uint32 card = 3; //牌值 |
| 125 | + uint32 value= 4; //碰杠胡掩码 |
| 126 | + uint32 error= 5 ; // 错误码 |
| 127 | +} |
| 128 | + |
| 129 | +// 玩家碰杠操作 |
| 130 | +message COperate |
| 131 | +{ |
| 132 | + uint32 code = 1 ;//协议号 |
| 133 | + uint32 card = 2; //牌值 |
| 134 | + uint32 value= 3; //提交碰杠相应的单个掩码值 |
| 135 | +} |
| 136 | + |
| 137 | +// 碰杠广播 ,胡牌不在这个接口返回 |
| 138 | +message SOperate |
| 139 | +{ |
| 140 | + uint32 code = 1 ;//协议号 |
| 141 | + uint32 seat = 2; // 碰牌和杠牌玩家的座位号 |
| 142 | + uint32 beseat = 3; // 被碰杠胡的玩家座位号 |
| 143 | + uint32 card = 4; // 被碰或杠牌的牌值 |
| 144 | + uint32 value = 5; // 碰或值杠,掩码 |
| 145 | + uint32 discontinue= 6; // 抢杠 |
| 146 | + uint32 error = 7 ; // 错误码 |
| 147 | +} |
| 148 | + |
| 149 | +// 处理前面有玩家胡牌优先操作,如果该玩家跳过胡牌,此协议向有碰和明杠的玩家主动发送 |
| 150 | +message SPengKong |
| 151 | +{ |
| 152 | + uint32 code = 1 ;//协议号 |
| 153 | + uint32 seat = 2; // 出牌玩家的座位号(1-4) |
| 154 | + uint32 card = 3; // 牌值 |
| 155 | + uint32 value= 4; // 碰杠胡,掩码表示 |
| 156 | +} |
| 157 | + |
| 158 | +// 结算广播接口,游戏结束 |
| 159 | +message SGameover |
| 160 | +{ |
| 161 | + uint32 code = 1 ;//协议号 |
| 162 | + uint32 roomid = 2;//牌局id |
| 163 | + uint32 round = 3;//剩余牌局数 |
| 164 | + uint32 expire = 4;//牌局设定的时间(牌局存在的时间) |
| 165 | + uint32 huType = 5;//0:黄庄,1:自摸,2:炮胡 |
| 166 | + uint32 paoSeat= 6;//放炮玩家座位号 |
| 167 | + uint32 seat = 7;//胡牌玩家座位号 |
| 168 | + uint32 card = 8;//胡牌的牌值(玩家胡的是哪张牌) |
| 169 | + repeated RoomOver data = 9;//结算数据 |
| 170 | +} |
0 commit comments