using ProtoBuf; using System.Collections.Generic; using MongoDB.Bson.Serialization.Attributes; using Fantasy; using Fantasy.Network.Interface; using Fantasy.Serialize; // ReSharper disable InconsistentNaming // ReSharper disable RedundantUsingDirective // ReSharper disable RedundantOverriddenMember // ReSharper disable PartialTypeWithSinglePart // ReSharper disable UnusedAutoPropertyAccessor.Global // ReSharper disable MemberCanBePrivate.Global // ReSharper disable CheckNamespace #pragma warning disable CS8625 // Cannot convert null literal to non-nullable reference type. #pragma warning disable CS8618 namespace Fantasy { /// /// 请求邮件列表 /// [ProtoContract] public partial class C2Game_GetMailsRequest : AMessage, ICustomRouteRequest, IProto { public static C2Game_GetMailsRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public Game2C_GetMailsResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2Game_GetMailsRequest; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.GameRoute; } /// /// 获取邮件列表响应 /// [ProtoContract] public partial class Game2C_GetMailsResponse : AMessage, ICustomRouteResponse, IProto { public static Game2C_GetMailsResponse Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; Mail.Clear(); #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.Game2C_GetMailsResponse; } [ProtoMember(1)] public List Mail = new List(); [ProtoMember(2)] public uint ErrorCode { get; set; } } /// /// 新邮件推送 /// [ProtoContract] public partial class Game2C_HaveMail : AMessage, ICustomRouteMessage, IProto { public static Game2C_HaveMail Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Mail = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.Game2C_HaveMail; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.GameRoute; [ProtoMember(1)] public MailInfo Mail { get; set; } } [ProtoContract] public partial class Game2C_MailState : AMessage, ICustomRouteMessage, IProto { public static Game2C_MailState Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { MailState = default; MailId = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.Game2C_MailState; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.GameRoute; [ProtoMember(1)] public int MailState { get; set; } [ProtoMember(2)] public long MailId { get; set; } } /// /// /////////// ******** 聊天 *******///////////// /// /// /// 创建频道 /// [ProtoContract] public partial class C2Chat_CreateChannelRequest : AMessage, ICustomRouteRequest, IProto { public static C2Chat_CreateChannelRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Name = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public Caht2C_CreateChannelResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2Chat_CreateChannelRequest; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.ChatRoute; [ProtoMember(1)] public string Name { get; set; } } /// /// 创建频道响应 /// [ProtoContract] public partial class Caht2C_CreateChannelResponse : AMessage, ICustomRouteResponse, IProto { public static Caht2C_CreateChannelResponse Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; ChannelId = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.Caht2C_CreateChannelResponse; } [ProtoMember(1)] public long ChannelId { get; set; } [ProtoMember(2)] public uint ErrorCode { get; set; } } /// /// 请求进入频道 /// [ProtoContract] public partial class C2Chat_JoinChannelRequest : AMessage, ICustomRouteRequest, IProto { public static C2Chat_JoinChannelRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Target = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public Caht2C_JoinChannelResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2Chat_JoinChannelRequest; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.ChatRoute; [ProtoMember(1)] public long Target { get; set; } } /// /// 进入频道响应 /// [ProtoContract] public partial class Caht2C_JoinChannelResponse : AMessage, ICustomRouteResponse, IProto { public static Caht2C_JoinChannelResponse Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.Caht2C_JoinChannelResponse; } [ProtoMember(1)] public uint ErrorCode { get; set; } } /// /// 发送聊天 /// [ProtoContract] public partial class C2Chat_SendMessageRequest : AMessage, ICustomRouteRequest, IProto { public static C2Chat_SendMessageRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Type = default; Message = default; Target = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public Caht2C_SendMessageResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2Chat_SendMessageRequest; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.ChatRoute; [ProtoMember(1)] public int Type { get; set; } [ProtoMember(2)] public string Message { get; set; } [ProtoMember(3)] public long Target { get; set; } } /// /// 发送聊天响应 /// [ProtoContract] public partial class Caht2C_SendMessageResponse : AMessage, ICustomRouteResponse, IProto { public static Caht2C_SendMessageResponse Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.Caht2C_SendMessageResponse; } [ProtoMember(1)] public uint ErrorCode { get; set; } } /// /// 推送消息 /// [ProtoContract] public partial class Chat2C_Message : AMessage, ICustomRouteMessage, IProto { public static Chat2C_Message Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Message = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.Chat2C_Message; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.ChatRoute; [ProtoMember(1)] public ChatMessageInfo Message { get; set; } } /// /// 获取聊天记录请求 /// [ProtoContract] public partial class C2Chat_GetChatRecordRequest : AMessage, ICustomRouteRequest, IProto { public static C2Chat_GetChatRecordRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Target = default; Type = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public Caht2C_GetChatRecordResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2Chat_GetChatRecordRequest; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.ChatRoute; [ProtoMember(1)] public long Target { get; set; } [ProtoMember(2)] public int Type { get; set; } } /// /// 获取聊天记录响应 /// [ProtoContract] public partial class Caht2C_GetChatRecordResponse : AMessage, ICustomRouteResponse, IProto { public static Caht2C_GetChatRecordResponse Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; Messages.Clear(); #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.Caht2C_GetChatRecordResponse; } [ProtoMember(1)] public List Messages = new List(); [ProtoMember(2)] public uint ErrorCode { get; set; } } }