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 C2A_RegisterRequest : AMessage, IRequest, IProto { public static C2A_RegisterRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Username = default; Password = default; Source = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public A2C_RegisterResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2A_RegisterRequest; } [ProtoMember(1)] public string Username { get; set; } [ProtoMember(2)] public string Password { get; set; } [ProtoMember(3)] public string Source { get; set; } } [ProtoContract] public partial class A2C_RegisterResponse : AMessage, IResponse, IProto { public static A2C_RegisterResponse Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.A2C_RegisterResponse; } [ProtoMember(1)] public string Tag { get; set; } [ProtoMember(2)] public uint ErrorCode { get; set; } } [ProtoContract] public partial class C2A_LoginRequest : AMessage, IRequest, IProto { public static C2A_LoginRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Username = default; Password = default; Source = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public A2C_LoginResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2A_LoginRequest; } [ProtoMember(1)] public string Username { get; set; } [ProtoMember(2)] public string Password { get; set; } [ProtoMember(3)] public string Source { get; set; } } [ProtoContract] public partial class A2C_LoginResponse : AMessage, IResponse, IProto { public static A2C_LoginResponse Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; Token = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.A2C_LoginResponse; } [ProtoMember(1)] public string Token { get; set; } [ProtoMember(2)] public uint ErrorCode { get; set; } } [ProtoContract] public partial class C2G_LoginRequest : AMessage, IRequest, IProto { public static C2G_LoginRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Token = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public G2C_LoginResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2G_LoginRequest; } [ProtoMember(1)] public string Token { get; set; } } [ProtoContract] public partial class G2C_LoginResponse : AMessage, IResponse, IProto { public static G2C_LoginResponse Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; Tag = default; GameAccount = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.G2C_LoginResponse; } [ProtoMember(1)] public string Tag { get; set; } [ProtoMember(2)] public GameAccountInfo GameAccount { get; set; } [ProtoMember(3)] public uint ErrorCode { get; set; } } [ProtoContract] public partial class G2C_LoginRepeatedMessage : AMessage, IMessage, IProto { public static G2C_LoginRepeatedMessage Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.G2C_LoginRepeatedMessage; } } [ProtoContract] public partial class C2G_GetGameAccountInfo : AMessage, IRequest, IProto { public static C2G_GetGameAccountInfo Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { AccountId = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public G2C_GetGameAccountInfo ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2G_GetGameAccountInfo; } [ProtoMember(1)] public long AccountId { get; set; } } [ProtoContract] public partial class G2C_GetGameAccountInfo : AMessage, IResponse, IProto { public static G2C_GetGameAccountInfo Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; AccountInfo = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.G2C_GetGameAccountInfo; } [ProtoMember(1)] public GameAccountInfo AccountInfo { get; set; } [ProtoMember(2)] public uint ErrorCode { get; set; } } [ProtoContract] public partial class GameAccountInfo : AMessage, IProto { public static GameAccountInfo Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { CreateTime = default; LoginTime = default; GameName = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoMember(1)] public long CreateTime { get; set; } [ProtoMember(2)] public long LoginTime { get; set; } [ProtoMember(3)] public string GameName { get; set; } } [ProtoContract] public partial class G2C_OpenGameNameInputWindowsMessage : AMessage, IMessage, IProto { public static G2C_OpenGameNameInputWindowsMessage Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.G2C_OpenGameNameInputWindowsMessage; } [ProtoMember(1)] public string Tag { get; set; } } [ProtoContract] public partial class C2G_UpdateAndSaveGameNameRequest : AMessage, IRequest, IProto { public static C2G_UpdateAndSaveGameNameRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { AccountId = default; GameName = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public G2C_UpdateAndSaveGameNameResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2G_UpdateAndSaveGameNameRequest; } [ProtoMember(1)] public long AccountId { get; set; } [ProtoMember(2)] public string GameName { get; set; } } [ProtoContract] public partial class G2C_UpdateAndSaveGameNameResponse : AMessage, IResponse, IProto { public static G2C_UpdateAndSaveGameNameResponse Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.G2C_UpdateAndSaveGameNameResponse; } [ProtoMember(1)] public string Tag { get; set; } [ProtoMember(2)] public uint ErrorCode { get; set; } } [ProtoContract] public partial class C2Chat_BoardMessageRequest : AMessage, ICustomRouteRequest, IProto { public static C2Chat_BoardMessageRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Message = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public Chat2C_BoardMessageResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2Chat_BoardMessageRequest; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.ChatRoute; [ProtoMember(1)] public string Message { get; set; } } [ProtoContract] public partial class Chat2C_BoardMessageResponse : AMessage, ICustomRouteResponse, IProto { public static Chat2C_BoardMessageResponse 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.Chat2C_BoardMessageResponse; } /// /// string Message = 2; /// [ProtoMember(1)] public uint ErrorCode { get; set; } } [ProtoContract] public partial class Chat2C_BoardMessage : AMessage, ICustomRouteMessage, IProto { public static Chat2C_BoardMessage 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_BoardMessage; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.ChatRoute; [ProtoMember(1)] public string Message { get; set; } } [ProtoContract] public partial class C2Chat_TestRequest : AMessage, ICustomRouteRequest, IProto { public static C2Chat_TestRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public Chat2C_TestResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2Chat_TestRequest; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.ChatRoute; } [ProtoContract] public partial class Chat2C_TestResponse : AMessage, ICustomRouteResponse, IProto { public static Chat2C_TestResponse 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.Chat2C_TestResponse; } [ProtoMember(1)] public uint ErrorCode { get; set; } } [ProtoContract] public partial class C2G_TestMessage : AMessage, IMessage, IProto { public static C2G_TestMessage Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.C2G_TestMessage; } [ProtoMember(1)] public string Tag { get; set; } } [ProtoContract] public partial class C2G_TestRequest : AMessage, IRequest, IProto { public static C2G_TestRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public G2C_TestResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2G_TestRequest; } [ProtoMember(1)] public string Tag { get; set; } } [ProtoContract] public partial class G2C_TestResponse : AMessage, IResponse, IProto { public static G2C_TestResponse Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.G2C_TestResponse; } [ProtoMember(1)] public string Tag { get; set; } [ProtoMember(2)] public uint ErrorCode { get; set; } } [ProtoContract] public partial class C2G_TestRequestPushMessage : AMessage, IMessage, IProto { public static C2G_TestRequestPushMessage Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.C2G_TestRequestPushMessage; } } /// /// Gate服务器推送一个消息给客户端 /// [ProtoContract] public partial class G2C_PushMessage : AMessage, IMessage, IProto { public static G2C_PushMessage Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.G2C_PushMessage; } [ProtoMember(1)] public string Tag { get; set; } } [ProtoContract] public partial class C2G_CreateAddressableRequest : AMessage, IRequest, IProto { public static C2G_CreateAddressableRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public G2C_CreateAddressableResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2G_CreateAddressableRequest; } } [ProtoContract] public partial class G2C_CreateAddressableResponse : AMessage, IResponse, IProto { public static G2C_CreateAddressableResponse 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.G2C_CreateAddressableResponse; } [ProtoMember(1)] public uint ErrorCode { get; set; } } [ProtoContract] public partial class C2M_TestMessage : AMessage, IAddressableRouteMessage, IProto { public static C2M_TestMessage Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.C2M_TestMessage; } [ProtoMember(1)] public string Tag { get; set; } } [ProtoContract] public partial class C2M_TestRequest : AMessage, IAddressableRouteRequest, IProto { public static C2M_TestRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public M2C_TestResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2M_TestRequest; } [ProtoMember(1)] public string Tag { get; set; } } [ProtoContract] public partial class M2C_TestResponse : AMessage, IAddressableRouteResponse, IProto { public static M2C_TestResponse Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.M2C_TestResponse; } [ProtoMember(1)] public string Tag { get; set; } [ProtoMember(2)] public uint ErrorCode { get; set; } } /// /// 通知Gate服务器创建一个Chat的Route连接 /// [ProtoContract] public partial class C2G_CreateChatRouteRequest : AMessage, IRequest, IProto { public static C2G_CreateChatRouteRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public G2C_CreateChatRouteResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2G_CreateChatRouteRequest; } } [ProtoContract] public partial class G2C_CreateChatRouteResponse : AMessage, IResponse, IProto { public static G2C_CreateChatRouteResponse 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.G2C_CreateChatRouteResponse; } [ProtoMember(1)] public uint ErrorCode { get; set; } } /// /// 发送一个Route消息给Chat /// [ProtoContract] public partial class C2Chat_TestMessage : AMessage, ICustomRouteMessage, IProto { public static C2Chat_TestMessage Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.C2Chat_TestMessage; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.ChatRoute; [ProtoMember(1)] public string Tag { get; set; } } /// /// 发送一个RPCRoute消息给Chat /// [ProtoContract] public partial class C2Chat_TestMessageRequest : AMessage, ICustomRouteRequest, IProto { public static C2Chat_TestMessageRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public Chat2C_TestMessageResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2Chat_TestMessageRequest; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.ChatRoute; [ProtoMember(1)] public string Tag { get; set; } } [ProtoContract] public partial class Chat2C_TestMessageResponse : AMessage, ICustomRouteResponse, IProto { public static Chat2C_TestMessageResponse Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { ErrorCode = default; Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.Chat2C_TestMessageResponse; } [ProtoMember(1)] public string Tag { get; set; } [ProtoMember(2)] public uint ErrorCode { get; set; } } /// /// 发送一个RPC消息给Map,让Map里的Entity转移到另外一个Map上 /// [ProtoContract] public partial class C2M_MoveToMapRequest : AMessage, IAddressableRouteRequest, IProto { public static C2M_MoveToMapRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public M2C_MoveToMapResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2M_MoveToMapRequest; } } [ProtoContract] public partial class M2C_MoveToMapResponse : AMessage, IAddressableRouteResponse, IProto { public static M2C_MoveToMapResponse 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.M2C_MoveToMapResponse; } [ProtoMember(1)] public uint ErrorCode { get; set; } } /// /// 发送一个消息给Gate,让Gate发送一个Addressable消息给MAP /// [ProtoContract] public partial class C2G_SendAddressableToMap : AMessage, IMessage, IProto { public static C2G_SendAddressableToMap Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.C2G_SendAddressableToMap; } [ProtoMember(1)] public string Tag { get; set; } } /// /// 发送一个消息给Chat,让Chat服务器主动推送一个RouteMessage消息给客户端 /// [ProtoContract] public partial class C2Chat_TestRequestPushMessage : AMessage, ICustomRouteMessage, IProto { public static C2Chat_TestRequestPushMessage Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.C2Chat_TestRequestPushMessage; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.ChatRoute; } /// /// Chat服务器主动推送一个消息给客户端 /// [ProtoContract] public partial class Chat2C_PushMessage : AMessage, ICustomRouteMessage, IProto { public static Chat2C_PushMessage Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.Chat2C_PushMessage; } [ProtoIgnore] public int RouteType => Fantasy.RouteType.ChatRoute; [ProtoMember(1)] public string Tag { get; set; } } /// /// 客户端发送给Gate服务器通知map服务器创建一个SubScene /// [ProtoContract] public partial class C2G_CreateSubSceneRequest : AMessage, IRequest, IProto { public static C2G_CreateSubSceneRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public G2C_CreateSubSceneResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2G_CreateSubSceneRequest; } } [ProtoContract] public partial class G2C_CreateSubSceneResponse : AMessage, IResponse, IProto { public static G2C_CreateSubSceneResponse 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.G2C_CreateSubSceneResponse; } [ProtoMember(1)] public uint ErrorCode { get; set; } } /// /// 客户端通知Gate服务器给SubScene发送一个消息 /// [ProtoContract] public partial class C2G_SendToSubSceneMessage : AMessage, IMessage, IProto { public static C2G_SendToSubSceneMessage Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.C2G_SendToSubSceneMessage; } } /// /// 客户端通知Gate服务器创建一个SubScene的Address消息 /// [ProtoContract] public partial class C2G_CreateSubSceneAddressableRequest : AMessage, IRequest, IProto { public static C2G_CreateSubSceneAddressableRequest Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } [ProtoIgnore] public G2C_CreateSubSceneAddressableResponse ResponseType { get; set; } public uint OpCode() { return OuterOpcode.C2G_CreateSubSceneAddressableRequest; } } [ProtoContract] public partial class G2C_CreateSubSceneAddressableResponse : AMessage, IResponse, IProto { public static G2C_CreateSubSceneAddressableResponse 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.G2C_CreateSubSceneAddressableResponse; } [ProtoMember(1)] public uint ErrorCode { get; set; } } /// /// 客户端向SubScene发送一个测试消息 /// [ProtoContract] public partial class C2SubScene_TestMessage : AMessage, IAddressableRouteMessage, IProto { public static C2SubScene_TestMessage Create(Scene scene) { return scene.MessagePoolComponent.Rent(); } public override void Dispose() { Tag = default; #if FANTASY_NET || FANTASY_UNITY GetScene().MessagePoolComponent.Return(this); #endif } public uint OpCode() { return OuterOpcode.C2SubScene_TestMessage; } [ProtoMember(1)] public string Tag { get; set; } } }