// 如果使用此注释，则使用proto3; 否则使用proto2
syntax = "proto3";

// 生成包名（服务器用）
option java_package = "com.game.mail.proto";
// 生成类名（服务器用）
option java_outer_classname = "MailProto";
// 引用apublicBean.proto
import "apublicBean.proto";
// 引用equipMessage.proto
import "equipMessage.proto";
// 引用warMessage.proto
import "warMessage.proto";
// 引用petMessage.proto
import "petMessage.proto";

// -------------------------------------Bean-------------------------------------

// 邮件Bean
message MailBean{
	fixed64 mailId = 1;// 邮件id
	string title = 2;// 标题
	string content = 3;// 内容
	int32 read = 4;// 是否已读1已读 0未读
	int32 get = 5;// 是否已领取 1已领取 0未领取
	fixed32 time = 6;// 获得邮件时间（时间戳，这里发送秒）
	repeated Goods goodsList = 7;// 邮件物品
	repeated EquipInfo equipList = 8;// 邮件装备
	repeated WarInfo warList = 9;// 邮件战纹
	repeated EggInfo eggList = 10;// 邮件宠物蛋
}

// -------------------------------------请求消息-------------------------------------

// 请求打开邮件设置已读 msgId=111101 无返回消息 客户端打开无奖励邮件，自行设置已读状态
message ReqOpenMail{
	fixed64 mailId = 1;// 邮件唯一id
}

// 请求领取邮件奖励 msgId=111102		-----返回消息  msgId=111202
message ReqMailAward{
	fixed64 mailId = 1;// 邮件唯一id(如果id=0表示一键领取)
}

// 请求删除邮件 msgId=111103		-----返回消息  msgId=111203
message ReqMailDelete{
	fixed64 mailId = 1;// 邮件唯一id(如果id=0表示一键删除)
}

// -------------------------------------返回消息-------------------------------------

// 返回邮件信息 msgId=111201（登陆主动返回 或者 发生变化返回）
message ResMailInfo{
	int32 type = 1;//变化类型 1增加新邮件  4查询（登陆主动返回）
	repeated MailBean mailList = 2;//邮件列表
}

// 返回邮件已领取成功 msgId=111202
message ResMailAward{
	repeated fixed64 mailIdList = 1;// 邮件唯一id
}

// 返回删除邮件成功 msgId=111203
message ResMailDelete{
	fixed64 mailId = 1;// 邮件唯一id(如果id=0表示一键删除)
}




