miduo_client/Assets/ManagedResources/~Lua/Message/RoomProto.proto

107 lines
3.2 KiB
Protocol Buffer
Raw Normal View History

2020-08-11 09:48:21 +08:00
package com.ljsd.jieling.protocols;
option optimize_for = SPEED;
import "CommonProto.proto";
message AgentInfo {
optional int32 playerUid = 1;
optional int32 curHp = 2;
optional int32 maxHp =3;
optional int32 camp =4; //阵营 区分敌我
optional int32 curXY =5; //所在位置
repeated FoodBuffer foodBuffers = 6; // buff
optional int32 reviveTime = 7; // 死亡复活剩余时间
repeated int32 dieList = 8; // 死亡计数(按顺序记录杀死自己的玩家uid)
repeated int32 killList = 9; // 杀人计数(按顺序记录自己杀死的玩家uid)
repeated int32 path = 10; // 路径图
}
//因为多个人在一个房间中战斗,需要实现实时的处理方案
//匹配进入的房间
message RoomMatchRequest{
optional int32 type = 1; //type 匹配游戏类型 1血战
}
//匹配应答
message RoomMatchResponse{
optional bool result = 1; //0 成功
optional int32 type = 2; //type 匹配游戏类型 1血战
}
//取消匹配,必须等待服务器应答成功后,客户端才能退出匹配界面,
//否则可能服务器端可能匹配成功,客户端退出了匹配模式
message RoomCancelMatchRequest{
optional int32 type = 1; //type 匹配游戏类型 1血战
}
message RoomCancelMatchResponse{
optional bool result = 1; //true 取消成功false 不能取消
optional int32 type = 2; //type 匹配游戏类型 1血战
}
message RoomMatchSuccessIndication{
optional int32 type =1;
optional SceneInfo sceneInfo =2; // 场景信息
}
//必须有准备过程防止因为机器性能原因导致,性能好的先进入游戏
message RoomStartGameReadyRequest{
optional int32 type = 1; //type 匹配游戏类型 1血战
}
//开始游戏应答
message RoomStartGameReadyResponse{
optional int32 type = 1; //type 匹配游戏类型 1血战
}
message RoomStartGameIndication{
optional int32 roomId = 1;
optional int32 type = 2; //type 匹配游戏类型 1血战
}
//获取全量信息
message RoomGetFullInfoResponse{
optional RoomMatchSuccessIndication roomMatchSuccessIndication =1;
}
//血战排行榜
message BloodRankResponse{
repeated BloodPersonInfo infos = 1;
optional int32 myRank = 2;
}
message RoomAddressIndication{
optional string address = 1 ;// 房间地址信息
optional int32 type = 2; //type 匹配游戏类型 1血战
}
message RoomLoginResponse{
optional RoomMatchSuccessIndication roomMatchSuccessIndication =1;
}
message BloodyScoreItemInfo{
optional int32 id =1;
optional int32 status = 2; // 领取状态标识 0 未领取 1已领取但未领取花钱的奖励 2已领取并且已领取花钱的奖励
}
message GetBloodyScoreInfoResponse{
optional int32 score = 1 ; // 积分
optional int32 hadBuy = 2; // 是否已购
repeated BloodyScoreItemInfo bloodyScoreItemInfo =3;
}
message BloodyTakeScoreRewardRequet{
optional int32 id = 1; // 奖励id -1代表点击一键领取
}
message BloodyTakeScoreRewardResponse{
optional Drop drop = 1;
repeated BloodyScoreItemInfo changeItemInfo =2; // 状态变化的信息
}
message BloodyScoreChangeIndication{
optional int32 myscore = 1 ;// 血战积分
}