Kaynağa Gözat

提交初版协议

johnclot69 1 yıl önce
ebeveyn
işleme
a2ba2ebcfc

+ 39 - 10
Config/Proto/CommonProto_CS_10001.proto

@@ -19,20 +19,49 @@ message UnitInfo
 	MoveInfo MoveInfo = 7;
 }
 
+message ActInfo
+{
+	int32 Card = 1;		// 碰杠的牌,吃为顺子第一张
+	int32 Type = 2;		// 1.明杠(碰过的牌杠) 2.暗杠(摸牌直接杠) 3.碰 4.吃
+	int64 PlayerId = 3;	// 操作谁家的牌
+}
+
+message CardInfo
+{
+	repeated int32 RemainCards = 1;	// 玩家手牌
+	int32 RemainCardsNum = 2;		// 玩家手牌数量
+	repeated int32 DisCards = 3;	// 玩家打出的牌集合
+	repeated ActInfo UsedInfo = 4;	// 存储玩家吃碰杠集合
+	repeated int32 Acts = 5;		// 玩家可操作动作[吃 碰 杠 胡 过] 可操作为1 不可操作为0 eg:[1,1,1,1,1]
+	repeated ActInfo ActInfo = 6;	// 玩家可操作动作牌列表
+}
+
 message PlayerInfo
 {
-  int64 id = 1;
-  string name = 2;
-  int32 sex = 3;
-  int64 exp = 4;
-  int32 level = 5;
-  int32 vip = 6;
+	int64 id = 1;
+	string name = 2;
+	int32 sex = 3;
+	int64 exp = 4;
+	int32 level = 5;
+	int32 vip = 6;
+	int32 pos = 7;		// 玩家位置(0东 1南 2西 3北)
+	int32 state = 8;	// 玩家状态(0未准备 1已准备 2游戏中 3结束)
+	bool isAuto = 9;	// 是否托管
+	CardInfo cardInfo = 10;	// 玩家牌信息
 }
 
 message RoomInfo
 {
-	string RoomId = 1;	// 房间号
-	int32 Type = 2;		// 房间玩法类型 1:麻将 2:斗地主
-	int64 OwnerId = 3;	// 房主playerId
-	repeated PlayerInfo PlayerList = 4;		// 房间玩家列表
+	string RoomId = 1;					// 房间号
+	int32 Type = 2;						// 房间玩法类型 1:黄冈晃晃
+	int64 OwnerId = 3;					// 房主playerId
+	int32 State = 4;					// 房间状态(0等待 1开局 2进行中 3已结束)
+	int32 Time = 5;						// 倒计时
+	int32 Rand1 = 6;					// 骰子1
+	int32 Rand2 = 7;					// 骰子2
+	int32 CardNum = 8;					// 牌库剩余数量
+	PlayerInfo MyInfo = 9;				// 自己数据
+	repeated PlayerInfo OtherInfo = 10;	// 其他玩家数据
+	int64 OpId = 11;					// 操作玩家id
+	int32 OpPos = 12;					// 操作玩家位置
 }

+ 74 - 1
Config/Proto/OuterMessage_C_30001.proto

@@ -213,11 +213,84 @@ message G2C_Kick // IResponse
 	string Message = 3;
 }
 
-message G2C_ReadySatrt // IActorMessage
+message G2C_ReadySatrtPush // IActorMessage
 {
 	int64 ReadySatrtTime = 1;	// x秒倒计时动画
 }
 
+message G2C_SatrtPush // IActorMessage
+{
+	RoomInfo info = 1;	// 房间信息
+}
+
+message G2C_DrawCardPush // IActorMessage
+{
+	int64 PlayerId = 1;				// 摸牌玩家id
+	int32 DrawCardPos = 2;			// 摸牌玩家位置
+	repeated int32 Acts = 3;		// 玩家可操作动作[吃 碰 杠 胡 过] 可操作为1 不可操作为0 eg:[1,1,1,1,1]
+	repeated ActInfo ActInfo = 4;	// 玩家可操作动作牌列表
+	int32 DrawCardsNum = 5;			// 摸牌人手牌数量
+	int32 CardNum = 6;				// 牌库剩余数量
+	int32 DrawCard = 7;				// 摸的牌(只有摸牌人自己有)
+	int32 Time = 8;
+}
+
+//ResponseType G2C_DisCard
+message C2G_DisCard // IRequest
+{
+	int32 RpcId = 1;
+}
+
+message G2C_DisCard // IResponse
+{
+	int32 RpcId = 1;
+	int32 Error = 2;
+	string Message = 3;
+}
+
+message G2C_DisCardPush // IActorMessage
+{
+	int64 PlayerId = 1;				// 出牌玩家id
+	int32 DisCardPos = 2;			// 出牌玩家位置
+	repeated int32 Acts = 3;		// 玩家可操作动作[吃 碰 杠 胡 过] 可操作为1 不可操作为0 eg:[1,1,1,1,1]
+	repeated ActInfo ActInfo = 4;	// 玩家可操作动作牌列表
+	int32 DisCardsNum = 5;			// 出牌人手牌数量
+	int32 DisCard = 6;				// 打出的牌
+	int32 Time = 7;
+}
+
+//ResponseType G2C_Operation
+message C2G_Operation // IRequest
+{
+	int32 RpcId = 1;
+	int32 OpType = 2;	// 1吃 2碰 3杠 4胡 5过
+}
+
+message G2C_Operation // IResponse
+{
+	int32 RpcId = 1;
+	int32 Error = 2;
+	string Message = 3;
+}
+
+message G2C_OperationPush // IActorMessage
+{
+	int32 OpType = 1;				// 1吃 2碰 3杠 4胡 5过
+	int64 DisPlayerId = 2;			// 出牌玩家id(被杠的玩家id(杠谁的))
+	int32 Card = 3;					// 操作的牌
+	int32 GangType = 4;				// 杠类型(1明杠  2暗杠)
+	int64 OpPlayerId = 5;			// 操作的玩家id
+	int32 OpPos = 6;				// 操作的玩家位置
+	int32 DisCardPos = 7;			// 出牌玩家位置
+	repeated int32 OpRemainCards = 8;	// 操作玩家手牌
+	int32 OpRemainCardsNum = 9;		// 操作玩家手牌数量
+	repeated int64 ClickHuId = 10;	// 点胡玩家list(-1:可胡玩家点击过)
+	repeated int32 Acts = 11;		// 玩家可操作动作[吃 碰 杠 胡 过] 可操作为1 不可操作为0 eg:[1,1,1,1,1]
+	repeated ActInfo ActInfo = 12;	// 玩家可操作动作牌列表(可杠牌列表 可吃牌列表)
+	int32 HuType = 13;				// 胡牌类型
+	int32 Time = 14;
+}
+
 message G2C_TestHotfixMessage // IMessage
 {
 	string Info = 1;