import "client2world_msg_type.proto";
import "msg_type_def.proto";
import "msg_info_def.proto";

package client2world_protocols;

// 装填记录
message EquipRecord
{
	optional string nickName = 1;

	// 装填数量
	optional int32 equipCount = 2;

	// 装填时间
	optional int32 time = 3;

	// 装填ID
	optional int32 id = 4;
}

// 获奖记录
message GlobalRewardRecord
{
	optional string nickName = 1;

	// 获得金币
	optional int32 gold = 2;

	// 获得时间
	optional int32 time = 3;
}

message WjlwInfo
{
	// 已装填
	optional int32 hasEquip = 1;

	// 剩余炮弹数量
	optional int32 remainBulletCount = 2;

	// 累计奖池
	optional int32 rewardPool = 3;

	// 发射倒计时
	optional int32 remainFireTime = 4;

	// 装填记录
	repeated EquipRecord equipRecordList = 5;
}

// 付费玩法 奖励
message RecharegRewardInfo
{
	// 奖励id
	optional int32 rewardId = 1;

	// 获奖昵称
	optional string nickName = 2;

	// 奖励数量
	optional int32 rewardCount = 3;
}

// 打开围剿龙王界面
message packetc2w_wjlw_enter
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_c2w_wjlw_enter]; 
}

message packetw2c_wjlw_enter_result
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_w2c_wjlw_enter_result]; 

	// 金币玩法信息
	optional WjlwInfo goldInfo = 2;

	// 付费玩法信息
	optional WjlwInfo rechargeInfo = 3;

	// 金币玩法，获奖记录
	repeated GlobalRewardRecord rewardRecordList = 4;

	// 付费玩法 昨日奖励
	repeated RecharegRewardInfo yesterdayInfo = 5;

	// 金币玩法当前状态 0-装配中, 1-结算中
	optional int32 goldState = 6;
}

// 退出，关闭界面, 无返回消息。
message packetc2w_wjlw_exit
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_c2w_wjlw_exit]; 
}

// 装填炮弹
message packetc2w_wjlw_equip
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_c2w_wjlw_equip]; 

	// 0-金币玩法， 1-付费玩法
	optional int32 playType = 2;

	// 装填数量
	optional int32 equipCount = 3;
}

// 装填炮弹
message packetw2c_wjlw_equip_result
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_w2c_wjlw_equip_result]; 

	optional int32 result = 2;

	// 0-金币玩法， 1-付费玩法
	optional int32 playType = 3;

	// 装填数量
	optional int32 equipCount = 4;
}

// 请求个人获奖记录
message packetc2w_wjlw_req_self_reward_record
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_c2w_wjlw_req_self_reward_record]; 

	// 0-金币玩法， 1-付费玩法
	optional int32 playType = 2;
}

// 个人获奖记录
message PriRewardRecord
{
	// 记录id
	optional int32 recordId = 1;

	// 获奖时间
	optional int32 time = 2;

	// 奖励道具
	optional int32 itemId = 3;

	// 奖励数量
	optional int32 count = 4;

	// 是否领取
	optional bool isReceive = 5;
}

// 请求个人获奖记录结果
message packetw2c_wjlw_req_self_reward_record_result
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_w2c_wjlw_req_self_reward_record_result]; 

	// 0-金币玩法， 1-付费玩法
	optional int32 playType = 2;

	repeated PriRewardRecord recordList = 3;
}

// 领取奖励
message packetc2w_wjlw_recv_reward
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_c2w_wjlw_recv_reward]; 

	// 0-金币玩法， 1-付费玩法
	optional int32 playType = 2;

	// 记录id
	optional int32 recordId = 3;
}

// 领取奖励
message packetw2c_wjlw_recv_reward_result
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_w2c_wjlw_recv_reward_result]; 

	optional int32 result = 2;

	// 0-金币玩法， 1-付费玩法
	optional int32 playType = 3;

	// 记录id
	optional int32 recordId = 4;
}

// 金币玩法广播开奖
message packetw2c_wjlw_bc_open_reward
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_w2c_wjlw_bc_open_reward]; 

	// 获奖记录
	optional GlobalRewardRecord record = 2;
}

// 定时刷新界面, 10秒请求,奖池与装填记录。 活动结束后，停止刷新
message packetc2w_wjlw_refresh_interval
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_c2w_wjlw_refresh_interval]; 

	// 传装填ID
	optional int32 equipLastTime = 2;

	// 0-金币玩法， 1-付费玩法
	optional int32 playType = 3;
}

message packetw2c_wjlw_refresh_interval_result
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_w2c_wjlw_refresh_interval_result]; 

	// 最后一条记录的装填ID
	optional int32 equipLastTime = 2;

	optional int32 playType = 3;

	// 装填记录
	repeated EquipRecord equipRecordList = 4;

	// 累计奖池
	optional int32 rewardPool = 5;
}

// 得到装填排行
message packetc2w_wjlw_get_equip_rank
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_c2w_wjlw_get_equip_rank]; 

	// 0-金币玩法， 1-付费玩法
	optional int32 playType = 2;
}

message RankEquipInfo
{
	// 昵称
	optional string nickName = 1;

	// 装填炮弹数量
	optional int32 equipCount = 2;

	// 获奖概率
	optional int32 winRewardProb = 3;

	optional int32 playerId = 4;
}

// 装填排行结果
message packetw2c_wjlw_get_equip_rank_result
{
	optional e_server_msg_type packet_id = 1 [default = e_mst_w2c_wjlw_get_equip_rank_result]; 

	optional int32 playType = 2;

	// 排行记录, 最多4条
	repeated RankEquipInfo rankList = 3;

	// 自己的信息，通过playerId查询是否在rankList中，
	optional RankEquipInfo selfInfo = 4;
}






























