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

// 生成包名（服务器用）
option java_package = "com.game.chat.proto";
// 生成类名（服务器用）
option java_outer_classname = "ChatProto";
// 引用equipMessage.proto
import "equipMessage.proto";
// 引用petMessage.proto
import "petMessage.proto";
// 引用clansMessage.proto
import "clansMessage.proto";

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

// 聊天内容信息Bean
message ChatInfo{
	int64 playerId = 1;//角色id
	string playerName = 2;// 角色名
	int32 fashionBody = 3;// 身体时装
	int32 fashionBorder = 4;// 头像框
	int32 vipLv = 5;// vip编号
	string content = 6;//发言内容
	int32 gender = 7;// 性别
}

// 聊天公告信息Bean
message NoticeInfo{
	fixed64 id = 1;// 公告唯一id（客户端使用，所以发送时才去生成）
	int32 configId = 2;// 公告配置id
	repeated string args = 3;// 参数
	repeated string urlArgs = 4;// 链接参数
}

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

// 请求聊天记录(此消息客户端不发，备用，登录会收到消息msgId=113201) msgId=113101		-----返回消息  msgId=113201
message ReqChatRecord{
	int32 num = 1;// 客户端已有的聊天条数，例如，如果为0，服务器返回1-10条消息，如果为5，服务器返回6-15条消息
}

// 请求发送聊天消息 msgId=113102		-----返回消息  msgId=113202
message ReqChat{
	int32 type = 1;// 聊天类型 1世界聊天 2部落聊天
	string contents = 2;//聊天内容
}

// 请求聊天查看分享装备信息 msgId=113103		-----返回消息  msgId=113204
message ReqChatLookEquip{
	int64 toPlayerId = 1;// 被查看的角色唯一id
	fixed64 equipId = 2;// 被查看的装备唯一id
}

// 请求聊天查看分享宠物信息 msgId=113104		-----返回消息  msgId=113205
message ReqChatLookPet{
	int64 toPlayerId = 1;// 被查看的角色唯一id
	fixed64 petId = 2;// 被查看的宠物唯一id
}

// 请求聊天查看分享部落信息 msgId=113105		-----返回消息  msgId=113205
message ReqChatLookClans{
	int64 clansId = 1;// 部落唯一id
}

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

// 返回聊天记录 msgId=113201
message ResChatRecord{
	repeated ChatInfo worldChatList = 1;// 世界聊天列表
	repeated ChatInfo clanChatList = 2;// 部落聊天列表
	repeated NoticeInfo noticeList = 3;// 公告列表
}

// 返回聊天消息 msgId=113202
message ResChat{
	int32 type = 1;// 聊天类型 1世界聊天 2部落聊天
	ChatInfo chatInfo = 2;// 聊天内容列表
}

// 返回聊天公告消息 msgId=113203
message ResChatNotice{
	NoticeInfo notice = 1;// 公告
}

// 返回聊天查看分享装备信息 msgId=113204
message ResChatLookEquip{
	EquipInfo equip = 1;// 装备
}

// 返回聊天查看分享宠物信息 msgId=113205
message ResChatLookPet{
	PetInfo petInfo = 1;// 宠物
}

// 返回聊天查看分享部落信息 msgId=113206
message ResChatLookClans{
	ClansInfo clansInfo = 1;// 部落信息
}










