├── .gitignore ├── Assets ├── Editor.meta ├── Editor │ ├── Serializer.meta │ └── Serializer │ │ ├── CSGenerate.cs │ │ ├── CSGenerate.cs.meta │ │ ├── SerializerBinaryEditor.cs │ │ └── SerializerBinaryEditor.cs.meta ├── Framework.meta ├── Framework │ ├── ETClient.meta │ └── ETClient │ │ ├── Base.meta │ │ ├── Base │ │ ├── DllHelper.cs │ │ ├── DllHelper.cs.meta │ │ ├── DoubleMap.cs │ │ ├── DoubleMap.cs.meta │ │ ├── EQueue.cs │ │ ├── EQueue.cs.meta │ │ ├── GameObjectHelper.cs │ │ ├── GameObjectHelper.cs.meta │ │ ├── IdGenerater.cs │ │ ├── IdGenerater.cs.meta │ │ ├── Log.cs │ │ ├── Log.cs.meta │ │ ├── LogType.cs │ │ ├── LogType.cs.meta │ │ ├── MultiMap.cs │ │ ├── MultiMap.cs.meta │ │ ├── QueueDictionary.cs │ │ ├── QueueDictionary.cs.meta │ │ ├── StringHelper.cs │ │ ├── StringHelper.cs.meta │ │ ├── TimeHelper.cs │ │ ├── TimeHelper.cs.meta │ │ ├── TryLocker.cs │ │ ├── TryLocker.cs.meta │ │ ├── ZipHelper.cs │ │ └── ZipHelper.cs.meta │ │ ├── Client.meta │ │ ├── Client │ │ ├── ClientDispatcher.cs │ │ ├── ClientDispatcher.cs.meta │ │ ├── NetworkClient.cs │ │ ├── NetworkClient.cs.meta │ │ ├── NetworkOpcodeType.cs │ │ ├── NetworkOpcodeType.cs.meta │ │ ├── SerializerPacker.cs │ │ ├── SerializerPacker.cs.meta │ │ ├── Session.cs │ │ └── Session.cs.meta │ │ ├── Message.meta │ │ ├── Message │ │ ├── AActorMessage.cs │ │ ├── AActorMessage.cs.meta │ │ ├── AMHandler.cs │ │ ├── AMHandler.cs.meta │ │ ├── AMessage.cs │ │ ├── AMessage.cs.meta │ │ ├── AppType.cs │ │ ├── AppType.cs.meta │ │ ├── ErrorCode.cs │ │ ├── ErrorCode.cs.meta │ │ ├── IMHandler.cs │ │ ├── IMHandler.cs.meta │ │ ├── IMessageDispatcher.cs │ │ ├── IMessageDispatcher.cs.meta │ │ ├── IMessagePacker.cs │ │ ├── IMessagePacker.cs.meta │ │ ├── MessageAttribute.cs │ │ ├── MessageAttribute.cs.meta │ │ ├── MessageHandlerAttribute.cs │ │ ├── MessageHandlerAttribute.cs.meta │ │ ├── MessageInfo.cs │ │ ├── MessageInfo.cs.meta │ │ ├── NumericType.cs │ │ ├── NumericType.cs.meta │ │ ├── OpcodeHelper.cs │ │ ├── OpcodeHelper.cs.meta │ │ ├── RpcException.cs │ │ └── RpcException.cs.meta │ │ ├── Network.meta │ │ └── Network │ │ ├── AChannel.cs │ │ ├── AChannel.cs.meta │ │ ├── AService.cs │ │ ├── AService.cs.meta │ │ ├── ASession.cs │ │ ├── ASession.cs.meta │ │ ├── TNet.meta │ │ ├── TNet │ │ ├── PacketParser.cs │ │ ├── PacketParser.cs.meta │ │ ├── TBuffer.cs │ │ ├── TBuffer.cs.meta │ │ ├── TChannel.cs │ │ ├── TChannel.cs.meta │ │ ├── TService.cs │ │ └── TService.cs.meta │ │ ├── UNet.meta │ │ └── UNet │ │ ├── Library.cs │ │ ├── Library.cs.meta │ │ ├── NativeMethods.cs │ │ ├── NativeMethods.cs.meta │ │ ├── NativeStructs.cs │ │ ├── NativeStructs.cs.meta │ │ ├── UAddress.cs │ │ ├── UAddress.cs.meta │ │ ├── UChannel.cs │ │ ├── UChannel.cs.meta │ │ ├── UPacket.cs │ │ ├── UPacket.cs.meta │ │ ├── UPoller.cs │ │ ├── UPoller.cs.meta │ │ ├── UService.cs │ │ ├── UService.cs.meta │ │ ├── USocket.cs │ │ ├── USocket.cs.meta │ │ ├── USocketManager.cs │ │ └── USocketManager.cs.meta ├── Generate.meta ├── Generate │ ├── SerializerBinary.meta │ └── SerializerBinary │ │ ├── Runtime.meta │ │ └── Runtime │ │ ├── CommonSerializer.cs │ │ ├── CommonSerializer.cs.meta │ │ ├── Model.UnitInfo.Binary.cs │ │ ├── Model.UnitInfo.Binary.cs.meta │ │ ├── Protocol.meta │ │ └── Protocol │ │ ├── Model.AActorMessage.Binary.cs │ │ ├── Model.AActorMessage.Binary.cs.meta │ │ ├── Model.AActorRequest.Binary.cs │ │ ├── Model.AActorRequest.Binary.cs.meta │ │ ├── Model.AActorResponse.Binary.cs │ │ ├── Model.AActorResponse.Binary.cs.meta │ │ ├── Model.AFrameMessage.Binary.cs │ │ ├── Model.AFrameMessage.Binary.cs.meta │ │ ├── Model.AMessage.Binary.cs │ │ ├── Model.AMessage.Binary.cs.meta │ │ ├── Model.ARequest.Binary.cs │ │ ├── Model.ARequest.Binary.cs.meta │ │ ├── Model.AResponse.Binary.cs │ │ ├── Model.AResponse.Binary.cs.meta │ │ ├── Model.Actor_CreateUnits.Binary.cs │ │ ├── Model.Actor_CreateUnits.Binary.cs.meta │ │ ├── Model.Actor_Test.Binary.cs │ │ ├── Model.Actor_Test.Binary.cs.meta │ │ ├── Model.Actor_TestRequest.Binary.cs │ │ ├── Model.Actor_TestRequest.Binary.cs.meta │ │ ├── Model.Actor_TestResponse.Binary.cs │ │ ├── Model.Actor_TestResponse.Binary.cs.meta │ │ ├── Model.Actor_TransferRequest.Binary.cs │ │ ├── Model.Actor_TransferRequest.Binary.cs.meta │ │ ├── Model.Actor_TransferResponse.Binary.cs │ │ ├── Model.Actor_TransferResponse.Binary.cs.meta │ │ ├── Model.C2G_EnterMap.Binary.cs │ │ ├── Model.C2G_EnterMap.Binary.cs.meta │ │ ├── Model.C2G_LoginGate.Binary.cs │ │ ├── Model.C2G_LoginGate.Binary.cs.meta │ │ ├── Model.C2M_Reload.Binary.cs │ │ ├── Model.C2M_Reload.Binary.cs.meta │ │ ├── Model.C2R_Login.Binary.cs │ │ ├── Model.C2R_Login.Binary.cs.meta │ │ ├── Model.C2R_Ping.Binary.cs │ │ ├── Model.C2R_Ping.Binary.cs.meta │ │ ├── Model.FrameMessage.Binary.cs │ │ ├── Model.FrameMessage.Binary.cs.meta │ │ ├── Model.Frame_ClickMap.Binary.cs │ │ ├── Model.Frame_ClickMap.Binary.cs.meta │ │ ├── Model.G2C_EnterMap.Binary.cs │ │ ├── Model.G2C_EnterMap.Binary.cs.meta │ │ ├── Model.G2C_LoginGate.Binary.cs │ │ ├── Model.G2C_LoginGate.Binary.cs.meta │ │ ├── Model.M2C_Reload.Binary.cs │ │ ├── Model.M2C_Reload.Binary.cs.meta │ │ ├── Model.R2C_Login.Binary.cs │ │ ├── Model.R2C_Login.Binary.cs.meta │ │ ├── Model.R2C_Ping.Binary.cs │ │ └── Model.R2C_Ping.Binary.cs.meta ├── Plugins.meta ├── Plugins │ ├── Android.meta │ ├── Android │ │ ├── armeabi-v7a.meta │ │ └── armeabi-v7a │ │ │ ├── libenet.so │ │ │ └── libenet.so.meta │ ├── Core.meta │ ├── Core │ │ ├── Assist.meta │ │ ├── Assist │ │ │ ├── CryptoUtility.cs │ │ │ ├── CryptoUtility.cs.meta │ │ │ ├── Debugger.cs │ │ │ ├── Debugger.cs.meta │ │ │ ├── Dict.cs │ │ │ ├── Dict.cs.meta │ │ │ ├── GameObjectPool.cs │ │ │ ├── GameObjectPool.cs.meta │ │ │ ├── LexicalAnalysis.cs │ │ │ ├── LexicalAnalysis.cs.meta │ │ │ ├── ObjectExpand.cs │ │ │ ├── ObjectExpand.cs.meta │ │ │ ├── ReflectExpand.cs │ │ │ ├── ReflectExpand.cs.meta │ │ │ ├── ReflectionAssist.cs │ │ │ ├── ReflectionAssist.cs.meta │ │ │ ├── RuntimePerformance.cs │ │ │ ├── RuntimePerformance.cs.meta │ │ │ ├── StringBuilderExpand.cs │ │ │ ├── StringBuilderExpand.cs.meta │ │ │ ├── TEditorUpdateMB.cs │ │ │ ├── TEditorUpdateMB.cs.meta │ │ │ ├── TObjectPool.cs │ │ │ ├── TObjectPool.cs.meta │ │ │ ├── TSingleton.cs │ │ │ ├── TSingleton.cs.meta │ │ │ ├── TypeExpand.cs │ │ │ ├── TypeExpand.cs.meta │ │ │ ├── TypeSearch.cs │ │ │ ├── TypeSearch.cs.meta │ │ │ ├── UnsafeVector3Array.cs │ │ │ ├── UnsafeVector3Array.cs.meta │ │ │ ├── UtilTool.cs │ │ │ └── UtilTool.cs.meta │ │ ├── Serializer.meta │ │ ├── Serializer │ │ │ ├── SerializerBinary.cs │ │ │ └── SerializerBinary.cs.meta │ │ ├── WindJson.meta │ │ └── WindJson │ │ │ ├── JsonData.cs │ │ │ ├── JsonData.cs.meta │ │ │ ├── JsonParser.cs │ │ │ └── JsonParser.cs.meta │ ├── ICSharpCode.SharpZipLib.dll │ ├── ICSharpCode.SharpZipLib.dll.meta │ ├── iOS.meta │ ├── iOS │ │ ├── libENet.a │ │ └── libENet.a.meta │ ├── x86.meta │ ├── x86 │ │ ├── ENet.dll │ │ └── ENet.dll.meta │ ├── x86_64.meta │ └── x86_64 │ │ ├── ENet.dll │ │ └── ENet.dll.meta ├── Test.meta └── Test │ ├── ETClientTest.meta │ └── ETClientTest │ ├── ETClientTest.cs │ ├── ETClientTest.cs.meta │ ├── Opcode.cs │ ├── Opcode.cs.meta │ ├── OuterMessage.cs │ ├── OuterMessage.cs.meta │ ├── et_client_test.unity │ └── et_client_test.unity.meta ├── LICENSE ├── ProjectSettings ├── AudioManager.asset ├── ClusterInputManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── InputManager.asset ├── NavMeshAreas.asset ├── NetworkManager.asset ├── Physics2DSettings.asset ├── ProjectSettings.asset ├── ProjectVersion.txt ├── QualitySettings.asset ├── TagManager.asset ├── TimeManager.asset └── UnityConnectSettings.asset ├── Server └── Egametang │ ├── Config │ ├── BuffConfig.txt │ └── StartConfig │ │ ├── 127.0.0.1.txt │ │ ├── 192.168.12.112.txt │ │ ├── 192.168.9.182.txt │ │ ├── Benchmark.txt │ │ ├── Benchmark127.0.0.1.txt │ │ ├── Benchmark2.txt │ │ ├── BenchmarkClient.txt │ │ ├── ClientConfig.txt │ │ └── LocalAllServer.txt │ └── Server │ ├── App │ ├── App.config │ ├── NLog.config │ ├── NLog.xsd │ ├── Program.cs │ ├── Properties │ │ └── launchSettings.json │ └── Server.App.csproj │ ├── Base │ ├── Core │ │ ├── Assist │ │ │ ├── CryptoUtility.cs │ │ │ ├── Dict.cs │ │ │ ├── LexicalAnalysis.cs │ │ │ ├── ReflectExpand.cs │ │ │ ├── ReflectionAssist.cs │ │ │ ├── RuntimePerformance.cs │ │ │ ├── StringBuilderExpand.cs │ │ │ ├── TObjectPool.cs │ │ │ ├── TSingleton.cs │ │ │ ├── TypeExpand.cs │ │ │ ├── TypeSearch.cs │ │ │ └── UtilTool.cs │ │ ├── Serializer │ │ │ └── SerializerBinary.cs │ │ └── WindJson │ │ │ ├── JsonData.cs │ │ │ └── JsonParser.cs │ ├── DoubleMap.cs │ ├── EQueue.cs │ ├── Helper │ │ ├── ArrayHelper.cs │ │ ├── ByteHelper.cs │ │ ├── EnumHelper.cs │ │ ├── FileHelper.cs │ │ ├── IdGenerater.cs │ │ ├── MD5Helper.cs │ │ ├── MethodInfoHelper.cs │ │ ├── NetHelper.cs │ │ ├── ProtobufHelper.cs │ │ ├── RandomHelper.cs │ │ ├── StringHelper.cs │ │ ├── TimeHelper.cs │ │ └── ZipHelper.cs │ ├── Log.cs │ ├── LogType.cs │ ├── Logger │ │ ├── ALogDecorater.cs │ │ ├── ILog.cs │ │ ├── NLogAdapter.cs │ │ └── StackInfoDecorater.cs │ ├── MultiMap.cs │ ├── Network │ │ ├── AChannel.cs │ │ ├── AService.cs │ │ ├── TNet │ │ │ ├── PacketParser.cs │ │ │ ├── TBuffer.cs │ │ │ ├── TChannel.cs │ │ │ └── TService.cs │ │ └── UNet │ │ │ ├── Library.cs │ │ │ ├── NativeMethods.cs │ │ │ ├── NativeStructs.cs │ │ │ ├── UAddress.cs │ │ │ ├── UChannel.cs │ │ │ ├── UPacket.cs │ │ │ ├── UPoller.cs │ │ │ ├── UService.cs │ │ │ ├── USocket.cs │ │ │ └── USocketManager.cs │ ├── QueueDictionary.cs │ ├── Server.Base.csproj │ └── TryLocker.cs │ ├── Hotfix │ ├── Handler │ │ ├── Actor_TestHandler.cs │ │ ├── Actor_TestRequestHandler.cs │ │ ├── Actor_TransferHandler.cs │ │ ├── C2G_EnterMapHandler.cs │ │ ├── C2G_LoginGateHandler.cs │ │ ├── C2M_ReloadHandler.cs │ │ ├── C2R_LoginHandler.cs │ │ ├── C2R_PingHandler.cs │ │ ├── DBQueryBatchRequestHandler.cs │ │ ├── DBQueryJsonRequestHandler.cs │ │ ├── DBQueryRequestHandler.cs │ │ ├── DBSaveBatchRequestHandler.cs │ │ ├── DBSaveRequestHandler.cs │ │ ├── G2G_LockReleaseRequestHandler.cs │ │ ├── G2G_LockRequestHandler.cs │ │ ├── G2M_CreateUnitHandler.cs │ │ ├── M2A_ReloadHandler.cs │ │ ├── M2M_TrasferUnitRequest.cs │ │ ├── ObjectAddRequestHandler.cs │ │ ├── ObjectGetRequestHandler.cs │ │ ├── ObjectLockRequestHandler.cs │ │ ├── ObjectRemoveRequestHandler.cs │ │ ├── ObjectUnLockRequestHandler.cs │ │ └── R2G_GetLoginKeyHandler.cs │ ├── Helper │ │ ├── HotfixHelper.cs │ │ └── MessageHelper.cs │ ├── Other │ │ ├── EntityActorHandler.cs │ │ ├── InnerMessageDispatcher.cs │ │ └── OuterMessageDispatcher.cs │ ├── Server.Hotfix.csproj │ └── System │ │ ├── ActorComponentSystem.cs │ │ ├── NetInnerComponentSystem.cs │ │ ├── NetOuterComponentSystem.cs │ │ ├── RealmGateAddressComponentSystem.cs │ │ └── ServerFrameComponentSystem.cs │ ├── Model │ ├── Base │ │ ├── Config │ │ │ ├── ACategory.cs │ │ │ ├── AConfig.cs │ │ │ ├── AConfigComponent.cs │ │ │ ├── ConfigAttribute.cs │ │ │ ├── ConfigHelper.cs │ │ │ └── ICategory.cs │ │ ├── Event │ │ │ ├── AEventAttribute.cs │ │ │ ├── Env.cs │ │ │ ├── EnvKey.cs │ │ │ ├── EventAttribute.cs │ │ │ ├── EventIdType.cs │ │ │ └── IEvent.cs │ │ ├── Helper │ │ │ └── DllHelper.cs │ │ ├── Message │ │ │ ├── AActorMessage.cs │ │ │ ├── AMActorHandler.cs │ │ │ ├── AMRpcHandler.cs │ │ │ ├── AMessage.cs │ │ │ ├── ActorMessageAttribute.cs │ │ │ ├── ActorMessageHandlerAttribute.cs │ │ │ ├── ErrorCode.cs │ │ │ ├── IEntityActorHandler.cs │ │ │ ├── IMActorHandler.cs │ │ │ ├── IMHandler.cs │ │ │ ├── MessageAttribute.cs │ │ │ ├── MessageHandlerAttribute.cs │ │ │ ├── MessageInfo.cs │ │ │ └── OpcodeHelper.cs │ │ ├── Object │ │ │ ├── Component.cs │ │ │ ├── ComponentDB.cs │ │ │ ├── ComponentFactory.cs │ │ │ ├── Disposer.cs │ │ │ ├── Entity.cs │ │ │ ├── EntityFactory.cs │ │ │ ├── EntityType.cs │ │ │ ├── IAwake.cs │ │ │ ├── ILateUpdate.cs │ │ │ ├── ILoad.cs │ │ │ ├── IStart.cs │ │ │ ├── IUpdate.cs │ │ │ ├── Object.cs │ │ │ ├── ObjectEventAttribute.cs │ │ │ ├── ObjectEvents.cs │ │ │ └── ObjectPool.cs │ │ └── Other │ │ │ ├── HttpHandlerAttribute.cs │ │ │ └── IHttpHandler.cs │ ├── Component │ │ ├── ActorComponent.cs │ │ ├── ActorManagerComponent.cs │ │ ├── ActorMessageDispatherComponent.cs │ │ ├── ActorProxyComponent.cs │ │ ├── AppManagerComponent.cs │ │ ├── BenchmarkComponent.cs │ │ ├── Config │ │ │ ├── ClientConfig.cs │ │ │ ├── DBConfig.cs │ │ │ ├── HttpConfig.cs │ │ │ ├── InnerConfig.cs │ │ │ └── OuterConfig.cs │ │ ├── ConfigComponent.cs │ │ ├── DBCacheComponent.cs │ │ ├── DBComponent.cs │ │ ├── DBProxyComponent.cs │ │ ├── EventComponent.cs │ │ ├── GateSessionKeyComponent.cs │ │ ├── HttpComponent.cs │ │ ├── KVComponent.cs │ │ ├── LocationComponent.cs │ │ ├── LocationProxyComponent.cs │ │ ├── MessageDispatherComponent.cs │ │ ├── NetInnerComponent.cs │ │ ├── NetOuterComponent.cs │ │ ├── NetworkComponent.cs │ │ ├── NumericComponent.cs │ │ ├── OpcodeTypeComponent.cs │ │ ├── OptionComponent.cs │ │ ├── Player │ │ │ └── SessionInfoComponent.cs │ │ ├── PlayerComponent.cs │ │ ├── RealmGateAddressComponent.cs │ │ ├── RobotComponent.cs │ │ ├── ServerFrameComponent.cs │ │ ├── Session │ │ │ └── SessionPlayerComponent.cs │ │ ├── StartConfigComponent.cs │ │ ├── TimerComponent.cs │ │ ├── Unit │ │ │ ├── LockComponent.cs │ │ │ ├── MasterComponent.cs │ │ │ └── UnitGateComponent.cs │ │ └── UnitComponent.cs │ ├── Entity │ │ ├── ActorProxy.cs │ │ ├── Config │ │ │ ├── BuffConfig.cs │ │ │ └── StartConfig.cs │ │ ├── DBTask.cs │ │ ├── DBTaskQueue.cs │ │ ├── EntityDB.cs │ │ ├── Game.cs │ │ ├── Http.cs │ │ ├── Location.cs │ │ ├── Message │ │ │ ├── InnerMessage.cs │ │ │ ├── Opcode.cs │ │ │ └── OuterMessage.cs │ │ ├── Player.cs │ │ ├── Scene.cs │ │ ├── SceneEntity.cs │ │ ├── Session.cs │ │ └── Unit.cs │ ├── Generate │ │ └── SerializerBinary │ │ │ ├── CommonSerializer.cs │ │ │ └── Protocol │ │ │ ├── Model.A2M_Reload.Binary.cs │ │ │ ├── Model.AActorMessage.Binary.cs │ │ │ ├── Model.AActorRequest.Binary.cs │ │ │ ├── Model.AActorResponse.Binary.cs │ │ │ ├── Model.AFrameMessage.Binary.cs │ │ │ ├── Model.AMessage.Binary.cs │ │ │ ├── Model.ARequest.Binary.cs │ │ │ ├── Model.AResponse.Binary.cs │ │ │ ├── Model.ActorRequest.Binary.cs │ │ │ ├── Model.ActorResponse.Binary.cs │ │ │ ├── Model.ActorRpcRequest.Binary.cs │ │ │ ├── Model.ActorRpcResponse.Binary.cs │ │ │ ├── Model.Actor_CreateUnits.Binary.cs │ │ │ ├── Model.Actor_Test.Binary.cs │ │ │ ├── Model.Actor_TestRequest.Binary.cs │ │ │ ├── Model.Actor_TestResponse.Binary.cs │ │ │ ├── Model.Actor_TransferRequest.Binary.cs │ │ │ ├── Model.Actor_TransferResponse.Binary.cs │ │ │ ├── Model.C2G_EnterMap.Binary.cs │ │ │ ├── Model.C2G_LoginGate.Binary.cs │ │ │ ├── Model.C2M_Reload.Binary.cs │ │ │ ├── Model.C2R_Login.Binary.cs │ │ │ ├── Model.C2R_Ping.Binary.cs │ │ │ ├── Model.DBQueryBatchRequest.Binary.cs │ │ │ ├── Model.DBQueryBatchResponse.Binary.cs │ │ │ ├── Model.DBQueryJsonRequest.Binary.cs │ │ │ ├── Model.DBQueryJsonResponse.Binary.cs │ │ │ ├── Model.DBQueryRequest.Binary.cs │ │ │ ├── Model.DBQueryResponse.Binary.cs │ │ │ ├── Model.DBSaveBatchRequest.Binary.cs │ │ │ ├── Model.DBSaveBatchResponse.Binary.cs │ │ │ ├── Model.DBSaveRequest.Binary.cs │ │ │ ├── Model.DBSaveResponse.Binary.cs │ │ │ ├── Model.FrameMessage.Binary.cs │ │ │ ├── Model.Frame_ClickMap.Binary.cs │ │ │ ├── Model.G2C_EnterMap.Binary.cs │ │ │ ├── Model.G2C_LoginGate.Binary.cs │ │ │ ├── Model.G2G_LockReleaseRequest.Binary.cs │ │ │ ├── Model.G2G_LockReleaseResponse.Binary.cs │ │ │ ├── Model.G2G_LockRequest.Binary.cs │ │ │ ├── Model.G2G_LockResponse.Binary.cs │ │ │ ├── Model.G2M_CreateUnit.Binary.cs │ │ │ ├── Model.G2R_GetLoginKey.Binary.cs │ │ │ ├── Model.M2A_Reload.Binary.cs │ │ │ ├── Model.M2C_Reload.Binary.cs │ │ │ ├── Model.M2G_CreateUnit.Binary.cs │ │ │ ├── Model.M2M_TrasferUnitRequest.Binary.cs │ │ │ ├── Model.M2M_TrasferUnitResponse.Binary.cs │ │ │ ├── Model.ObjectAddRequest.Binary.cs │ │ │ ├── Model.ObjectAddResponse.Binary.cs │ │ │ ├── Model.ObjectGetRequest.Binary.cs │ │ │ ├── Model.ObjectGetResponse.Binary.cs │ │ │ ├── Model.ObjectLockRequest.Binary.cs │ │ │ ├── Model.ObjectLockResponse.Binary.cs │ │ │ ├── Model.ObjectRemoveRequest.Binary.cs │ │ │ ├── Model.ObjectRemoveResponse.Binary.cs │ │ │ ├── Model.ObjectUnLockRequest.Binary.cs │ │ │ ├── Model.ObjectUnLockResponse.Binary.cs │ │ │ ├── Model.R2C_Login.Binary.cs │ │ │ ├── Model.R2C_Ping.Binary.cs │ │ │ ├── Model.R2G_GetLoginKey.Binary.cs │ │ │ └── Model.UnitInfo.Binary.cs │ ├── Helper │ │ └── MongoHelper.cs │ ├── Message │ │ ├── AMHandler.cs │ │ ├── AppType.cs │ │ ├── IMessageDispatcher.cs │ │ ├── IMessagePacker.cs │ │ ├── MongoPacker.cs │ │ ├── ProtobufPacker.cs │ │ ├── RpcException.cs │ │ └── SerializerPacker.cs │ ├── Other │ │ ├── NumericType.cs │ │ ├── OneThreadSynchronizationContext.cs │ │ └── Options.cs │ ├── Server.Model.csproj │ └── Server.Model.csproj.user │ ├── SerializerBinaryEditor │ ├── CSGenerate.cs │ ├── Program.cs │ ├── SerializerBinaryEditor.cs │ └── SerializerBinaryEditor.csproj │ ├── Server.sln │ └── ThirdParty │ ├── ENet │ ├── CMakeLists.txt │ ├── ENet.vcxproj │ ├── ENet.vcxproj.filters │ ├── ENet.vcxproj.user │ ├── callbacks.c │ ├── compress.c │ ├── enet │ │ ├── callbacks.h │ │ ├── enet.h │ │ ├── list.h │ │ ├── protocol.h │ │ ├── time.h │ │ ├── types.h │ │ ├── unix.h │ │ ├── utility.h │ │ └── win32.h │ ├── host.c │ ├── list.c │ ├── packet.c │ ├── peer.c │ ├── protocol.c │ ├── unix.c │ └── win32.c │ ├── MongodbDriver │ ├── DotNetCoreDriver │ │ ├── DotNetCoreDriver.sln │ │ ├── MongoDB.Bson │ │ │ └── MongoDB.Bson.csproj │ │ ├── MongoDB.Driver.Core │ │ │ └── MongoDB.Driver.Core.csproj │ │ └── MongoDB.Driver │ │ │ └── MongoDB.Driver.csproj │ ├── MongoDB.Bson │ │ ├── BsonConstants.cs │ │ ├── BsonDefaults.cs │ │ ├── BsonExtensionMethods.cs │ │ ├── BsonUtils.cs │ │ ├── Exceptions │ │ │ ├── BsonException.cs │ │ │ ├── BsonInternalException.cs │ │ │ ├── BsonSerializationException.cs │ │ │ ├── DuplicateBsonMemberMapAttributeException.cs │ │ │ └── TruncationException.cs │ │ ├── IO │ │ │ ├── ArrayElementNameAccelerator.cs │ │ │ ├── BsonBinaryReader.cs │ │ │ ├── BsonBinaryReaderBookmark.cs │ │ │ ├── BsonBinaryReaderContext.cs │ │ │ ├── BsonBinaryReaderSettings.cs │ │ │ ├── BsonBinaryWriter.cs │ │ │ ├── BsonBinaryWriterContext.cs │ │ │ ├── BsonBinaryWriterSettings.cs │ │ │ ├── BsonChunkPool.cs │ │ │ ├── BsonDocumentReader.cs │ │ │ ├── BsonDocumentReaderBookmark.cs │ │ │ ├── BsonDocumentReaderContext.cs │ │ │ ├── BsonDocumentReaderSettings.cs │ │ │ ├── BsonDocumentWriter.cs │ │ │ ├── BsonDocumentWriterContext.cs │ │ │ ├── BsonDocumentWriterSettings.cs │ │ │ ├── BsonReader.cs │ │ │ ├── BsonReaderBookmark.cs │ │ │ ├── BsonReaderSettings.cs │ │ │ ├── BsonReaderState.cs │ │ │ ├── BsonStream.cs │ │ │ ├── BsonStreamAdapter.cs │ │ │ ├── BsonStreamExtensions.cs │ │ │ ├── BsonTrie.cs │ │ │ ├── BsonWriter.cs │ │ │ ├── BsonWriterSettings.cs │ │ │ ├── BsonWriterState.cs │ │ │ ├── ByteArrayBuffer.cs │ │ │ ├── ByteArrayChunk.cs │ │ │ ├── ByteBufferFactory.cs │ │ │ ├── ByteBufferSlice.cs │ │ │ ├── ByteBufferStream.cs │ │ │ ├── CStringUtf8Encoding.cs │ │ │ ├── ContextType.cs │ │ │ ├── IBsonChunk.cs │ │ │ ├── IBsonChunkSource.cs │ │ │ ├── IBsonReader.cs │ │ │ ├── IBsonReaderExtensions.cs │ │ │ ├── IBsonWriter.cs │ │ │ ├── IBsonWriterExtensions.cs │ │ │ ├── IByteBuffer.cs │ │ │ ├── IElementNameValidator.cs │ │ │ ├── INameDecoder.cs │ │ │ ├── InputBufferChunkSource.cs │ │ │ ├── JsonBuffer.cs │ │ │ ├── JsonConvert.cs │ │ │ ├── JsonOutputMode.cs │ │ │ ├── JsonReader.cs │ │ │ ├── JsonReaderBookmark.cs │ │ │ ├── JsonReaderContext.cs │ │ │ ├── JsonReaderSettings.cs │ │ │ ├── JsonScanner.cs │ │ │ ├── JsonToken.cs │ │ │ ├── JsonWriter.cs │ │ │ ├── JsonWriterContext.cs │ │ │ ├── JsonWriterSettings.cs │ │ │ ├── MultiChunkBuffer.cs │ │ │ ├── NoOpElementNameValidator.cs │ │ │ ├── OutputBufferChunkSource.cs │ │ │ ├── SingleChunkBuffer.cs │ │ │ ├── TrieNameDecoder.cs │ │ │ ├── Utf8Encodings.cs │ │ │ ├── Utf8Helper.cs │ │ │ └── Utf8NameDecoder.cs │ │ ├── MongoDB.Bson.csproj │ │ ├── ObjectModel │ │ │ ├── BsonArray.cs │ │ │ ├── BsonBinaryData.cs │ │ │ ├── BsonBinarySubType.cs │ │ │ ├── BsonBoolean.cs │ │ │ ├── BsonDateTime.cs │ │ │ ├── BsonDecimal128.cs │ │ │ ├── BsonDocument.cs │ │ │ ├── BsonDocumentWrapper.cs │ │ │ ├── BsonDouble.cs │ │ │ ├── BsonElement.cs │ │ │ ├── BsonInt32.cs │ │ │ ├── BsonInt64.cs │ │ │ ├── BsonJavaScript.cs │ │ │ ├── BsonJavaScriptWithScope.cs │ │ │ ├── BsonMaxKey.cs │ │ │ ├── BsonMinKey.cs │ │ │ ├── BsonNull.cs │ │ │ ├── BsonObjectId.cs │ │ │ ├── BsonRegularExpression.cs │ │ │ ├── BsonString.cs │ │ │ ├── BsonSymbol.cs │ │ │ ├── BsonSymbolTable.cs │ │ │ ├── BsonTimestamp.cs │ │ │ ├── BsonType.cs │ │ │ ├── BsonTypeMapper.cs │ │ │ ├── BsonTypeMapperOptions.cs │ │ │ ├── BsonUndefined.cs │ │ │ ├── BsonValue.cs │ │ │ ├── Decimal128.cs │ │ │ ├── GuidConverter.cs │ │ │ ├── GuidRepresentation.cs │ │ │ ├── IConvertibleToBsonDocument.cs │ │ │ ├── ICustomBsonTypeMapper.cs │ │ │ ├── LazyBsonArray.cs │ │ │ ├── LazyBsonDocument.cs │ │ │ ├── MaterializedOnDemandBsonArray.cs │ │ │ ├── MaterializedOnDemandBsonDocument.cs │ │ │ ├── ObjectId.cs │ │ │ ├── RawBsonArray.cs │ │ │ ├── RawBsonDocument.cs │ │ │ └── UInt128.cs │ │ ├── PowerOf2.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── Serialization │ │ │ ├── AttributedSerializationProvider.cs │ │ │ ├── Attributes │ │ │ │ ├── BsonConstructorAttribute.cs │ │ │ │ ├── BsonDateTimeOptionsAttribute.cs │ │ │ │ ├── BsonDefaultValueAttribute.cs │ │ │ │ ├── BsonDictionaryOptionsAttribute.cs │ │ │ │ ├── BsonDiscriminatorAttribute.cs │ │ │ │ ├── BsonElementAttribute.cs │ │ │ │ ├── BsonExtraElementsAttribute.cs │ │ │ │ ├── BsonFactoryMethodAttribute.cs │ │ │ │ ├── BsonIdAttribute.cs │ │ │ │ ├── BsonIgnoreAttribute.cs │ │ │ │ ├── BsonIgnoreExtraElementsAttribute.cs │ │ │ │ ├── BsonIgnoreIfDefaultAttribute.cs │ │ │ │ ├── BsonIgnoreIfNullAttribute.cs │ │ │ │ ├── BsonKnownTypesAttribute.cs │ │ │ │ ├── BsonMemberMapAttributeUsageAttribute.cs │ │ │ │ ├── BsonNoIdAttribute.cs │ │ │ │ ├── BsonRepresentationAttribute.cs │ │ │ │ ├── BsonRequiredAttribute.cs │ │ │ │ ├── BsonSerializationOptionsAttribute.cs │ │ │ │ ├── BsonSerializerAttribute.cs │ │ │ │ ├── BsonTimeSpanOptionsAttribute.cs │ │ │ │ ├── IBsonClassMapAttribute.cs │ │ │ │ ├── IBsonCreatorMapAttribute.cs │ │ │ │ ├── IBsonMemberMapAttribute.cs │ │ │ │ └── IBsonPostProcessingAttribute.cs │ │ │ ├── BsonClassMap.cs │ │ │ ├── BsonClassMapSerializationProvider.cs │ │ │ ├── BsonCreatorMap.cs │ │ │ ├── BsonDeserializationArgs.cs │ │ │ ├── BsonDeserializationContext.cs │ │ │ ├── BsonDocumentBackedClass.cs │ │ │ ├── BsonMemberMap.cs │ │ │ ├── BsonObjectModelSerializationProvider.cs │ │ │ ├── BsonSerializationArgs.cs │ │ │ ├── BsonSerializationContext.cs │ │ │ ├── BsonSerializationInfo.cs │ │ │ ├── BsonSerializationProviderBase.cs │ │ │ ├── BsonSerializer.cs │ │ │ ├── BsonSerializerRegistry.cs │ │ │ ├── CollectionsSerializationProvider.cs │ │ │ ├── Conventions │ │ │ │ ├── AttributeConventionPack.cs │ │ │ │ ├── CamelCaseElementNameConvention.cs │ │ │ │ ├── ConventionBase.cs │ │ │ │ ├── ConventionPack.cs │ │ │ │ ├── ConventionRegistry.cs │ │ │ │ ├── ConventionRunner.cs │ │ │ │ ├── DefaultConventionPack.cs │ │ │ │ ├── DelegateClassMapConvention.cs │ │ │ │ ├── DelegateMemberMapConvention.cs │ │ │ │ ├── DelegatePostProcessingConvention.cs │ │ │ │ ├── EnumRepresentationConvention.cs │ │ │ │ ├── HierarchicalDiscriminatorConvention.cs │ │ │ │ ├── IClassMapConvention.cs │ │ │ │ ├── IConvention.cs │ │ │ │ ├── IConventionPack.cs │ │ │ │ ├── ICreatorMapConvention.cs │ │ │ │ ├── IDiscriminatorConvention.cs │ │ │ │ ├── IMemberMapConvention.cs │ │ │ │ ├── IPostProcessingConvention.cs │ │ │ │ ├── IgnoreExtraElementsConvention.cs │ │ │ │ ├── IgnoreIfDefaultConvention.cs │ │ │ │ ├── IgnoreIfNullConvention.cs │ │ │ │ ├── ImmutableTypeClassMapConvention.cs │ │ │ │ ├── LookupIdGeneratorConvention.cs │ │ │ │ ├── MemberDefaultValueConvention.cs │ │ │ │ ├── MemberNameElementNameConvention.cs │ │ │ │ ├── NamedExtraElementsMemberConvention.cs │ │ │ │ ├── NamedIdMemberConvention.cs │ │ │ │ ├── NamedParameterCreatorMapConvention.cs │ │ │ │ ├── NoIdMemberConvention.cs │ │ │ │ ├── ObjectDiscriminatorConvention.cs │ │ │ │ ├── ReadWriteMemberFinderConvention.cs │ │ │ │ ├── ResetClassMapConvention.cs │ │ │ │ ├── ResetMemberMapsConvention.cs │ │ │ │ ├── ScalarDiscriminatorConvention.cs │ │ │ │ ├── StandardDiscriminatorConvention.cs │ │ │ │ └── StringObjectIdIdGeneratorConvention.cs │ │ │ ├── CreatorMapDelegateCompiler.cs │ │ │ ├── DiscriminatedInterfaceSerializationProvider.cs │ │ │ ├── ExpressionVisitor.cs │ │ │ ├── IBsonArraySerializer.cs │ │ │ ├── IBsonDictionarySerializer.cs │ │ │ ├── IBsonDocumentSerializer.cs │ │ │ ├── IBsonIdProvider.cs │ │ │ ├── IBsonPolymorphicSerializer.cs │ │ │ ├── IBsonSerializationProvider.cs │ │ │ ├── IBsonSerializer.cs │ │ │ ├── IBsonSerializerExtensions.cs │ │ │ ├── IBsonSerializerRegistry.cs │ │ │ ├── IChildSerializerConfigurable.cs │ │ │ ├── ICreatorSelector.cs │ │ │ ├── IDictionaryRepresentationConfigurable.cs │ │ │ ├── IIdGenerator.cs │ │ │ ├── IRepresentationConfigurable.cs │ │ │ ├── IRepresentationConverterConfigurable.cs │ │ │ ├── IdGenerators │ │ │ │ ├── AscendingGuidGenerator.cs │ │ │ │ ├── BsonBinaryDataGuidGenerator.cs │ │ │ │ ├── BsonObjectIdGenerator.cs │ │ │ │ ├── CombGuidGenerator.cs │ │ │ │ ├── GuidGenerator.cs │ │ │ │ ├── NullIdChecker.cs │ │ │ │ ├── ObjectIdGenerator.cs │ │ │ │ ├── StringObjectIdGenerator.cs │ │ │ │ └── ZeroIdChecker.cs │ │ │ ├── MostArgumentsCreatorSelector.cs │ │ │ ├── Options │ │ │ │ ├── DictionaryRepresentation.cs │ │ │ │ ├── RepresentationConverter.cs │ │ │ │ └── TimeSpanUnits.cs │ │ │ ├── PrimitiveSerializationProvider.cs │ │ │ ├── Serializers │ │ │ │ ├── AbstractClassSerializer.cs │ │ │ │ ├── ArraySerializer.cs │ │ │ │ ├── BitArraySerializer.cs │ │ │ │ ├── BooleanSerializer.cs │ │ │ │ ├── BsonArraySerializer.cs │ │ │ │ ├── BsonBinaryDataSerializer.cs │ │ │ │ ├── BsonBooleanSerializer.cs │ │ │ │ ├── BsonClassMapSerializer.cs │ │ │ │ ├── BsonDateTimeSerializer.cs │ │ │ │ ├── BsonDecimal128Serializer.cs │ │ │ │ ├── BsonDocumentBackedClassSerializer.cs │ │ │ │ ├── BsonDocumentSerializer.cs │ │ │ │ ├── BsonDocumentWrapperSerializer.cs │ │ │ │ ├── BsonDoubleSerializer.cs │ │ │ │ ├── BsonInt32Serializer.cs │ │ │ │ ├── BsonInt64Serializer.cs │ │ │ │ ├── BsonJavaScriptSerializer.cs │ │ │ │ ├── BsonJavaScriptWithScopeSerializer.cs │ │ │ │ ├── BsonMaxKeySerializer.cs │ │ │ │ ├── BsonMinKeySerializer.cs │ │ │ │ ├── BsonNullSerializer.cs │ │ │ │ ├── BsonObjectIdSerializer.cs │ │ │ │ ├── BsonRegularExpressionSerializer.cs │ │ │ │ ├── BsonStringSerializer.cs │ │ │ │ ├── BsonSymbolSerializer.cs │ │ │ │ ├── BsonTimestampSerializer.cs │ │ │ │ ├── BsonUndefinedSerializer.cs │ │ │ │ ├── BsonValueCSharpNullSerializer.cs │ │ │ │ ├── BsonValueSerializer.cs │ │ │ │ ├── BsonValueSerializerBase.cs │ │ │ │ ├── ByteArraySerializer.cs │ │ │ │ ├── ByteSerializer.cs │ │ │ │ ├── CharSerializer.cs │ │ │ │ ├── ClassSerializerBase.cs │ │ │ │ ├── CultureInfoSerializer.cs │ │ │ │ ├── DateTimeOffsetSerializer.cs │ │ │ │ ├── DateTimeSerializer.cs │ │ │ │ ├── Decimal128Serializer.cs │ │ │ │ ├── DecimalSerializer.cs │ │ │ │ ├── DictionaryInterfaceImplementerSerializer.cs │ │ │ │ ├── DictionarySerializerBase.cs │ │ │ │ ├── DiscriminatedInterfaceSerializer.cs │ │ │ │ ├── DiscriminatedWrapperSerializer.cs │ │ │ │ ├── DoubleSerializer.cs │ │ │ │ ├── DynamicDocumentBaseSerializer.cs │ │ │ │ ├── EnumSerializer.cs │ │ │ │ ├── EnumerableInterfaceImplementerSerializer.cs │ │ │ │ ├── EnumerableInterfaceImplementerSerializerBase.cs │ │ │ │ ├── EnumerableSerializerBase.cs │ │ │ │ ├── ExpandoObjectSerializer.cs │ │ │ │ ├── GuidSerializer.cs │ │ │ │ ├── IPAddressSerializer.cs │ │ │ │ ├── IPEndPointSerializer.cs │ │ │ │ ├── ImpliedImplementationInterfaceSerializer.cs │ │ │ │ ├── Int16Serializer.cs │ │ │ │ ├── Int32Serializer.cs │ │ │ │ ├── Int64Serializer.cs │ │ │ │ ├── KeyValuePairSerializer.cs │ │ │ │ ├── LazyBsonArraySerializer.cs │ │ │ │ ├── LazyBsonDocumentSerializer.cs │ │ │ │ ├── NullableGenericSerializer.cs │ │ │ │ ├── ObjectIdSerializer.cs │ │ │ │ ├── ObjectSerializer.cs │ │ │ │ ├── PartiallyRawBsonDocumentSerializer.cs │ │ │ │ ├── ProjectingDeserializer.cs │ │ │ │ ├── QueueSerializer.cs │ │ │ │ ├── RawBsonArraySerializer.cs │ │ │ │ ├── RawBsonDocumentSerializer.cs │ │ │ │ ├── ReadOnlyCollectionSerializer.cs │ │ │ │ ├── ReadOnlyCollectionSubclassSerializer.cs │ │ │ │ ├── SByteSerializer.cs │ │ │ │ ├── SealedClassSerializerBase.cs │ │ │ │ ├── SerializeAsNominalTypeSerializer.cs │ │ │ │ ├── SerializerBase.cs │ │ │ │ ├── SerializerHelper.cs │ │ │ │ ├── SingleSerializer.cs │ │ │ │ ├── StackSerializer.cs │ │ │ │ ├── StringSerializer.cs │ │ │ │ ├── StructSerializerBase.cs │ │ │ │ ├── ThreeDimensionalArraySerializer.cs │ │ │ │ ├── TimeSpanSerializer.cs │ │ │ │ ├── TupleSerializers.cs │ │ │ │ ├── TwoDimensionalArraySerializer.cs │ │ │ │ ├── UInt16Serializer.cs │ │ │ │ ├── UInt32Serializer.cs │ │ │ │ ├── UInt64Serializer.cs │ │ │ │ ├── UndiscriminatedActualTypeSerializer.cs │ │ │ │ ├── UriSerializer.cs │ │ │ │ └── VersionSerializer.cs │ │ │ ├── TypeMappingSerializationProvider.cs │ │ │ └── TypeNameDiscriminator.cs │ │ └── packages.config │ ├── MongoDB.Driver.Core │ │ ├── BatchTransformingAsyncCursor.cs │ │ ├── Collation.cs │ │ ├── CollectionNamespace.cs │ │ ├── Core │ │ │ ├── Async │ │ │ │ └── AsyncQueue.cs │ │ │ ├── Authentication │ │ │ │ ├── AuthenticationHelper.cs │ │ │ │ ├── DefaultAuthenticator.cs │ │ │ │ ├── GssapiAuthenticator.cs │ │ │ │ ├── IAuthenticator.cs │ │ │ │ ├── MongoDBCRAuthenticator.cs │ │ │ │ ├── MongoDBX509Authenticator.cs │ │ │ │ ├── PlainAuthenticator.cs │ │ │ │ ├── SaslAuthenticator.cs │ │ │ │ ├── ScramSha1Authenticator.cs │ │ │ │ ├── Sspi │ │ │ │ │ ├── AuthIdentity.cs │ │ │ │ │ ├── AuthIdentityFlag.cs │ │ │ │ │ ├── DataRepresentation.cs │ │ │ │ │ ├── EncryptQualityOfProtection.cs │ │ │ │ │ ├── NativeMethods.cs │ │ │ │ │ ├── QueryContextAttribute.cs │ │ │ │ │ ├── SecurityBuffer.cs │ │ │ │ │ ├── SecurityBufferDescriptor.cs │ │ │ │ │ ├── SecurityBufferType.cs │ │ │ │ │ ├── SecurityContext.cs │ │ │ │ │ ├── SecurityCredential.cs │ │ │ │ │ ├── SecurityCredentialUse.cs │ │ │ │ │ ├── SecurityPackageContextSizes.cs │ │ │ │ │ ├── SecurityPackageInfo.cs │ │ │ │ │ ├── SspiContextFlags.cs │ │ │ │ │ ├── SspiHandle.cs │ │ │ │ │ ├── SspiPackage.cs │ │ │ │ │ └── Win32Exception.cs │ │ │ │ └── UsernamePasswordCredential.cs │ │ │ ├── Bindings │ │ │ │ ├── ChannelChannelSource.cs │ │ │ │ ├── ChannelReadBinding.cs │ │ │ │ ├── ChannelReadWriteBinding.cs │ │ │ │ ├── ChannelSourceHandle.cs │ │ │ │ ├── ChannelSourceReadWriteBinding.cs │ │ │ │ ├── IBinding.cs │ │ │ │ ├── IChannel.cs │ │ │ │ ├── IChannelSource.cs │ │ │ │ ├── ReadBindingHandle.cs │ │ │ │ ├── ReadPreferenceBinding.cs │ │ │ │ ├── ReadWriteBindingHandle.cs │ │ │ │ ├── ServerChannelSource.cs │ │ │ │ ├── SingleServerReadBinding.cs │ │ │ │ ├── SingleServerReadWriteBinding.cs │ │ │ │ ├── SplitReadWriteBinding.cs │ │ │ │ └── WritableServerBinding.cs │ │ │ ├── Clusters │ │ │ │ ├── Cluster.cs │ │ │ │ ├── ClusterConnectionMode.cs │ │ │ │ ├── ClusterDescription.cs │ │ │ │ ├── ClusterDescriptionChangedEventArgs.cs │ │ │ │ ├── ClusterFactory.cs │ │ │ │ ├── ClusterId.cs │ │ │ │ ├── ClusterState.cs │ │ │ │ ├── ClusterType.cs │ │ │ │ ├── ElectionId.cs │ │ │ │ ├── ICluster.cs │ │ │ │ ├── IClusterFactory.cs │ │ │ │ ├── MultiServerCluster.cs │ │ │ │ ├── ReplicaSetConfig.cs │ │ │ │ ├── ServerSelectors │ │ │ │ │ ├── CompositeServerSelector.cs │ │ │ │ │ ├── DelegateServerSelector.cs │ │ │ │ │ ├── EndPointServerSelector.cs │ │ │ │ │ ├── IServerSelector.cs │ │ │ │ │ ├── LatencyLimitingServerSelector.cs │ │ │ │ │ ├── RandomServerSelector.cs │ │ │ │ │ ├── ReadPreferenceServerSelector.cs │ │ │ │ │ └── WritableServerSelector.cs │ │ │ │ └── SingleServerCluster.cs │ │ │ ├── Configuration │ │ │ │ ├── ClusterBuilder.cs │ │ │ │ ├── ClusterBuilderExtensions.cs │ │ │ │ ├── ClusterSettings.cs │ │ │ │ ├── ConnectionPoolSettings.cs │ │ │ │ ├── ConnectionSettings.cs │ │ │ │ ├── ConnectionString.cs │ │ │ │ ├── ServerSettings.cs │ │ │ │ ├── SslStreamSettings.cs │ │ │ │ └── TcpStreamSettings.cs │ │ │ ├── ConnectionPools │ │ │ │ ├── ExclusiveConnectionPool.cs │ │ │ │ ├── ExclusiveConnectionPoolFactory.cs │ │ │ │ ├── IConnectionPool.cs │ │ │ │ └── IConnectionPoolFactory.cs │ │ │ ├── Connections │ │ │ │ ├── BinaryConnection.cs │ │ │ │ ├── BinaryConnectionFactory.cs │ │ │ │ ├── BuildInfoResult.cs │ │ │ │ ├── ClientDocumentHelper.cs │ │ │ │ ├── CommandEventHelper.cs │ │ │ │ ├── ConnectionDescription.cs │ │ │ │ ├── ConnectionExtensions.cs │ │ │ │ ├── ConnectionId.cs │ │ │ │ ├── ConnectionInitializer.cs │ │ │ │ ├── IConnection.cs │ │ │ │ ├── IConnectionFactory.cs │ │ │ │ ├── IConnectionInitializer.cs │ │ │ │ ├── IStreamFactory.cs │ │ │ │ ├── IsMasterResult.cs │ │ │ │ ├── SslStreamFactory.cs │ │ │ │ └── TcpStreamFactory.cs │ │ │ ├── Events │ │ │ │ ├── ClusterAddedServerEvent.cs │ │ │ │ ├── ClusterAddingServerEvent.cs │ │ │ │ ├── ClusterClosedEvent.cs │ │ │ │ ├── ClusterClosingEvent.cs │ │ │ │ ├── ClusterDescriptionChangedEvent.cs │ │ │ │ ├── ClusterOpenedEvent.cs │ │ │ │ ├── ClusterOpeningEvent.cs │ │ │ │ ├── ClusterRemovedServerEvent.cs │ │ │ │ ├── ClusterRemovingServerEvent.cs │ │ │ │ ├── ClusterSelectedServerEvent.cs │ │ │ │ ├── ClusterSelectingServerEvent.cs │ │ │ │ ├── ClusterSelectingServerFailedEvent.cs │ │ │ │ ├── CommandFailedEvent.cs │ │ │ │ ├── CommandStartedEvent.cs │ │ │ │ ├── CommandSucceededEvent.cs │ │ │ │ ├── ConnectionClosedEvent.cs │ │ │ │ ├── ConnectionClosingEvent.cs │ │ │ │ ├── ConnectionFailedEvent.cs │ │ │ │ ├── ConnectionOpenedEvent.cs │ │ │ │ ├── ConnectionOpeningEvent.cs │ │ │ │ ├── ConnectionOpeningFailedEvent.cs │ │ │ │ ├── ConnectionPoolAddedConnectionEvent.cs │ │ │ │ ├── ConnectionPoolAddingConnectionEvent.cs │ │ │ │ ├── ConnectionPoolCheckedInConnectionEvent.cs │ │ │ │ ├── ConnectionPoolCheckedOutConnectionEvent.cs │ │ │ │ ├── ConnectionPoolCheckingInConnectionEvent.cs │ │ │ │ ├── ConnectionPoolCheckingOutConnectionEvent.cs │ │ │ │ ├── ConnectionPoolCheckingOutConnectionFailedEvent.cs │ │ │ │ ├── ConnectionPoolClosedEvent.cs │ │ │ │ ├── ConnectionPoolClosingEvent.cs │ │ │ │ ├── ConnectionPoolOpenedEvent.cs │ │ │ │ ├── ConnectionPoolOpeningEvent.cs │ │ │ │ ├── ConnectionPoolRemovedConnectionEvent.cs │ │ │ │ ├── ConnectionPoolRemovingConnectionEvent.cs │ │ │ │ ├── ConnectionReceivedMessageEvent.cs │ │ │ │ ├── ConnectionReceivingMessageEvent.cs │ │ │ │ ├── ConnectionReceivingMessageFailedEvent.cs │ │ │ │ ├── ConnectionSendingMessagesEvent.cs │ │ │ │ ├── ConnectionSendingMessagesFailedEvent.cs │ │ │ │ ├── ConnectionSentMessagesEvent.cs │ │ │ │ ├── Diagnostics │ │ │ │ │ ├── PerformanceCounterEventSubscriber.cs │ │ │ │ │ ├── PerformanceCounters │ │ │ │ │ │ ├── ConnectionPerformanceRecorder.cs │ │ │ │ │ │ ├── ConnectionPoolPerformanceRecorder.cs │ │ │ │ │ │ ├── PerformanceCounterAttribute.cs │ │ │ │ │ │ └── PerformanceCounterPackage.cs │ │ │ │ │ ├── TraceSourceCommandEventSubscriber.cs │ │ │ │ │ ├── TraceSourceEventHelper.cs │ │ │ │ │ └── TraceSourceEventSubscriber.cs │ │ │ │ ├── EventAggregator.cs │ │ │ │ ├── EventContext.cs │ │ │ │ ├── IEventSubscriber.cs │ │ │ │ ├── ReflectionEventSubscriber.cs │ │ │ │ ├── ServerClosedEvent.cs │ │ │ │ ├── ServerClosingEvent.cs │ │ │ │ ├── ServerDescriptionChangedEvent.cs │ │ │ │ ├── ServerHeartbeatFailedEvent.cs │ │ │ │ ├── ServerHeartbeatStartedEvent.cs │ │ │ │ ├── ServerHeartbeatSucceededEvent.cs │ │ │ │ ├── ServerOpenedEvent.cs │ │ │ │ ├── ServerOpeningEvent.cs │ │ │ │ └── SingleEventSubscriber.cs │ │ │ ├── Misc │ │ │ │ ├── ArrayFiltersFeature.cs │ │ │ │ ├── BatchableSource.cs │ │ │ │ ├── CachedEnumerable.cs │ │ │ │ ├── CollationFeature.cs │ │ │ │ ├── CommandsThatWriteAcceptWriteConcernFeature.cs │ │ │ │ ├── DefaultRandomStringGenerator.cs │ │ │ │ ├── EndPointHelper.cs │ │ │ │ ├── Ensure.cs │ │ │ │ ├── ExceptionMapper.cs │ │ │ │ ├── ExponentiallyWeightedMovingAverage.cs │ │ │ │ ├── Feature.cs │ │ │ │ ├── IClock.cs │ │ │ │ ├── IRandomStringGenerator.cs │ │ │ │ ├── IdGenerator.cs │ │ │ │ ├── IndexMap.cs │ │ │ │ ├── InterlockedInt32.cs │ │ │ │ ├── Metronome.cs │ │ │ │ ├── Range.cs │ │ │ │ ├── ReadAheadEnumerable.cs │ │ │ │ ├── ReadConcernFeature.cs │ │ │ │ ├── ReferenceCounted.cs │ │ │ │ ├── SemanticVersion.cs │ │ │ │ ├── SemaphoreSlimRequest.cs │ │ │ │ ├── StreamExtensionMethods.cs │ │ │ │ ├── StringBuilderExtensionMethods.cs │ │ │ │ ├── SystemClock.cs │ │ │ │ ├── TaskExtensions.cs │ │ │ │ ├── ThreadStaticRandom.cs │ │ │ │ ├── TimeSpanParser.cs │ │ │ │ └── ToStringComparer.cs │ │ │ ├── Operations │ │ │ │ ├── AggregateExplainOperation.cs │ │ │ │ ├── AggregateOperation.cs │ │ │ │ ├── AggregateToCollectionOperation.cs │ │ │ │ ├── AsyncCursor.cs │ │ │ │ ├── AsyncCursorEnumerableOneTimeAdapter.cs │ │ │ │ ├── AsyncCursorEnumerator.cs │ │ │ │ ├── AsyncCursorSourceEnumerableAdapter.cs │ │ │ │ ├── BulkDeleteOperation.cs │ │ │ │ ├── BulkDeleteOperationEmulator.cs │ │ │ │ ├── BulkInsertOperation.cs │ │ │ │ ├── BulkInsertOperationEmulator.cs │ │ │ │ ├── BulkMixedWriteOperation.cs │ │ │ │ ├── BulkUnmixedWriteOperationBase.cs │ │ │ │ ├── BulkUnmixedWriteOperationEmulatorBase.cs │ │ │ │ ├── BulkUpdateOperation.cs │ │ │ │ ├── BulkUpdateOperationEmulator.cs │ │ │ │ ├── BulkWriteBatchResult.cs │ │ │ │ ├── BulkWriteBatchResultCombiner.cs │ │ │ │ ├── BulkWriteConcernError.cs │ │ │ │ ├── BulkWriteOperationError.cs │ │ │ │ ├── BulkWriteOperationResult.cs │ │ │ │ ├── BulkWriteOperationResultConverter.cs │ │ │ │ ├── BulkWriteOperationUpsert.cs │ │ │ │ ├── CommandOperationBase.cs │ │ │ │ ├── CountOperation.cs │ │ │ │ ├── CreateCollectionOperation.cs │ │ │ │ ├── CreateIndexRequest.cs │ │ │ │ ├── CreateIndexesOperation.cs │ │ │ │ ├── CreateIndexesUsingCommandOperation.cs │ │ │ │ ├── CreateIndexesUsingInsertOperation.cs │ │ │ │ ├── CreateViewOperation.cs │ │ │ │ ├── CursorBatchDeserializationHelper.cs │ │ │ │ ├── CursorType.cs │ │ │ │ ├── DatabaseExistsOperation.cs │ │ │ │ ├── DeleteOpcodeOperation.cs │ │ │ │ ├── DeleteOpcodeOperationEmulator.cs │ │ │ │ ├── DeleteRequest.cs │ │ │ │ ├── DistinctOperation.cs │ │ │ │ ├── DropCollectionOperation.cs │ │ │ │ ├── DropDatabaseOperation.cs │ │ │ │ ├── DropIndexOperation.cs │ │ │ │ ├── ElementDeserializer.cs │ │ │ │ ├── ElementNameValidators │ │ │ │ │ ├── CollectionElementNameValidator.cs │ │ │ │ │ ├── ElementNameValidatorFactory.cs │ │ │ │ │ ├── UpdateElementNameValidator.cs │ │ │ │ │ └── UpdateOrReplacementElementNameValidator.cs │ │ │ │ ├── EvalOperation.cs │ │ │ │ ├── ExplainOperation.cs │ │ │ │ ├── ExplainVerbosity.cs │ │ │ │ ├── FindAndModifyOperationBase.cs │ │ │ │ ├── FindAndModifyValueDeserializer.cs │ │ │ │ ├── FindCommandOperation.cs │ │ │ │ ├── FindOneAndDeleteOperation.cs │ │ │ │ ├── FindOneAndReplaceOperation.cs │ │ │ │ ├── FindOneAndUpdateOperation.cs │ │ │ │ ├── FindOpcodeOperation.cs │ │ │ │ ├── FindOperation.cs │ │ │ │ ├── GeoNearOperation.cs │ │ │ │ ├── GeoSearchOperation.cs │ │ │ │ ├── GroupOperation.cs │ │ │ │ ├── IOperation.cs │ │ │ │ ├── IndexNameHelper.cs │ │ │ │ ├── InsertOpcodeOperation.cs │ │ │ │ ├── InsertOpcodeOperationEmulator.cs │ │ │ │ ├── InsertRequest.cs │ │ │ │ ├── ListCollectionsOperation.cs │ │ │ │ ├── ListCollectionsUsingCommandOperation.cs │ │ │ │ ├── ListCollectionsUsingQueryOperation.cs │ │ │ │ ├── ListDatabasesOperation.cs │ │ │ │ ├── ListIndexesOperation.cs │ │ │ │ ├── ListIndexesUsingCommandOperation.cs │ │ │ │ ├── ListIndexesUsingQueryOperation.cs │ │ │ │ ├── MapReduceLegacyOperation.cs │ │ │ │ ├── MapReduceOperation.cs │ │ │ │ ├── MapReduceOperationBase.cs │ │ │ │ ├── MapReduceOutputMode.cs │ │ │ │ ├── MapReduceOutputToCollectionOperation.cs │ │ │ │ ├── MongoBulkWriteOperationException.cs │ │ │ │ ├── OperationExtensionMethods.cs │ │ │ │ ├── ParallelScanOperation.cs │ │ │ │ ├── PingOperation.cs │ │ │ │ ├── QueryHelper.cs │ │ │ │ ├── ReIndexOperation.cs │ │ │ │ ├── ReadCommandOperation.cs │ │ │ │ ├── RenameCollectionOperation.cs │ │ │ │ ├── ReturnDocument.cs │ │ │ │ ├── UpdateOpcodeOperation.cs │ │ │ │ ├── UpdateOpcodeOperationEmulator.cs │ │ │ │ ├── UpdateRequest.cs │ │ │ │ ├── UpdateType.cs │ │ │ │ ├── WriteCommandOperation.cs │ │ │ │ ├── WriteConcernErrorHelper.cs │ │ │ │ ├── WriteRequest.cs │ │ │ │ └── WriteRequestType.cs │ │ │ ├── Servers │ │ │ │ ├── HeartbeatDelay.cs │ │ │ │ ├── IClusterableServerFactory.cs │ │ │ │ ├── IServer.cs │ │ │ │ ├── IServerMonitor.cs │ │ │ │ ├── IServerMonitorFactory.cs │ │ │ │ ├── Server.cs │ │ │ │ ├── ServerDescription.cs │ │ │ │ ├── ServerDescriptionChangedEventArgs.cs │ │ │ │ ├── ServerFactory.cs │ │ │ │ ├── ServerId.cs │ │ │ │ ├── ServerMonitor.cs │ │ │ │ ├── ServerMonitorFactory.cs │ │ │ │ ├── ServerState.cs │ │ │ │ └── ServerType.cs │ │ │ └── WireProtocol │ │ │ │ ├── CommandResponseHandling.cs │ │ │ │ ├── CommandWireProtocol.cs │ │ │ │ ├── CursorBatch.cs │ │ │ │ ├── DeleteWireProtocol.cs │ │ │ │ ├── GetMoreWireProtocol.cs │ │ │ │ ├── IWireProtocol.cs │ │ │ │ ├── InsertWireProtocol.cs │ │ │ │ ├── KillCursorsWireProtocol.cs │ │ │ │ ├── Messages │ │ │ │ ├── DeleteMessage.cs │ │ │ │ ├── Encoders │ │ │ │ │ ├── BinaryEncoders │ │ │ │ │ │ ├── BinaryMessageEncoderFactory.cs │ │ │ │ │ │ ├── DeleteMessageBinaryEncoder.cs │ │ │ │ │ │ ├── GetMoreMessageBinaryEncoder.cs │ │ │ │ │ │ ├── InsertMessageBinaryEncoder.cs │ │ │ │ │ │ ├── KillCursorsMessageBinaryEncoder.cs │ │ │ │ │ │ ├── MessageBinaryEncoderBase.cs │ │ │ │ │ │ ├── Opcode.cs │ │ │ │ │ │ ├── QueryMessageBinaryEncoder.cs │ │ │ │ │ │ ├── ReplyMessageBinaryEncoder.cs │ │ │ │ │ │ └── UpdateMessageBinaryEncoder.cs │ │ │ │ │ ├── IEncodableMessage.cs │ │ │ │ │ ├── IMessageEncoder.cs │ │ │ │ │ ├── IMessageEncoderFactory.cs │ │ │ │ │ ├── IMessageEncoderSelector.cs │ │ │ │ │ ├── JsonEncoders │ │ │ │ │ │ ├── DeleteMessageJsonEncoder.cs │ │ │ │ │ │ ├── GetMoreMessageJsonEncoder.cs │ │ │ │ │ │ ├── InsertMessageJsonEncoder.cs │ │ │ │ │ │ ├── JsonMessageEncoderFactory.cs │ │ │ │ │ │ ├── KillCursorsMessageJsonEncoder.cs │ │ │ │ │ │ ├── MessageJsonEncoderBase.cs │ │ │ │ │ │ ├── QueryMessageJsonEncoder.cs │ │ │ │ │ │ ├── ReplyMessageJsonEncoder.cs │ │ │ │ │ │ └── UpdateMessageJsonEncoder.cs │ │ │ │ │ ├── MessageEncoderSettings.cs │ │ │ │ │ └── ReplyMessageEncoderSelector.cs │ │ │ │ ├── GetMoreMessage.cs │ │ │ │ ├── InsertMessage.cs │ │ │ │ ├── KillCursorsMessage.cs │ │ │ │ ├── MongoDBMessage.cs │ │ │ │ ├── MongoDBMessageType.cs │ │ │ │ ├── QueryMessage.cs │ │ │ │ ├── ReplyMessage.cs │ │ │ │ ├── RequestMessage.cs │ │ │ │ ├── ResponseMessage.cs │ │ │ │ └── UpdateMessage.cs │ │ │ │ ├── QueryWireProtocol.cs │ │ │ │ ├── UpdateWireProtocol.cs │ │ │ │ └── WriteWireProtocolBase.cs │ │ ├── DatabaseNamespace.cs │ │ ├── DeferredAsyncCursor.cs │ │ ├── DocumentValidationAction.cs │ │ ├── DocumentValidationLevel.cs │ │ ├── IAsyncCursor.cs │ │ ├── IAsyncCursorSource.cs │ │ ├── MongoAuthenticationException.cs │ │ ├── MongoClientException.cs │ │ ├── MongoCommandException.cs │ │ ├── MongoConfigurationException.cs │ │ ├── MongoConnectionClosedException.cs │ │ ├── MongoConnectionException.cs │ │ ├── MongoCursorNotFoundException.cs │ │ ├── MongoDB.Driver.Core.csproj │ │ ├── MongoDuplicateKeyException.cs │ │ ├── MongoException.cs │ │ ├── MongoExecutionTimeoutException.cs │ │ ├── MongoIncompatibleDriverException.cs │ │ ├── MongoInternalException.cs │ │ ├── MongoNodeIsRecoveringException.cs │ │ ├── MongoNotPrimaryException.cs │ │ ├── MongoQueryException.cs │ │ ├── MongoServerException.cs │ │ ├── MongoWaitQueueFullException.cs │ │ ├── MongoWriteConcernException.cs │ │ ├── Optional.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── ReadConcern.cs │ │ ├── ReadConcernLevel.cs │ │ ├── ReadPreference.cs │ │ ├── ReadPreferenceMode.cs │ │ ├── ServerErrorCategory.cs │ │ ├── SingleBatchAsyncCursor.cs │ │ ├── Tag.cs │ │ ├── TagSet.cs │ │ ├── WriteConcern.cs │ │ ├── WriteConcernResult.cs │ │ └── packages.config │ ├── MongoDB.Driver │ │ ├── AggregateBucketAutoGranularity.cs │ │ ├── AggregateBucketAutoOptions.cs │ │ ├── AggregateBucketAutoResult.cs │ │ ├── AggregateBucketAutoResultId.cs │ │ ├── AggregateBucketOptions.cs │ │ ├── AggregateBucketResult.cs │ │ ├── AggregateCountResult.cs │ │ ├── AggregateExpressionDefinition.cs │ │ ├── AggregateFacet.cs │ │ ├── AggregateFacetOptions.cs │ │ ├── AggregateFacetResult.cs │ │ ├── AggregateFacetResults.cs │ │ ├── AggregateFluent.cs │ │ ├── AggregateFluentBase.cs │ │ ├── AggregateGraphLookupOptions.cs │ │ ├── AggregateLookupOptions.cs │ │ ├── AggregateOptions.cs │ │ ├── AggregateSortByCountResult.cs │ │ ├── AggregateStringTranslationMode.cs │ │ ├── AggregateUnwindOptions.cs │ │ ├── ArrayFilterDefinition.cs │ │ ├── AsyncCursorHelper.cs │ │ ├── Builders.cs │ │ ├── BulkWriteError.cs │ │ ├── BulkWriteOptions.cs │ │ ├── BulkWriteResult.cs │ │ ├── BulkWriteUpsert.cs │ │ ├── ClusterKey.cs │ │ ├── ClusterRegistry.cs │ │ ├── Command.cs │ │ ├── ConnectionMode.cs │ │ ├── CountOptions.cs │ │ ├── CreateCollectionOptions.cs │ │ ├── CreateIndexModel.cs │ │ ├── CreateIndexOptions.cs │ │ ├── CreateViewOptions.cs │ │ ├── CursorType.cs │ │ ├── DeleteManyModel.cs │ │ ├── DeleteOneModel.cs │ │ ├── DeleteOptions.cs │ │ ├── DeleteResult.cs │ │ ├── DistinctOptions.cs │ │ ├── ExpressionTranslationOptions.cs │ │ ├── ExternalEvidence.cs │ │ ├── FieldDefinition.cs │ │ ├── FieldValueSerializerHelper.cs │ │ ├── FilterDefinition.cs │ │ ├── FilterDefinitionBuilder.cs │ │ ├── FilteredMongoCollectionBase.cs │ │ ├── FindFluent.cs │ │ ├── FindFluentBase.cs │ │ ├── FindOneAndDeleteOptions.cs │ │ ├── FindOneAndReplaceOptions.cs │ │ ├── FindOneAndUpdateOptions.cs │ │ ├── FindOptions.cs │ │ ├── GeoJsonObjectModel │ │ │ ├── GeoJson.cs │ │ │ ├── GeoJson2DCoordinates.cs │ │ │ ├── GeoJson2DGeographicCoordinates.cs │ │ │ ├── GeoJson2DProjectedCoordinates.cs │ │ │ ├── GeoJson3DCoordinates.cs │ │ │ ├── GeoJson3DGeographicCoordinates.cs │ │ │ ├── GeoJson3DProjectedCoordinates.cs │ │ │ ├── GeoJsonBoundingBox.cs │ │ │ ├── GeoJsonCoordinateReferenceSystem.cs │ │ │ ├── GeoJsonCoordinates.cs │ │ │ ├── GeoJsonFeature.cs │ │ │ ├── GeoJsonFeatureArgs.cs │ │ │ ├── GeoJsonFeatureCollection.cs │ │ │ ├── GeoJsonGeometry.cs │ │ │ ├── GeoJsonGeometryCollection.cs │ │ │ ├── GeoJsonLineString.cs │ │ │ ├── GeoJsonLineStringCoordinates.cs │ │ │ ├── GeoJsonLinearRingCoordinates.cs │ │ │ ├── GeoJsonLinkedCoordinateReferenceSystem.cs │ │ │ ├── GeoJsonMultiLineString.cs │ │ │ ├── GeoJsonMultiLineStringCoordinates.cs │ │ │ ├── GeoJsonMultiPoint.cs │ │ │ ├── GeoJsonMultiPointCoordinates.cs │ │ │ ├── GeoJsonMultiPolygon.cs │ │ │ ├── GeoJsonMultiPolygonCoordinates.cs │ │ │ ├── GeoJsonNamedCoordinateReferenceSystem.cs │ │ │ ├── GeoJsonObject.cs │ │ │ ├── GeoJsonObjectArgs.cs │ │ │ ├── GeoJsonObjectType.cs │ │ │ ├── GeoJsonPoint.cs │ │ │ ├── GeoJsonPolygon.cs │ │ │ ├── GeoJsonPolygonCoordinates.cs │ │ │ └── Serializers │ │ │ │ ├── GeoJson2DCoordinatesSerializer.cs │ │ │ │ ├── GeoJson2DGeographicCoordinatesSerializer.cs │ │ │ │ ├── GeoJson2DProjectedCoordinatesSerializer.cs │ │ │ │ ├── GeoJson3DCoordinatesSerializer.cs │ │ │ │ ├── GeoJson3DGeographicCoordinatesSerializer.cs │ │ │ │ ├── GeoJson3DProjectedCoordinatesSerializer.cs │ │ │ │ ├── GeoJsonBoundingBoxSerializer.cs │ │ │ │ ├── GeoJsonCoordinateReferenceSystemSerializer.cs │ │ │ │ ├── GeoJsonCoordinatesSerializer.cs │ │ │ │ ├── GeoJsonFeatureCollectionSerializer.cs │ │ │ │ ├── GeoJsonFeatureSerializer.cs │ │ │ │ ├── GeoJsonGeometryCollectionSerializer.cs │ │ │ │ ├── GeoJsonGeometrySerializer.cs │ │ │ │ ├── GeoJsonLineStringCoordinatesSerializer.cs │ │ │ │ ├── GeoJsonLineStringSerializer.cs │ │ │ │ ├── GeoJsonLinearRingCoordinatesSerializer.cs │ │ │ │ ├── GeoJsonLinkedCoordinateReferenceSystemSerializer.cs │ │ │ │ ├── GeoJsonMultiLineStringCoordinatesSerializer.cs │ │ │ │ ├── GeoJsonMultiLineStringSerializer.cs │ │ │ │ ├── GeoJsonMultiPointCoordinatesSerializer.cs │ │ │ │ ├── GeoJsonMultiPointSerializer.cs │ │ │ │ ├── GeoJsonMultiPolygonCoordinatesSerializer.cs │ │ │ │ ├── GeoJsonMultiPolygonSerializer.cs │ │ │ │ ├── GeoJsonNamedCoordinateReferenceSystemSerializer.cs │ │ │ │ ├── GeoJsonObjectSerializer.cs │ │ │ │ ├── GeoJsonObjectSerializerHelper.cs │ │ │ │ ├── GeoJsonPointSerializer.cs │ │ │ │ ├── GeoJsonPolygonCoordinatesSerializer.cs │ │ │ │ └── GeoJsonPolygonSerializer.cs │ │ ├── IAggregateFluent.cs │ │ ├── IAggregateFluentExtensions.cs │ │ ├── IFilteredMongoCollection.cs │ │ ├── IFindFluent.cs │ │ ├── IFindFluentExtensions.cs │ │ ├── IInheritableMongoClientSettings.cs │ │ ├── IMongoClient.cs │ │ ├── IMongoCollection.cs │ │ ├── IMongoCollectionExtensions.cs │ │ ├── IMongoDatabase.cs │ │ ├── IMongoIndexManager.cs │ │ ├── IOperationExecutor.cs │ │ ├── IndexKeysDefinition.cs │ │ ├── IndexKeysDefinitionBuilder.cs │ │ ├── IndexOptionDefaults.cs │ │ ├── InsertManyOptions.cs │ │ ├── InsertOneModel.cs │ │ ├── InsertOneOptions.cs │ │ ├── Linq │ │ │ ├── AggregateQueryableExecutionModel.cs │ │ │ ├── ExecutionPlanBuilder.cs │ │ │ ├── ExpressionHelper.cs │ │ │ ├── Expressions │ │ │ │ ├── AccumulatorExpression.cs │ │ │ │ ├── AccumulatorType.cs │ │ │ │ ├── AggregateExpressionExpression.cs │ │ │ │ ├── ArrayIndexExpression.cs │ │ │ │ ├── CollectionExpression.cs │ │ │ │ ├── ConcatExpression.cs │ │ │ │ ├── CorrelatedExpression.cs │ │ │ │ ├── DefaultIfEmptyExpression.cs │ │ │ │ ├── DistinctExpression.cs │ │ │ │ ├── DocumentExpression.cs │ │ │ │ ├── ExceptExpression.cs │ │ │ │ ├── ExpressionComparer.cs │ │ │ │ ├── ExpressionReplacer.cs │ │ │ │ ├── ExtensionExpression.cs │ │ │ │ ├── ExtensionExpressionType.cs │ │ │ │ ├── ExtensionExpressionVisitor.cs │ │ │ │ ├── FieldAsDocumentExpression.cs │ │ │ │ ├── FieldExpression.cs │ │ │ │ ├── GroupByExpression.cs │ │ │ │ ├── GroupByWithResultSelectorExpression.cs │ │ │ │ ├── GroupJoinExpression.cs │ │ │ │ ├── GroupingKeyExpression.cs │ │ │ │ ├── IFieldExpression.cs │ │ │ │ ├── ISerializationExpression.cs │ │ │ │ ├── ISourcedExpression.cs │ │ │ │ ├── InjectedFilterExpression.cs │ │ │ │ ├── IntersectExpression.cs │ │ │ │ ├── JoinExpression.cs │ │ │ │ ├── OrderByClause.cs │ │ │ │ ├── OrderByExpression.cs │ │ │ │ ├── PipelineExpression.cs │ │ │ │ ├── ResultOperator.cs │ │ │ │ ├── ResultOperators │ │ │ │ │ ├── AggregateResultOperator.cs │ │ │ │ │ ├── AllResultOperator.cs │ │ │ │ │ ├── AnyResultOperator.cs │ │ │ │ │ ├── ArrayResultOperator.cs │ │ │ │ │ ├── AverageResultOperator.cs │ │ │ │ │ ├── ContainsResultOperator.cs │ │ │ │ │ ├── CountResultOperator.cs │ │ │ │ │ ├── FirstResultOperator.cs │ │ │ │ │ ├── HashSetResultOperator.cs │ │ │ │ │ ├── LastResultOperator.cs │ │ │ │ │ ├── ListResultOperator.cs │ │ │ │ │ ├── MaxResultOperator.cs │ │ │ │ │ ├── MinResultOperator.cs │ │ │ │ │ ├── ResultTransformerHelper.cs │ │ │ │ │ ├── SingleResultOperator.cs │ │ │ │ │ ├── StandardDeviationResultOperator.cs │ │ │ │ │ └── SumResultOperator.cs │ │ │ │ ├── ReverseExpression.cs │ │ │ │ ├── SampleExpression.cs │ │ │ │ ├── SelectExpression.cs │ │ │ │ ├── SelectManyExpression.cs │ │ │ │ ├── SerializationExpression.cs │ │ │ │ ├── SerializedValueExpression.cs │ │ │ │ ├── SkipExpression.cs │ │ │ │ ├── TakeExpression.cs │ │ │ │ ├── UnionExpression.cs │ │ │ │ ├── WhereExpression.cs │ │ │ │ └── ZipExpression.cs │ │ │ ├── FieldExpressionFlattener.cs │ │ │ ├── IMongoQueryProvider.cs │ │ │ ├── IMongoQueryable.cs │ │ │ ├── IResultTransformer.cs │ │ │ ├── LinqExtensions.cs │ │ │ ├── MethodHelper.cs │ │ │ ├── MongoEnumerable.cs │ │ │ ├── MongoQueryProviderImpl.cs │ │ │ ├── MongoQueryable.cs │ │ │ ├── MongoQueryableImpl.cs │ │ │ ├── Processors │ │ │ │ ├── AccumulatorBinder.cs │ │ │ │ ├── BinderHelper.cs │ │ │ │ ├── CompositeMethodCallBinder.cs │ │ │ │ ├── CorrelatedAccumulatorRemover.cs │ │ │ │ ├── CorrelatedGroupRewriter.cs │ │ │ │ ├── EmbeddedPipeline │ │ │ │ │ ├── EmbeddedPipelineBinder.cs │ │ │ │ │ ├── EmbeddedPipelineBindingContext.cs │ │ │ │ │ └── MethodCallBinders │ │ │ │ │ │ ├── AggregateBinder.cs │ │ │ │ │ │ ├── AllBinder.cs │ │ │ │ │ │ ├── AnyBinder.cs │ │ │ │ │ │ ├── AsQueryableBinder.cs │ │ │ │ │ │ ├── AverageBinder.cs │ │ │ │ │ │ ├── ConcatBinder.cs │ │ │ │ │ │ ├── ContainsBinder.cs │ │ │ │ │ │ ├── CountBinder.cs │ │ │ │ │ │ ├── DefaultIfEmptyBinder.cs │ │ │ │ │ │ ├── DistinctBinder.cs │ │ │ │ │ │ ├── ExceptBinder.cs │ │ │ │ │ │ ├── FirstBinder.cs │ │ │ │ │ │ ├── IntersectBinder.cs │ │ │ │ │ │ ├── LastBinder.cs │ │ │ │ │ │ ├── MaxBinder.cs │ │ │ │ │ │ ├── MinBinder.cs │ │ │ │ │ │ ├── OfTypeBinder.cs │ │ │ │ │ │ ├── ReverseBinder.cs │ │ │ │ │ │ ├── SelectBinder.cs │ │ │ │ │ │ ├── SkipBinder.cs │ │ │ │ │ │ ├── StandardDeviationBinder.cs │ │ │ │ │ │ ├── SumBinder.cs │ │ │ │ │ │ ├── TakeBinder.cs │ │ │ │ │ │ ├── ToArrayBinder.cs │ │ │ │ │ │ ├── ToHashSetBinder.cs │ │ │ │ │ │ ├── ToListBinder.cs │ │ │ │ │ │ ├── UnionBinder.cs │ │ │ │ │ │ ├── WhereBinder.cs │ │ │ │ │ │ └── ZipBinder.cs │ │ │ │ ├── IBindingContext.cs │ │ │ │ ├── IMethodCallBinder.cs │ │ │ │ ├── MethodInfoMethodCallBinder.cs │ │ │ │ ├── MultipleWhereMerger.cs │ │ │ │ ├── NameBasedMethodCallBinder.cs │ │ │ │ ├── PartialEvaluator.cs │ │ │ │ ├── Pipeline │ │ │ │ │ ├── MethodCallBinders │ │ │ │ │ │ ├── AnyBinder.cs │ │ │ │ │ │ ├── AverageBinder.cs │ │ │ │ │ │ ├── CountBinder.cs │ │ │ │ │ │ ├── DistinctBinder.cs │ │ │ │ │ │ ├── FirstBinder.cs │ │ │ │ │ │ ├── GroupByBinder.cs │ │ │ │ │ │ ├── GroupByWithResultSelectorBinder.cs │ │ │ │ │ │ ├── JoinBinder.cs │ │ │ │ │ │ ├── JoinSerializer.cs │ │ │ │ │ │ ├── MaxBinder.cs │ │ │ │ │ │ ├── MinBinder.cs │ │ │ │ │ │ ├── OfTypeBinder.cs │ │ │ │ │ │ ├── OrderByBinder.cs │ │ │ │ │ │ ├── SampleBinder.cs │ │ │ │ │ │ ├── SelectBinder.cs │ │ │ │ │ │ ├── SelectManyBinder.cs │ │ │ │ │ │ ├── SelectingResultOperatorBinderBase.cs │ │ │ │ │ │ ├── SingleBinder.cs │ │ │ │ │ │ ├── SkipBinder.cs │ │ │ │ │ │ ├── StandardDeviationPopulationBinder.cs │ │ │ │ │ │ ├── StandardDeviationSampleBinder.cs │ │ │ │ │ │ ├── SumBinder.cs │ │ │ │ │ │ ├── TakeBinder.cs │ │ │ │ │ │ ├── ThenByBinder.cs │ │ │ │ │ │ └── WhereBinder.cs │ │ │ │ │ ├── PipelineBinder.cs │ │ │ │ │ └── PipelineBindingContext.cs │ │ │ │ ├── PipelineBinderBase.cs │ │ │ │ ├── PreviouslyUsedSerializerFinder.cs │ │ │ │ ├── ProjectionMapper.cs │ │ │ │ ├── SerializationBinder.cs │ │ │ │ ├── SerializerBuilder.cs │ │ │ │ ├── Transformer.cs │ │ │ │ └── Transformers │ │ │ │ │ ├── CollectionConstructorTransformer.cs │ │ │ │ │ ├── ConstantOnRightTransformer.cs │ │ │ │ │ ├── EqualsAnyBooleanTransformer.cs │ │ │ │ │ ├── ExpressionTransformerRegistry.cs │ │ │ │ │ ├── FirstLastNormalizingTransformer.cs │ │ │ │ │ ├── IExpressionTransformer.cs │ │ │ │ │ ├── NullableTransformer.cs │ │ │ │ │ ├── SelectSelectCombiningTransformer.cs │ │ │ │ │ ├── VBCoalesceTransformer.cs │ │ │ │ │ ├── VBCompareStringTransformer.cs │ │ │ │ │ ├── VBInformationIsNothingTransformer.cs │ │ │ │ │ ├── VBNothingConversionRemovalTransformer.cs │ │ │ │ │ └── VBStringIndexComparisonTransformer.cs │ │ │ ├── QueryableExecutionModel.cs │ │ │ ├── QueryableTranslation.cs │ │ │ ├── SerializerHelper.cs │ │ │ └── Translators │ │ │ │ ├── AggregateExpressionTranslator.cs │ │ │ │ ├── AggregateGroupTranslator.cs │ │ │ │ ├── AggregateLanguageTranslator.cs │ │ │ │ ├── AggregateProjectTranslator.cs │ │ │ │ ├── FieldNamePrefixer.cs │ │ │ │ ├── FindProjectionTranslator.cs │ │ │ │ ├── PredicateTranslator.cs │ │ │ │ ├── ProjectedObject.cs │ │ │ │ ├── ProjectedObjectDeserializer.cs │ │ │ │ └── QueryableTranslator.cs │ │ ├── ListCollectionsOptions.cs │ │ ├── MapReduceOptions.cs │ │ ├── MongoBulkWriteException.cs │ │ ├── MongoClient.cs │ │ ├── MongoClientBase.cs │ │ ├── MongoClientSettings.cs │ │ ├── MongoCollectionBase.cs │ │ ├── MongoCollectionImpl.cs │ │ ├── MongoCollectionSettings.cs │ │ ├── MongoCredential.cs │ │ ├── MongoCredentialStore.cs │ │ ├── MongoDB.Driver.csproj │ │ ├── MongoDBRef.cs │ │ ├── MongoDatabaseBase.cs │ │ ├── MongoDatabaseImpl.cs │ │ ├── MongoDatabaseSettings.cs │ │ ├── MongoDefaults.cs │ │ ├── MongoExternalIdentity.cs │ │ ├── MongoIdentity.cs │ │ ├── MongoIdentityEvidence.cs │ │ ├── MongoIndexManagerBase.cs │ │ ├── MongoInternalIdentity.cs │ │ ├── MongoServerAddress.cs │ │ ├── MongoUrl.cs │ │ ├── MongoUrlBuilder.cs │ │ ├── MongoUtils.cs │ │ ├── MongoWriteException.cs │ │ ├── MongoX509Identity.cs │ │ ├── OfTypeMongoCollection.cs │ │ ├── OfTypeSerializer.cs │ │ ├── OperationExecutor.cs │ │ ├── PasswordEvidence.cs │ │ ├── PipelineDefinition.cs │ │ ├── PipelineDefinitionBuilder.cs │ │ ├── PipelineStageDefinition.cs │ │ ├── PipelineStageDefinitionBuilder.cs │ │ ├── ProjectionDefinition.cs │ │ ├── ProjectionDefinitionBuilder.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── RenameCollectionOptions.cs │ │ ├── ReplaceOneModel.cs │ │ ├── ReplaceOneResult.cs │ │ ├── ReturnDocument.cs │ │ ├── Setting.cs │ │ ├── SortDefinition.cs │ │ ├── SortDefinitionBuilder.cs │ │ ├── SslSettings.cs │ │ ├── Support │ │ │ ├── IndexMap.cs │ │ │ └── ReflectionExtensions.cs │ │ ├── TextSearchOptions.cs │ │ ├── UpdateDefinition.cs │ │ ├── UpdateDefinitionBuilder.cs │ │ ├── UpdateManyModel.cs │ │ ├── UpdateOneModel.cs │ │ ├── UpdateOptions.cs │ │ ├── UpdateResult.cs │ │ ├── WriteConcernError.cs │ │ ├── WriteError.cs │ │ ├── WriteModel.cs │ │ ├── WriteModelType.cs │ │ └── packages.config │ └── MongoDB.Shared │ │ ├── ApplicationNameHelper.cs │ │ ├── CanonicalDisposableClass.cs │ │ ├── CanonicalDisposableDerivedClass.cs │ │ ├── CanonicalDisposableStruct.cs │ │ ├── CanonicalEquatableClass.cs │ │ ├── CanonicalEquatableDerivedClass.cs │ │ ├── CanonicalEquatableStruct.cs │ │ ├── GlobalAssemblyInfo.cs │ │ ├── Hasher.cs │ │ └── IncrementalMD5.cs │ └── Nuget │ ├── Nuget.csproj │ ├── Properties │ └── AssemblyInfo.cs │ └── packages.config ├── UnityPackageManager └── manifest.json ├── egametang-network-client.Editor.csproj ├── egametang-network-client.Plugins.csproj ├── egametang-network-client.csproj └── egametang-network-client.sln /.gitignore: -------------------------------------------------------------------------------- 1 | /[Ll]ibrary/ 2 | /[Tt]emp/ 3 | /[Oo]bj/ 4 | /[Bb]uild/ 5 | /[Bb]uilds/ 6 | /Assets/AssetStoreTools* 7 | netcoreapp2.0/ 8 | Logs/ 9 | obj/ 10 | Temp/ 11 | .vs/ 12 | 13 | # Visual Studio 2015 cache directory 14 | /.vs/ 15 | 16 | # Autogenerated VS/MD/Consulo solution and project files 17 | ExportedObj/ 18 | .consulo/ 19 | #*.csproj 20 | #*.unityproj 21 | #*.sln 22 | #*.suo 23 | *.tmp 24 | #*.user 25 | #*.userprefs 26 | *.pidb 27 | *.booproj 28 | *.svd 29 | *.pdb 30 | 31 | # Unity3D generated meta files 32 | *.pidb.meta 33 | 34 | # Unity3D Generated File On Crash Reports 35 | sysinfo.txt 36 | 37 | # Builds 38 | *.apk 39 | *.unitypackage 40 | -------------------------------------------------------------------------------- /Assets/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aaf3174af0c907d4c959b5b1f118b540 3 | folderAsset: yes 4 | timeCreated: 1510735775 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Editor/Serializer.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8323137bf4634254481328e85902f8e1 3 | folderAsset: yes 4 | timeCreated: 1510735775 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Editor/Serializer/CSGenerate.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d6d4b52587756a540a0b060283341642 3 | timeCreated: 1461600351 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Editor/Serializer/SerializerBinaryEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bea458df489e65441a52e649f5fa9bc0 3 | timeCreated: 1461600223 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8c86d8811dca88a4494e774bde772781 3 | folderAsset: yes 4 | timeCreated: 1510658956 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 10cdb62df06c505458108053d46f6571 3 | folderAsset: yes 4 | timeCreated: 1510629519 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c6b80b9392d8293478ebf5ddb0dfe47a 3 | folderAsset: yes 4 | timeCreated: 1510630253 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/DllHelper.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using System.Linq; 5 | using System.Reflection; 6 | using UnityEngine; 7 | 8 | namespace Model 9 | { 10 | public static class DllHelper 11 | { 12 | public static Type[] GetMonoTypes() 13 | { 14 | List types = new List(); 15 | foreach (var rAssembly in AppDomain.CurrentDomain.GetAssemblies()) 16 | { 17 | types.AddRange(rAssembly.GetTypes()); 18 | } 19 | return types.ToArray(); 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/DllHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 20fbd2b0398f14a4d89abd01726d5d25 3 | timeCreated: 1498118075 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/DoubleMap.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4490fa27a0147ae41b8c923f8daa7bc1 3 | timeCreated: 1476430040 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/EQueue.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | 4 | namespace Model 5 | { 6 | public class EQueue: IEnumerable 7 | { 8 | private readonly Queue list = new Queue(); 9 | 10 | public void Enqueue(T t) 11 | { 12 | this.list.Enqueue(t); 13 | } 14 | 15 | public T Dequeue() 16 | { 17 | T t = this.list.Dequeue(); 18 | return t; 19 | } 20 | 21 | public int Count 22 | { 23 | get 24 | { 25 | return this.list.Count; 26 | } 27 | } 28 | 29 | public IEnumerator GetEnumerator() 30 | { 31 | return this.list.GetEnumerator(); 32 | } 33 | 34 | public void Clear() 35 | { 36 | this.list.Clear(); 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/EQueue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dab3474e94a21ed4a87252287c00c567 3 | timeCreated: 1505386149 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/GameObjectHelper.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace Model 5 | { 6 | public static class GameObjectHelper 7 | { 8 | public static T Get(this GameObject gameObject, string key) where T : class 9 | { 10 | //try 11 | //{ 12 | // return gameObject.GetComponent().Get(key); 13 | //} 14 | //catch (Exception e) 15 | //{ 16 | // throw new Exception($"获取{gameObject.name}的ReferenceCollector key失败, key: {key}", e); 17 | //} 18 | return null; 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/GameObjectHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aae5801bb8dddb648b2347dc09067765 3 | timeCreated: 1498118314 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/IdGenerater.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public static class IdGenerater 4 | { 5 | public static long AppId { private get; set; } 6 | 7 | private static ushort value; 8 | 9 | public static long GenerateId() 10 | { 11 | long time = TimeHelper.ClientNowSeconds(); 12 | 13 | return (AppId << 48) + (time << 16) + ++value; 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/IdGenerater.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1418e246bc45e154ea76c01c5638e667 3 | timeCreated: 1474942922 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/Log.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public static class Log 4 | { 5 | public static void Warning(string msg) 6 | { 7 | UnityEngine.Debug.LogWarning(msg); 8 | } 9 | 10 | public static void Info(string msg) 11 | { 12 | UnityEngine.Debug.Log(msg); 13 | } 14 | 15 | public static void Error(string msg) 16 | { 17 | UnityEngine.Debug.LogError(msg); 18 | } 19 | 20 | public static void Debug(string msg) 21 | { 22 | UnityEngine.Debug.Log(msg); 23 | } 24 | 25 | public static void Flush() 26 | { 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/Log.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fc246493a8b0d404ba5453ac0dd404d6 3 | timeCreated: 1476552159 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/LogType.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public enum LogType 4 | { 5 | Warning, 6 | Info, 7 | Debug, 8 | Error, 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/LogType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8fa6ec6493510da42a2448ae9baf909b 3 | timeCreated: 1476689599 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/MultiMap.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7092b642480a58741a65a8c49d2e082c 3 | timeCreated: 1476430040 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/QueueDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Model 4 | { 5 | public class QueueDictionary 6 | { 7 | private readonly List list = new List(); 8 | private readonly Dictionary dictionary = new Dictionary(); 9 | 10 | public void Add(T t, K k) 11 | { 12 | this.list.Add(t); 13 | this.dictionary.Add(t, k); 14 | } 15 | 16 | public bool Remove(T t) 17 | { 18 | this.list.Remove(t); 19 | this.dictionary.Remove(t); 20 | return true; 21 | } 22 | 23 | public int Count 24 | { 25 | get 26 | { 27 | return this.list.Count; 28 | } 29 | } 30 | 31 | public T FirstKey 32 | { 33 | get 34 | { 35 | return this.list[0]; 36 | } 37 | } 38 | 39 | public K this[T t] 40 | { 41 | get 42 | { 43 | return this.dictionary[t]; 44 | } 45 | } 46 | } 47 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/QueueDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d3eba718e3f75042b78a193a75ee7b7 3 | timeCreated: 1476430040 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/StringHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d7b4a3306f5899c48966bcc2aea42a61 3 | timeCreated: 1474947336 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/TimeHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d84339e3b40f2b9418d7c60a62f9c50a 3 | timeCreated: 1474945123 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/TryLocker.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Threading; 3 | 4 | namespace Model 5 | { 6 | public class TryLock : IDisposable 7 | { 8 | private object locked; 9 | 10 | public bool HasLock { get; private set; } 11 | 12 | public TryLock(object obj) 13 | { 14 | if (!Monitor.TryEnter(obj)) 15 | { 16 | return; 17 | } 18 | 19 | this.HasLock = true; 20 | this.locked = obj; 21 | } 22 | 23 | public void Dispose() 24 | { 25 | if (!this.HasLock) 26 | { 27 | return; 28 | } 29 | 30 | Monitor.Exit(this.locked); 31 | this.locked = null; 32 | this.HasLock = false; 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/TryLocker.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b17c37646ccfe6d4d96df611e5664f8c 3 | timeCreated: 1476430040 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Base/ZipHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 75d07d90984a5dc4698c98d2fe3809bf 3 | timeCreated: 1474948216 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Client.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 607f537dcf111ea48a60db5a6b50a726 3 | folderAsset: yes 4 | timeCreated: 1510985596 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Client/ClientDispatcher.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a8a80ba0258647f2b5c0af2bf71576db 3 | timeCreated: 1503568672 -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Client/NetworkClient.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 151d2db7aab5bc8438bc039443ba0e3b 3 | timeCreated: 1498117616 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Client/NetworkOpcodeType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c2fdb0eab6ee13344a13ea81e2a0f426 3 | timeCreated: 1498820138 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Client/SerializerPacker.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0a68e9770dc2b984bbe53d52112ca726 3 | timeCreated: 1510739079 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Client/Session.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 73d149d0c325fa24d91a94843bd520b8 3 | timeCreated: 1498117617 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2fafa040b653b9847a9348a31a0233af 3 | folderAsset: yes 4 | timeCreated: 1498820830 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/AActorMessage.cs: -------------------------------------------------------------------------------- 1 |  2 | // 不要在这个文件加[ProtoInclude]跟[BsonKnowType]标签,加到InnerMessage.cs或者OuterMessage.cs里面去 3 | namespace Model 4 | { 5 | public abstract partial class AActorMessage : AMessage 6 | { 7 | } 8 | 9 | public abstract partial class AActorRequest : ARequest 10 | { 11 | } 12 | 13 | public abstract partial class AActorResponse : AResponse 14 | { 15 | } 16 | 17 | public abstract partial class AFrameMessage : AActorMessage 18 | { 19 | public long Id; 20 | } 21 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/AActorMessage.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a6e143f63ac64f97a66fd168b3442ec8 3 | timeCreated: 1503721327 -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/AMHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | public abstract class AMHandler : IMHandler where Message : AMessage 6 | { 7 | protected abstract void Run(ASession session, Message message); 8 | 9 | public void Handle(ASession session, AMessage msg) 10 | { 11 | Message message = msg as Message; 12 | if (message == null) 13 | { 14 | UnityEngine.Debug.LogError($"消息类型转换错误: {msg.GetType().Name} to {typeof(Message).Name}"); 15 | return; 16 | } 17 | if (session.Id == 0) 18 | { 19 | UnityEngine.Debug.LogError($"session disconnect {msg}"); 20 | return; 21 | } 22 | this.Run(session, message); 23 | } 24 | 25 | public Type GetMessageType() 26 | { 27 | return typeof(Message); 28 | } 29 | } 30 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/AMHandler.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 51f27baf9bcf4588a008ab171d42ffd7 3 | timeCreated: 1503744375 -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/AMessage.cs: -------------------------------------------------------------------------------- 1 | using Core.WindJson; 2 | using Core.Serializer; 3 | 4 | // 不要在这个文件加[ProtoInclude]跟[BsonKnowType]标签,加到InnerMessage.cs或者OuterMessage.cs里面去 5 | namespace Model 6 | { 7 | [SBGroupInerited("Protocol")] 8 | public abstract partial class AMessage : SerializerBinary 9 | { 10 | public override string ToString() 11 | { 12 | var rJsonNode = JsonParser.ToJsonNode(this); 13 | return rJsonNode?.ToString(); 14 | } 15 | } 16 | 17 | public abstract partial class ARequest : AMessage 18 | { 19 | public uint RpcId; 20 | } 21 | 22 | /// 23 | /// 服务端回的RPC消息需要继承这个抽象类 24 | /// 25 | public abstract partial class AResponse : AMessage 26 | { 27 | public uint RpcId; 28 | public int Error = 0; 29 | public string Message = ""; 30 | } 31 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/AMessage.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7f7b01638a2ed1242a9b81b7d6f408eb 3 | timeCreated: 1501467234 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/AppType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1486b49b78eabf64898a2f3b9ab415e8 3 | timeCreated: 1501467234 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/ErrorCode.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public static class ErrorCode 4 | { 5 | public const int ERR_Success = 0; 6 | public const int ERR_RpcFail = 1; 7 | public const int ERR_AccountOrPasswordError = 2; 8 | public const int ERR_ConnectGateKeyError = 3; 9 | public const int ERR_ReloadFail = 4; 10 | public const int ERR_NotFoundUnit = 5; 11 | } 12 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/ErrorCode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 303bb884f0f9ad24da9b0fe1acbcedaf 3 | timeCreated: 1501467234 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/IMHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | public interface IMHandler 6 | { 7 | void Handle(ASession session, AMessage message); 8 | Type GetMessageType(); 9 | } 10 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/IMHandler.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6081581f6dde45a0889b8593bdedf860 3 | timeCreated: 1503744375 -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/IMessageDispatcher.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public interface IMessageDispatcher 4 | { 5 | void Dispatch(ASession session, ushort opcode, int offset, byte[] messageBytes, AMessage message); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/IMessageDispatcher.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 69481855785b4b59834c766e4e2798e1 3 | timeCreated: 1503568535 -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/IMessagePacker.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Core.Serializer; 3 | 4 | namespace Model 5 | { 6 | public interface IMessagePacker 7 | { 8 | byte[] SerializeToByteArray(object obj); 9 | string SerializeToText(object obj); 10 | 11 | object DeserializeFrom(Type type, byte[] bytes); 12 | object DeserializeFrom(Type type, byte[] bytes, int index, int count); 13 | T DeserializeFrom(byte[] bytes) where T : SerializerBinary; 14 | T DeserializeFrom(byte[] bytes, int index, int count) where T : SerializerBinary; 15 | 16 | T DeserializeFrom(string str) where T : SerializerBinary; 17 | object DeserializeFrom(Type type, string str); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/IMessagePacker.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 09fe3a4882b1b50498860b3f672d1d47 3 | timeCreated: 1501467234 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/MessageAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | public class MessageAttribute: Attribute 6 | { 7 | public ushort Opcode { get; } 8 | 9 | public MessageAttribute(ushort opcode) 10 | { 11 | this.Opcode = opcode; 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/MessageAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 66c190633eef4db4485544e51062c212 3 | timeCreated: 1501467234 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/MessageHandlerAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | /// 6 | /// 搭配MessageComponent用来分发消息 7 | /// 8 | public class MessageHandlerAttribute: Attribute 9 | { 10 | public ushort Opcode { get; } 11 | 12 | public MessageHandlerAttribute(ushort opcode) 13 | { 14 | this.Opcode = opcode; 15 | } 16 | } 17 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/MessageHandlerAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 701bb8db44288494c97fc181c32e0ace 3 | timeCreated: 1501467234 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/MessageInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public struct MessageInfo 4 | { 5 | public ushort Opcode { get; set; } 6 | public AMessage Message { get; set; } 7 | 8 | public MessageInfo(ushort opcode, AMessage message) 9 | { 10 | this.Opcode = opcode; 11 | this.Message = message; 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/MessageInfo.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0b54864d3eb34ee4b90665941ecf5b87 3 | timeCreated: 1501467234 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/NumericType.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public enum NumericType 4 | { 5 | Max = 10000, 6 | 7 | Speed = 1000, 8 | SpeedBase = Speed * 10 + 1, 9 | SpeedAdd = Speed * 10 + 2, 10 | SpeedPct = Speed * 10 + 3, 11 | SpeedFinalAdd = Speed * 10 + 4, 12 | SpeedFinalPct = Speed * 10 + 5, 13 | 14 | Hp = 1001, 15 | HpBase = Hp * 10 + 1, 16 | 17 | MaxHp = 1002, 18 | MaxHpBase = MaxHp * 10 + 1, 19 | MaxHpAdd = MaxHp * 10 + 2, 20 | MaxHpPct = MaxHp * 10 + 3, 21 | MaxHpFinalAdd = MaxHp * 10 + 4, 22 | MaxHpFinalPct = MaxHp * 10 + 5, 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/NumericType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 48df3940e14514d4587f84d5ea698ad8 3 | timeCreated: 1501467234 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/OpcodeHelper.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Model 4 | { 5 | public static class OpcodeHelper 6 | { 7 | private static readonly HashSet needDebugLogMessageSet = new HashSet { 1 }; 8 | 9 | public static bool IsNeedDebugLogMessage(ushort opcode) 10 | { 11 | //return true; 12 | if (opcode > 1000) 13 | { 14 | return true; 15 | } 16 | 17 | if (needDebugLogMessageSet.Contains(opcode)) 18 | { 19 | return true; 20 | } 21 | 22 | return false; 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/OpcodeHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0223d06ed67a2d349b0abedea86f6a40 3 | timeCreated: 1501467234 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/RpcException.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | /// 6 | /// RPC异常,带ErrorCode 7 | /// 8 | [Serializable] 9 | public class RpcException: Exception 10 | { 11 | public int Error { get; private set; } 12 | 13 | public RpcException(int error, string message): base($"Error: {error} Message: {message}") 14 | { 15 | this.Error = error; 16 | } 17 | 18 | public RpcException(int error, string message, Exception e): base($"Error: {error} Message: {message}", e) 19 | { 20 | this.Error = error; 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Message/RpcException.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 27fa1e2e2513ec047acbdaa4f770eee2 3 | timeCreated: 1501467234 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 89949efe62b53a044928bcf3075aad2f 3 | folderAsset: yes 4 | timeCreated: 1474943042 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/AChannel.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 05a074f965a8c214f8f1f1af1ecf4dcc 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/AService.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Threading.Tasks; 3 | 4 | namespace Model 5 | { 6 | public enum NetworkProtocol 7 | { 8 | TCP, 9 | UDP 10 | } 11 | 12 | public abstract class AService: IDisposable 13 | { 14 | public abstract AChannel GetChannel(long id); 15 | 16 | public abstract Task AcceptChannel(); 17 | 18 | public abstract AChannel ConnectChannel(string host, int port); 19 | 20 | public abstract void Remove(long channelId); 21 | 22 | public abstract void Update(); 23 | 24 | public abstract void Dispose(); 25 | } 26 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/AService.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b5af0de1c471e6c43989dc0349cc2bba 3 | timeCreated: 1503986858 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/ASession.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace Model 8 | { 9 | public abstract class ASession 10 | { 11 | public long Id { get; set; } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/ASession.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 87eea09ed5ac1944d9062fec2a7ad7c2 3 | timeCreated: 1510660314 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/TNet.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2b578de151e7f46489a1326f6b38658c 3 | folderAsset: yes 4 | timeCreated: 1440989101 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/TNet/PacketParser.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8b71d12882faac44992e531533491a5f 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/TNet/TBuffer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ea037025225a9c74b8ddb5349b0c18a6 3 | timeCreated: 1503986858 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/TNet/TChannel.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4cacc90d7e561c64a8ea0e9079163bb9 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/TNet/TService.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9c6cb526a0e4374438cbcbaa70239e4a 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ade7fc5c4181e7649bddfadfc570c72f 3 | folderAsset: yes 4 | timeCreated: 1440989101 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet/Library.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | internal static class Library 6 | { 7 | public static void Initialize() 8 | { 9 | int ret = NativeMethods.enet_initialize(); 10 | if (ret < 0) 11 | { 12 | throw new Exception($"Initialization failed, ret: {ret}"); 13 | } 14 | } 15 | 16 | public static void Deinitialize() 17 | { 18 | NativeMethods.enet_deinitialize(); 19 | } 20 | 21 | public static uint Time 22 | { 23 | get 24 | { 25 | return NativeMethods.enet_time_get(); 26 | } 27 | set 28 | { 29 | NativeMethods.enet_time_set(value); 30 | } 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet/Library.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d5dfbf30769f024da1a91ea2a6fc26b 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet/NativeMethods.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 35389856785ea104698c98410fef22d6 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet/NativeStructs.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0c22827e08133ae47aaba041ccbd7b66 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet/UAddress.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Net; 3 | 4 | namespace Model 5 | { 6 | internal struct UAddress 7 | { 8 | private readonly uint ip; 9 | private readonly ushort port; 10 | 11 | public UAddress(string host, int port) 12 | { 13 | IPAddress address = IPAddress.Parse(host); 14 | this.ip = BitConverter.ToUInt32(address.GetAddressBytes(), 0); 15 | this.port = (ushort) port; 16 | } 17 | 18 | public ENetAddress Struct 19 | { 20 | get 21 | { 22 | ENetAddress address = new ENetAddress { Host = this.ip, Port = this.port }; 23 | return address; 24 | } 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet/UAddress.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 25434e9690978f34eb6554089e5df159 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet/UChannel.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dc32f8527e761f74ba132eab17660a4a 3 | timeCreated: 1503986858 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet/UPacket.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9ce921dae0159cb44a2f23fb52a7b69c 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet/UPoller.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 019e23efabdb4e24590c4735d5e78df4 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet/UService.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 467cbc524035d6644b5bd164eded38a4 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet/USocket.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7611e7b646e2fa9448d445fded0c621a 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Framework/ETClient/Network/UNet/USocketManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 046affd300b9d2444974c08908b0eb88 3 | timeCreated: 1503986857 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Generate.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 431cab4e8e8d24542b4702b784107e4b 3 | folderAsset: yes 4 | timeCreated: 1510744881 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fa3bb76d0ca13af419555677f19e517c 3 | folderAsset: yes 4 | timeCreated: 1510744881 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 836a9b9d58d804d439e3a5b0cbbeaebb 3 | folderAsset: yes 4 | timeCreated: 1510744881 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/CommonSerializer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 68ba8cd8316298c4ea1c5de06265b59c 3 | timeCreated: 1510744882 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Model.UnitInfo.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class UnitInfo 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.UnitId); 18 | rWriter.Serialize(this.X); 19 | rWriter.Serialize(this.Z); 20 | } 21 | public override void Deserialize(BinaryReader rReader) 22 | { 23 | base.Deserialize(rReader); 24 | this.UnitId = rReader.Deserialize(this.UnitId); 25 | this.X = rReader.Deserialize(this.X); 26 | this.Z = rReader.Deserialize(this.Z); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Model.UnitInfo.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2f59e7300b477514ca58a2cae5b36432 3 | timeCreated: 1510745010 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 006943b1a31e16c4e9c54c028a7c7948 3 | folderAsset: yes 4 | timeCreated: 1510744882 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.AActorMessage.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class AActorMessage 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.AActorMessage.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 607552c171295d14cb5e11fe232c0016 3 | timeCreated: 1510744882 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.AActorRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class AActorRequest 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.AActorRequest.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cdd7154aeae5a3b4c8508bf60cb3cff8 3 | timeCreated: 1510744882 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.AActorResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class AActorResponse 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.AActorResponse.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e167e1e540a30ec4eb5ad7ea06805779 3 | timeCreated: 1510744882 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.AFrameMessage.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class AFrameMessage 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.Id); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.Id = rReader.Deserialize(this.Id); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.AFrameMessage.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1d8ed706f50558546bafae6b4bc4d97a 3 | timeCreated: 1510744883 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.AMessage.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class AMessage 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.AMessage.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 185b8b033988e3b44a28e36a653d18fd 3 | timeCreated: 1510744883 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.ARequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class ARequest 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.RpcId); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.RpcId = rReader.Deserialize(this.RpcId); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.ARequest.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 246bad0adce9c984dae044b1899d3985 3 | timeCreated: 1510744883 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.AResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class AResponse 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.RpcId); 18 | rWriter.Serialize(this.Error); 19 | rWriter.Serialize(this.Message); 20 | } 21 | public override void Deserialize(BinaryReader rReader) 22 | { 23 | base.Deserialize(rReader); 24 | this.RpcId = rReader.Deserialize(this.RpcId); 25 | this.Error = rReader.Deserialize(this.Error); 26 | this.Message = rReader.Deserialize(this.Message); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.AResponse.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a6e4c94877d122844bd1285728624932 3 | timeCreated: 1510744883 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Actor_CreateUnits.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class Actor_CreateUnits 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.Units); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.Units = rReader.Deserialize(this.Units); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Actor_CreateUnits.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e09e56c1cbd43a14e9e1b5b42ae2cf34 3 | timeCreated: 1510744886 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Actor_Test.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class Actor_Test 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.Info); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.Info = rReader.Deserialize(this.Info); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Actor_Test.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5be8e5dbfd8bb3b4bade35d1a417d7d0 3 | timeCreated: 1510744884 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Actor_TestRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class Actor_TestRequest 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.request); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.request = rReader.Deserialize(this.request); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Actor_TestRequest.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1e027139e2c1f874699e6fc5746e83f1 3 | timeCreated: 1510744885 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Actor_TestResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class Actor_TestResponse 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.response); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.response = rReader.Deserialize(this.response); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Actor_TestResponse.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 74bfa9304407fa24eb82c5993f826d14 3 | timeCreated: 1510744885 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Actor_TransferRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class Actor_TransferRequest 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.MapIndex); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.MapIndex = rReader.Deserialize(this.MapIndex); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Actor_TransferRequest.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 050327ea51027344a8ed8d803eb1c12c 3 | timeCreated: 1510744885 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Actor_TransferResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class Actor_TransferResponse 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Actor_TransferResponse.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cd56e198b24e28640bfdd8514a5f101b 3 | timeCreated: 1510744885 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.C2G_EnterMap.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class C2G_EnterMap 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.C2G_EnterMap.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a2a1b45d411b7914aa930ceb3194fcca 3 | timeCreated: 1510744885 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.C2G_LoginGate.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class C2G_LoginGate 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.Key); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.Key = rReader.Deserialize(this.Key); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.C2G_LoginGate.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1dbf51484b34a1d488dadac3f573ac34 3 | timeCreated: 1510744884 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.C2M_Reload.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class C2M_Reload 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize((int)this.AppType); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.AppType = (Model.AppType)rReader.Deserialize((int)this.AppType); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.C2M_Reload.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 296e7742f3cd24544a98eb1ac854b952 3 | timeCreated: 1510744886 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.C2R_Login.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class C2R_Login 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.Account); 18 | rWriter.Serialize(this.Password); 19 | } 20 | public override void Deserialize(BinaryReader rReader) 21 | { 22 | base.Deserialize(rReader); 23 | this.Account = rReader.Deserialize(this.Account); 24 | this.Password = rReader.Deserialize(this.Password); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.C2R_Login.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ca488e6f1601b324ba451e281859de14 3 | timeCreated: 1510744884 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.C2R_Ping.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class C2R_Ping 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.C2R_Ping.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7864b03b087d1d34eb7b4317b01a59c9 3 | timeCreated: 1510744887 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.FrameMessage.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class FrameMessage 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.Frame); 18 | rWriter.Serialize(this.Messages); 19 | } 20 | public override void Deserialize(BinaryReader rReader) 21 | { 22 | base.Deserialize(rReader); 23 | this.Frame = rReader.Deserialize(this.Frame); 24 | this.Messages = rReader.Deserialize(this.Messages); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.FrameMessage.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cae8a9a3b27f92f4889e94c1649d3ed4 3 | timeCreated: 1510744886 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Frame_ClickMap.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class Frame_ClickMap 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.X); 18 | rWriter.Serialize(this.Z); 19 | } 20 | public override void Deserialize(BinaryReader rReader) 21 | { 22 | base.Deserialize(rReader); 23 | this.X = rReader.Deserialize(this.X); 24 | this.Z = rReader.Deserialize(this.Z); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.Frame_ClickMap.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a142368afa8d21a43bb082fcb0d33810 3 | timeCreated: 1510744886 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.G2C_EnterMap.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class G2C_EnterMap 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.UnitId); 18 | rWriter.Serialize(this.Count); 19 | } 20 | public override void Deserialize(BinaryReader rReader) 21 | { 22 | base.Deserialize(rReader); 23 | this.UnitId = rReader.Deserialize(this.UnitId); 24 | this.Count = rReader.Deserialize(this.Count); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.G2C_EnterMap.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e9a5f779ff7fe394f87970020958fddc 3 | timeCreated: 1510744886 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.G2C_LoginGate.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class G2C_LoginGate 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.PlayerId); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.PlayerId = rReader.Deserialize(this.PlayerId); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.G2C_LoginGate.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6d7c44ec9bdfc694383c523b3baff4a1 3 | timeCreated: 1510744884 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.M2C_Reload.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class M2C_Reload 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.M2C_Reload.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6e94bfca7b509f340b16b9bbad571dd0 3 | timeCreated: 1510744887 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.R2C_Login.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class R2C_Login 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | rWriter.Serialize(this.Address); 18 | rWriter.Serialize(this.Key); 19 | } 20 | public override void Deserialize(BinaryReader rReader) 21 | { 22 | base.Deserialize(rReader); 23 | this.Address = rReader.Deserialize(this.Address); 24 | this.Key = rReader.Deserialize(this.Key); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.R2C_Login.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0e0dd808215ef7741ac945f591a64bf5 3 | timeCreated: 1510744884 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.R2C_Ping.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | using Game.Serializer; 5 | 6 | 7 | /// 8 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 9 | /// 10 | namespace Model 11 | { 12 | public partial class R2C_Ping 13 | { 14 | public override void Serialize(BinaryWriter rWriter) 15 | { 16 | base.Serialize(rWriter); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Assets/Generate/SerializerBinary/Runtime/Protocol/Model.R2C_Ping.Binary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 73f5547529a630e449eca4244dba4759 3 | timeCreated: 1510744887 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Plugins.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84feb29faf3c26f41bca9eab56c7b3f0 3 | folderAsset: yes 4 | timeCreated: 1510629509 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Plugins/Android.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ca75ee8ed5df9e54d894f195eb8f74f8 3 | folderAsset: yes 4 | timeCreated: 1510629812 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Plugins/Android/armeabi-v7a.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8ed4f8da3fefb454286276e911f3a1be 3 | folderAsset: yes 4 | timeCreated: 1505269177 5 | licenseType: Free 6 | PluginImporter: 7 | serializedVersion: 2 8 | iconMap: {} 9 | executionOrder: {} 10 | isPreloaded: 0 11 | isOverridable: 0 12 | platformData: 13 | data: 14 | first: 15 | Android: Android 16 | second: 17 | enabled: 1 18 | settings: {} 19 | data: 20 | first: 21 | Any: 22 | second: 23 | enabled: 0 24 | settings: {} 25 | data: 26 | first: 27 | Editor: Editor 28 | second: 29 | enabled: 0 30 | settings: 31 | DefaultValueInitialized: true 32 | userData: 33 | assetBundleName: 34 | assetBundleVariant: 35 | -------------------------------------------------------------------------------- /Assets/Plugins/Android/armeabi-v7a/libenet.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/winddyhe/egametang-network-client/c631dafb5b6e4109d79b3c45ccd574e875ebbc70/Assets/Plugins/Android/armeabi-v7a/libenet.so -------------------------------------------------------------------------------- /Assets/Plugins/Android/armeabi-v7a/libenet.so.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f348e42d420b0cf4bb775e1e179105f7 3 | timeCreated: 1490670825 4 | licenseType: Pro 5 | PluginImporter: 6 | serializedVersion: 1 7 | iconMap: {} 8 | executionOrder: {} 9 | isPreloaded: 0 10 | isOverridable: 0 11 | platformData: 12 | Android: 13 | enabled: 1 14 | settings: 15 | CPU: ARMv7 16 | Any: 17 | enabled: 0 18 | settings: {} 19 | Editor: 20 | enabled: 0 21 | settings: 22 | DefaultValueInitialized: true 23 | userData: 24 | assetBundleName: 25 | assetBundleVariant: 26 | -------------------------------------------------------------------------------- /Assets/Plugins/Core.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 73458b2cb123b2541affae289c1f3ae2 3 | folderAsset: yes 4 | timeCreated: 1510663191 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b2e5f276020d5b24484a523434685688 3 | folderAsset: yes 4 | timeCreated: 1435592074 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/CryptoUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ccd36716097823248b0cc7a7cfa514c2 3 | timeCreated: 1461261101 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/Debugger.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4ed226f1e0e313d4ab5b53a2d9ec734b 3 | timeCreated: 1461599814 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/Dict.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bfe9649020127ab418a560549e6fd8a9 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/GameObjectPool.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 008299b5e6c1ed44a9d8db550c20f7cc 3 | timeCreated: 1445571913 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/LexicalAnalysis.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 972f41ca2078b6b4c8816e5ee1cbd186 3 | timeCreated: 1471181590 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/ObjectExpand.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d4416bf708b02e8409db4102cd781127 3 | timeCreated: 1438095377 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/ReflectExpand.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8326741210c1f39468b7483c526d0904 3 | timeCreated: 1461599998 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/ReflectionAssist.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c8c31ca5bf493fb44a7efe72d59cb101 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/RuntimePerformance.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1662e6c7f2830394ba65771451a385de 3 | timeCreated: 1488971444 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/StringBuilderExpand.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7b94ea99a5fb2044e8c2565c869686c2 3 | timeCreated: 1461601402 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/TEditorUpdateMB.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8d60d8c8c190d354c89dc6a54ae1692f 3 | timeCreated: 1498059059 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/TObjectPool.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6a4fdaaa8d47add4280ce2a2df85b63d 3 | timeCreated: 1498062169 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/TSingleton.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cc27c681aab7b78468dba636050be8cd 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/TypeExpand.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0e152e7676d749b4cb668ea6401d55d3 3 | timeCreated: 1461599679 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/TypeSearch.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ba7d7f8f53c4323428f37f9d305745e0 3 | timeCreated: 1433589372 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/UnsafeVector3Array.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 325b6a92464a673469337f9835c94b47 3 | timeCreated: 1489161898 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Assist/UtilTool.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bd674b7a2d711ae499a378f194c3f4a1 3 | timeCreated: 1438566669 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Serializer.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6abf2b27789180e43b536067f67058e9 3 | folderAsset: yes 4 | timeCreated: 1496306731 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/Serializer/SerializerBinary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4052b79b4c41dfc4ebb0f1ec4e2af5cf 3 | timeCreated: 1496306731 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/WindJson.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5b87692a9bd112a40a44e12a7e050e42 3 | folderAsset: yes 4 | timeCreated: 1510736009 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/WindJson/JsonData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d821eab4e7c74644cb51c8d66b28aaf6 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | -------------------------------------------------------------------------------- /Assets/Plugins/Core/WindJson/JsonParser.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d014ba1b62ada0744aedf081644925e3 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | -------------------------------------------------------------------------------- /Assets/Plugins/ICSharpCode.SharpZipLib.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/winddyhe/egametang-network-client/c631dafb5b6e4109d79b3c45ccd574e875ebbc70/Assets/Plugins/ICSharpCode.SharpZipLib.dll -------------------------------------------------------------------------------- /Assets/Plugins/iOS.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5e255ae6c7300ce4e88796907919789e 3 | folderAsset: yes 4 | timeCreated: 1510629812 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Plugins/iOS/libENet.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/winddyhe/egametang-network-client/c631dafb5b6e4109d79b3c45ccd574e875ebbc70/Assets/Plugins/iOS/libENet.a -------------------------------------------------------------------------------- /Assets/Plugins/iOS/libENet.a.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b45e030b68c365a47a02ac6d9b7e2061 3 | timeCreated: 1491907059 4 | licenseType: Pro 5 | PluginImporter: 6 | serializedVersion: 1 7 | iconMap: {} 8 | executionOrder: {} 9 | isPreloaded: 0 10 | isOverridable: 0 11 | platformData: 12 | Any: 13 | enabled: 0 14 | settings: {} 15 | Editor: 16 | enabled: 0 17 | settings: 18 | DefaultValueInitialized: true 19 | iOS: 20 | enabled: 1 21 | settings: {} 22 | userData: 23 | assetBundleName: 24 | assetBundleVariant: 25 | -------------------------------------------------------------------------------- /Assets/Plugins/x86.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 75946e0469dd4ba42aacb251e83baa1b 3 | folderAsset: yes 4 | timeCreated: 1510629812 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Plugins/x86/ENet.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/winddyhe/egametang-network-client/c631dafb5b6e4109d79b3c45ccd574e875ebbc70/Assets/Plugins/x86/ENet.dll -------------------------------------------------------------------------------- /Assets/Plugins/x86_64.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 801339f73380f534fbd2df37b31b6539 3 | folderAsset: yes 4 | timeCreated: 1510629812 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Plugins/x86_64/ENet.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/winddyhe/egametang-network-client/c631dafb5b6e4109d79b3c45ccd574e875ebbc70/Assets/Plugins/x86_64/ENet.dll -------------------------------------------------------------------------------- /Assets/Test.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f3773386f83fa3447a6021f4d4a518fe 3 | folderAsset: yes 4 | timeCreated: 1510662905 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Test/ETClientTest.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 95c10e22e09f4c544bc4a2846cee012d 3 | folderAsset: yes 4 | timeCreated: 1510662910 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Assets/Test/ETClientTest/ETClientTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3c2fe5c2f319e92479a7586ba57e45eb 3 | timeCreated: 1510662983 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /Assets/Test/ETClientTest/Opcode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 744bed14ed54ae24b86904852fc00a5c 3 | timeCreated: 1498120812 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Test/ETClientTest/OuterMessage.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/winddyhe/egametang-network-client/c631dafb5b6e4109d79b3c45ccd574e875ebbc70/Assets/Test/ETClientTest/OuterMessage.cs -------------------------------------------------------------------------------- /Assets/Test/ETClientTest/OuterMessage.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a3ea7647c46dedb4186a28908a86005a 3 | timeCreated: 1498120812 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Test/ETClientTest/et_client_test.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2a733faefa225be4cafa260472c8e1a4 3 | timeCreated: 1510662923 4 | licenseType: Pro 5 | DefaultImporter: 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | m_Volume: 1 7 | Rolloff Scale: 1 8 | Doppler Factor: 1 9 | Default Speaker Mode: 2 10 | m_SampleRate: 0 11 | m_DSPBufferSize: 0 12 | m_VirtualVoiceCount: 512 13 | m_RealVoiceCount: 32 14 | m_SpatializerPlugin: 15 | m_AmbisonicDecoderPlugin: 16 | m_DisableAudio: 0 17 | m_VirtualizeEffects: 1 18 | -------------------------------------------------------------------------------- /ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 3 7 | m_Gravity: {x: 0, y: -9.81, z: 0} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_BounceThreshold: 2 10 | m_SleepThreshold: 0.005 11 | m_DefaultContactOffset: 0.01 12 | m_DefaultSolverIterations: 6 13 | m_DefaultSolverVelocityIterations: 1 14 | m_QueriesHitBackfaces: 0 15 | m_QueriesHitTriggers: 1 16 | m_EnableAdaptiveForce: 0 17 | m_EnablePCM: 1 18 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 19 | m_AutoSimulation: 1 20 | m_AutoSyncTransforms: 1 21 | -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: [] 8 | -------------------------------------------------------------------------------- /ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 5 7 | m_ExternalVersionControlSupport: Hidden Meta Files 8 | m_SerializationMode: 2 9 | m_DefaultBehaviorMode: 0 10 | m_SpritePackerMode: 0 11 | m_SpritePackerPaddingPower: 1 12 | m_EtcTextureCompressorBehavior: 1 13 | m_EtcTextureFastCompressor: 1 14 | m_EtcTextureNormalCompressor: 2 15 | m_EtcTextureBestCompressor: 4 16 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd 17 | m_ProjectGenerationRootNamespace: 18 | m_UserGeneratedProjectSuffix: 19 | m_CollabEditorSettings: 20 | inProgressEnabled: 1 21 | -------------------------------------------------------------------------------- /ProjectSettings/NetworkManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!149 &1 4 | NetworkManager: 5 | m_ObjectHideFlags: 0 6 | m_DebugLevel: 0 7 | m_Sendrate: 15 8 | m_AssetToPrefab: {} 9 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2017.2.0p1 2 | -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: [] 7 | layers: 8 | - Default 9 | - TransparentFX 10 | - Ignore Raycast 11 | - 12 | - Water 13 | - UI 14 | - 15 | - 16 | - 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | m_SortingLayers: 41 | - name: Default 42 | uniqueID: 0 43 | locked: 0 44 | -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.33333334 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /Server/Egametang/Config/BuffConfig.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/winddyhe/egametang-network-client/c631dafb5b6e4109d79b3c45ccd574e875ebbc70/Server/Egametang/Config/BuffConfig.txt -------------------------------------------------------------------------------- /Server/Egametang/Config/StartConfig/Benchmark.txt: -------------------------------------------------------------------------------- 1 | { "_t" : "StartConfig", "_id" : NumberLong("98808811814943"), "components" : [{ "_t" : "OuterConfig", "Host" : "127.0.0.1", "Port" : 10000, "Host2" : null }, { "_t" : "InnerConfig", "Host" : "127.0.0.1", "Port" : 20000 }], "AppId" : 1, "AppType" : "Manager", "ServerIP" : "*" } 2 | { "_t" : "StartConfig", "_id" : NumberLong("98808818892845"), "components" : [{ "_t" : "ClientConfig", "Host" : "127.0.0.1", "Port" : 10000 }], "AppId" : 2, "AppType" : "Benchmark", "ServerIP" : "*" } 3 | -------------------------------------------------------------------------------- /Server/Egametang/Config/StartConfig/Benchmark2.txt: -------------------------------------------------------------------------------- 1 | { "_t" : "StartConfig", "_id" : NumberLong("98547768819754"), "components" : [{ "_t" : "OuterConfig", "Host" : "127.0.0.1", "Port" : 10002, "Host2" : null }, { "_t" : "InnerConfig", "Host" : "127.0.0.1", "Port" : 20000 }, { "_t" : "HttpConfig", "Url" : "", "AppId" : 0, "AppKey" : "", "ManagerSystemUrl" : "" }, { "_t" : "DBConfig", "ConnectionString" : null, "DBName" : null }], "AppId" : 1, "AppType" : "AllServer", "ServerIP" : "*" } 2 | { "_t" : "StartConfig", "_id" : NumberLong("98892711264291"), "components" : [{ "_t" : "ClientConfig", "Host" : "127.0.0.1", "Port" : 10002 }], "AppId" : 2, "AppType" : "Benchmark", "ServerIP" : "*" } 3 | -------------------------------------------------------------------------------- /Server/Egametang/Config/StartConfig/BenchmarkClient.txt: -------------------------------------------------------------------------------- 1 | { "_t" : "StartConfig", "_id" : NumberLong("98813417750535"), "components" : [{ "_t" : "OuterConfig", "Host" : "127.0.0.1", "Port" : 10000, "Host2" : null }, { "_t" : "InnerConfig", "Host" : "127.0.0.1", "Port" : 20003 }], "AppId" : 1, "AppType" : "Manager", "ServerIP" : "*" } 2 | { "_t" : "StartConfig", "_id" : NumberLong("98813420503048"), "components" : [{ "_t" : "ClientConfig", "Host" : "127.0.0.1", "Port" : 10002 }], "AppId" : 2, "AppType" : "Benchmark", "ServerIP" : "*" } 3 | -------------------------------------------------------------------------------- /Server/Egametang/Config/StartConfig/ClientConfig.txt: -------------------------------------------------------------------------------- 1 | { "_t" : "StartConfig", "_id" : NumberLong("96935508377601"), "components" : [{ "_t" : "ClientConfig", "_id" : NumberLong("96935508377602"), "Host" : "127.0.0.1", "Port" : 10000 }], "AppId" : 0, "AppType" : "Client", "ServerIP" : "*" } 2 | -------------------------------------------------------------------------------- /Server/Egametang/Config/StartConfig/LocalAllServer.txt: -------------------------------------------------------------------------------- 1 | { "_t" : "StartConfig", "_id" : NumberLong("98547768819754"), "components" : [{ "_t" : "OuterConfig", "Host" : "127.0.0.1", "Port" : 10002, "Host2" : null }, { "_t" : "InnerConfig", "Host" : "127.0.0.1", "Port" : 20000 }, { "_t" : "HttpConfig", "Url" : "", "AppId" : 0, "AppKey" : "", "ManagerSystemUrl" : "" }, { "_t" : "DBConfig", "ConnectionString" : null, "DBName" : null }], "AppId" : 1, "AppType" : "AllServer", "ServerIP" : "*" } 2 | -------------------------------------------------------------------------------- /Server/Egametang/Server/App/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Server/Egametang/Server/App/Properties/launchSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "profiles": { 3 | "Server.App": { 4 | "commandName": "Project", 5 | "workingDirectory": "../../netcoreapp2.0" 6 | } 7 | } 8 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/EQueue.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | 4 | namespace Model 5 | { 6 | public class EQueue: IEnumerable 7 | { 8 | private readonly Queue list = new Queue(); 9 | 10 | public void Enqueue(T t) 11 | { 12 | this.list.Enqueue(t); 13 | } 14 | 15 | public T Dequeue() 16 | { 17 | T t = this.list.Dequeue(); 18 | return t; 19 | } 20 | 21 | public int Count 22 | { 23 | get 24 | { 25 | return this.list.Count; 26 | } 27 | } 28 | 29 | public IEnumerator GetEnumerator() 30 | { 31 | return this.list.GetEnumerator(); 32 | } 33 | 34 | public void Clear() 35 | { 36 | this.list.Clear(); 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Helper/ArrayHelper.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public static class ObjectHelper 4 | { 5 | public static void Swap(ref T t1, ref T t2) 6 | { 7 | T t3 = t1; 8 | t1 = t2; 9 | t2 = t3; 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Helper/EnumHelper.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | public static class EnumHelper 6 | { 7 | public static int EnumIndex(int value) 8 | { 9 | int i = 0; 10 | foreach (object v in Enum.GetValues(typeof (T))) 11 | { 12 | if ((int) v == value) 13 | { 14 | return i; 15 | } 16 | ++i; 17 | } 18 | return -1; 19 | } 20 | 21 | public static T FromString(string str) 22 | { 23 | if (!Enum.IsDefined(typeof(T), str)) 24 | { 25 | return default(T); 26 | } 27 | return (T)Enum.Parse(typeof(T), str); 28 | } 29 | } 30 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Helper/IdGenerater.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public static class IdGenerater 4 | { 5 | public static long AppId { private get; set; } 6 | 7 | private static ushort value; 8 | 9 | public static long GenerateId() 10 | { 11 | long time = TimeHelper.ClientNowSeconds(); 12 | 13 | return (AppId << 48) + (time << 16) + ++value; 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Helper/MD5Helper.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using System.Security.Cryptography; 3 | 4 | namespace Model 5 | { 6 | public static class MD5Helper 7 | { 8 | public static string FileMD5(string filePath) 9 | { 10 | byte[] retVal; 11 | using (FileStream file = new FileStream(filePath, FileMode.Open)) 12 | { 13 | MD5 md5 = new MD5CryptoServiceProvider(); 14 | retVal = md5.ComputeHash(file); 15 | } 16 | return retVal.ToHex("x2"); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Helper/MethodInfoHelper.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | 3 | namespace Model 4 | { 5 | public static class MethodInfoHelper 6 | { 7 | public static void Run(this MethodInfo methodInfo, object obj, params object[] param) 8 | { 9 | 10 | if (methodInfo.IsStatic) 11 | { 12 | object[] p = new object[param.Length + 1]; 13 | p[0] = obj; 14 | for (int i = 0; i < param.Length; ++i) 15 | { 16 | p[i + 1] = param[i]; 17 | } 18 | methodInfo.Invoke(null, p); 19 | } 20 | else 21 | { 22 | methodInfo.Invoke(obj, param); 23 | } 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Helper/NetHelper.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Net; 3 | 4 | namespace Model 5 | { 6 | public static class NetHelper 7 | { 8 | public static string[] GetAddressIPs() 9 | { 10 | //获取本地的IP地址 11 | List addressIPs = new List(); 12 | foreach (IPAddress address in Dns.GetHostEntry(Dns.GetHostName()).AddressList) 13 | { 14 | if (address.AddressFamily.ToString() == "InterNetwork") 15 | { 16 | addressIPs.Add(address.ToString()); 17 | } 18 | } 19 | return addressIPs.ToArray(); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Helper/RandomHelper.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | public static class RandomHelper 6 | { 7 | private static readonly Random random = new Random(); 8 | 9 | public static UInt64 RandUInt64() 10 | { 11 | var bytes = new byte[8]; 12 | random.NextBytes(bytes); 13 | return BitConverter.ToUInt64(bytes, 0); 14 | } 15 | 16 | public static Int64 RandInt64() 17 | { 18 | var bytes = new byte[8]; 19 | random.NextBytes(bytes); 20 | return BitConverter.ToInt64(bytes, 0); 21 | } 22 | 23 | /// 24 | /// 获取lower与Upper之间的随机数 25 | /// 26 | /// 27 | /// 28 | /// 29 | public static int RandomNumber(int lower, int upper) 30 | { 31 | int value = random.Next(lower, upper); 32 | return value; 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Log.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public static class Log 4 | { 5 | private static readonly ILog globalLog = new NLogAdapter(); 6 | 7 | public static void Warning(string message) 8 | { 9 | globalLog.Warning(message); 10 | } 11 | 12 | public static void Info(string message) 13 | { 14 | globalLog.Info(message); 15 | } 16 | 17 | public static void Debug(string message) 18 | { 19 | globalLog.Debug(message); 20 | } 21 | 22 | public static void Error(string message) 23 | { 24 | globalLog.Error(message); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/LogType.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public enum LogType 4 | { 5 | Warning, 6 | Info, 7 | Debug, 8 | Error, 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Logger/ALogDecorater.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public abstract class ALogDecorater 4 | { 5 | protected const string SEP = " "; 6 | private int level; 7 | protected readonly ALogDecorater decorater; 8 | 9 | protected ALogDecorater(ALogDecorater decorater = null) 10 | { 11 | this.decorater = decorater; 12 | this.Level = 0; 13 | } 14 | 15 | protected int Level 16 | { 17 | get 18 | { 19 | return this.level; 20 | } 21 | set 22 | { 23 | this.level = value; 24 | if (this.decorater != null) 25 | { 26 | this.decorater.Level = value + 1; 27 | } 28 | } 29 | } 30 | 31 | public virtual string Decorate(string message) 32 | { 33 | if (this.decorater == null) 34 | { 35 | return message; 36 | } 37 | return this.decorater.Decorate(message); 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Logger/ILog.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public interface ILog 4 | { 5 | void Warning(string message); 6 | void Info(string message); 7 | void Debug(string message); 8 | void Error(string message); 9 | } 10 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Logger/NLogAdapter.cs: -------------------------------------------------------------------------------- 1 | using NLog; 2 | 3 | namespace Model 4 | { 5 | public class NLogAdapter: ALogDecorater, ILog 6 | { 7 | private readonly Logger logger = LogManager.GetLogger("Logger"); 8 | 9 | public NLogAdapter(ALogDecorater decorater = null): base(decorater) 10 | { 11 | } 12 | 13 | public void Warning(string message) 14 | { 15 | this.logger.Warn(this.Decorate(message)); 16 | } 17 | 18 | public void Info(string message) 19 | { 20 | this.logger.Info(this.Decorate(message)); 21 | } 22 | 23 | public void Debug(string message) 24 | { 25 | this.logger.Debug(this.Decorate(message)); 26 | } 27 | 28 | public void Error(string message) 29 | { 30 | this.logger.Error(this.Decorate(message)); 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Network/AService.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Threading.Tasks; 3 | 4 | namespace Model 5 | { 6 | public enum NetworkProtocol 7 | { 8 | TCP, 9 | UDP 10 | } 11 | 12 | public abstract class AService: IDisposable 13 | { 14 | public abstract AChannel GetChannel(long id); 15 | 16 | public abstract Task AcceptChannel(); 17 | 18 | public abstract AChannel ConnectChannel(string host, int port); 19 | 20 | public abstract void Remove(long channelId); 21 | 22 | public abstract void Update(); 23 | 24 | public abstract void Dispose(); 25 | } 26 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Network/UNet/Library.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | internal static class Library 6 | { 7 | public static void Initialize() 8 | { 9 | int ret = NativeMethods.enet_initialize(); 10 | if (ret < 0) 11 | { 12 | throw new Exception($"Initialization failed, ret: {ret}"); 13 | } 14 | } 15 | 16 | public static void Deinitialize() 17 | { 18 | NativeMethods.enet_deinitialize(); 19 | } 20 | 21 | public static uint Time 22 | { 23 | get 24 | { 25 | return NativeMethods.enet_time_get(); 26 | } 27 | set 28 | { 29 | NativeMethods.enet_time_set(value); 30 | } 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/Network/UNet/UAddress.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Net; 3 | 4 | namespace Model 5 | { 6 | internal struct UAddress 7 | { 8 | private readonly uint ip; 9 | private readonly ushort port; 10 | 11 | public UAddress(string host, int port) 12 | { 13 | IPAddress address = IPAddress.Parse(host); 14 | this.ip = BitConverter.ToUInt32(address.GetAddressBytes(), 0); 15 | this.port = (ushort) port; 16 | } 17 | 18 | public ENetAddress Struct 19 | { 20 | get 21 | { 22 | ENetAddress address = new ENetAddress { Host = this.ip, Port = this.port }; 23 | return address; 24 | } 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/QueueDictionary.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Model 4 | { 5 | public class QueueDictionary 6 | { 7 | private readonly List list = new List(); 8 | private readonly Dictionary dictionary = new Dictionary(); 9 | 10 | public void Add(T t, K k) 11 | { 12 | this.list.Add(t); 13 | this.dictionary.Add(t, k); 14 | } 15 | 16 | public bool Remove(T t) 17 | { 18 | this.list.Remove(t); 19 | this.dictionary.Remove(t); 20 | return true; 21 | } 22 | 23 | public int Count 24 | { 25 | get 26 | { 27 | return this.list.Count; 28 | } 29 | } 30 | 31 | public T FirstKey 32 | { 33 | get 34 | { 35 | return this.list[0]; 36 | } 37 | } 38 | 39 | public K this[T t] 40 | { 41 | get 42 | { 43 | return this.dictionary[t]; 44 | } 45 | } 46 | } 47 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Base/TryLocker.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Threading; 3 | 4 | namespace Model 5 | { 6 | public class TryLock : IDisposable 7 | { 8 | private object locked; 9 | 10 | public bool HasLock { get; private set; } 11 | 12 | public TryLock(object obj) 13 | { 14 | if (!Monitor.TryEnter(obj)) 15 | { 16 | return; 17 | } 18 | 19 | this.HasLock = true; 20 | this.locked = obj; 21 | } 22 | 23 | public void Dispose() 24 | { 25 | if (!this.HasLock) 26 | { 27 | return; 28 | } 29 | 30 | Monitor.Exit(this.locked); 31 | this.locked = null; 32 | this.HasLock = false; 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/Handler/Actor_TestHandler.cs: -------------------------------------------------------------------------------- 1 | using System.Threading.Tasks; 2 | using Model; 3 | 4 | namespace Hotfix 5 | { 6 | [ActorMessageHandler(AppType.Map)] 7 | public class Actor_TestHandler : AMActorHandler 8 | { 9 | protected override async Task Run(Unit unit, Actor_Test message) 10 | { 11 | Log.Debug(message.Info); 12 | await Task.CompletedTask; 13 | unit.GetComponent().GetActorProxy().Send(message); 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/Handler/Actor_TestRequestHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Threading.Tasks; 3 | using Model; 4 | 5 | namespace Hotfix 6 | { 7 | [ActorMessageHandler(AppType.Map)] 8 | public class Actor_TestRequestHandler : AMActorRpcHandler 9 | { 10 | protected override async Task Run(Unit unit, Actor_TestRequest message, Action reply) 11 | { 12 | await Task.CompletedTask; 13 | reply(new Actor_TestResponse() {response = "response actor rpc"}); 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/Handler/C2R_PingHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Model; 3 | 4 | namespace Hotfix 5 | { 6 | [MessageHandler(AppType.Realm)] 7 | public class C2R_PingHandler : AMRpcHandler 8 | { 9 | protected override void Run(Session session, C2R_Ping message, Action reply) 10 | { 11 | R2C_Ping r2CPing = new R2C_Ping(); 12 | reply(r2CPing); 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/Handler/M2M_TrasferUnitRequest.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Model; 3 | 4 | namespace Hotfix 5 | { 6 | [MessageHandler(AppType.Map)] 7 | public class M2M_TrasferUnitRequestHandler : AMRpcHandler 8 | { 9 | protected override void Run(Session session, M2M_TrasferUnitRequest message, Action reply) 10 | { 11 | M2M_TrasferUnitResponse response = new M2M_TrasferUnitResponse(); 12 | try 13 | { 14 | Unit unit = message.Unit; 15 | Log.Debug(MongoHelper.ToJson(message.Unit)); 16 | // 这里不需要注册location,因为unlock会更新位置 17 | unit.AddComponent(); 18 | Game.Scene.GetComponent().Add(unit); 19 | reply(response); 20 | } 21 | catch (Exception e) 22 | { 23 | ReplyError(response, e, reply); 24 | } 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/Handler/ObjectAddRequestHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Model; 3 | 4 | namespace Hotfix 5 | { 6 | [MessageHandler(AppType.Location)] 7 | public class ObjectAddRequestHandler : AMRpcHandler 8 | { 9 | protected override void Run(Session session, ObjectAddRequest message, Action reply) 10 | { 11 | ObjectAddResponse response = new ObjectAddResponse(); 12 | try 13 | { 14 | Game.Scene.GetComponent().Add(message.Key, message.AppId); 15 | reply(response); 16 | } 17 | catch (Exception e) 18 | { 19 | ReplyError(response, e, reply); 20 | } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/Handler/ObjectGetRequestHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Model; 3 | 4 | namespace Hotfix 5 | { 6 | [MessageHandler(AppType.Location)] 7 | public class ObjectGetRequestHandler : AMRpcHandler 8 | { 9 | protected override async void Run(Session session, ObjectGetRequest message, Action reply) 10 | { 11 | ObjectGetResponse response = new ObjectGetResponse(); 12 | try 13 | { 14 | int appId = await Game.Scene.GetComponent().GetAsync(message.Key); 15 | if (appId == 0) 16 | { 17 | response.Error = ErrorCode.ERR_ActorLocationNotFound; 18 | } 19 | response.AppId = appId; 20 | reply(response); 21 | } 22 | catch (Exception e) 23 | { 24 | ReplyError(response, e, reply); 25 | } 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/Handler/ObjectLockRequestHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Model; 3 | 4 | namespace Hotfix 5 | { 6 | [MessageHandler(AppType.Location)] 7 | public class ObjectLockRequestHandler : AMRpcHandler 8 | { 9 | protected override void Run(Session session, ObjectLockRequest message, Action reply) 10 | { 11 | ObjectLockResponse response = new ObjectLockResponse(); 12 | try 13 | { 14 | Game.Scene.GetComponent().LockAsync(message.Key, message.LockAppId, message.Time); 15 | reply(response); 16 | } 17 | catch (Exception e) 18 | { 19 | ReplyError(response, e, reply); 20 | } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/Handler/ObjectRemoveRequestHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Model; 3 | 4 | namespace Hotfix 5 | { 6 | [MessageHandler(AppType.Location)] 7 | public class ObjectRemoveRequestHandler : AMRpcHandler 8 | { 9 | protected override void Run(Session session, ObjectRemoveRequest message, Action reply) 10 | { 11 | ObjectRemoveResponse response = new ObjectRemoveResponse(); 12 | try 13 | { 14 | Game.Scene.GetComponent().Remove(message.Key); 15 | reply(response); 16 | } 17 | catch (Exception e) 18 | { 19 | ReplyError(response, e, reply); 20 | } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/Handler/ObjectUnLockRequestHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Model; 3 | 4 | namespace Hotfix 5 | { 6 | [MessageHandler(AppType.Location)] 7 | public class ObjectUnLockRequestHandler : AMRpcHandler 8 | { 9 | protected override void Run(Session session, ObjectUnLockRequest message, Action reply) 10 | { 11 | ObjectUnLockResponse response = new ObjectUnLockResponse(); 12 | try 13 | { 14 | Game.Scene.GetComponent().UpdateAndUnLock(message.Key, message.UnLockAppId, message.AppId); 15 | reply(response); 16 | } 17 | catch (Exception e) 18 | { 19 | ReplyError(response, e, reply); 20 | } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/Handler/R2G_GetLoginKeyHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Model; 3 | 4 | namespace Hotfix 5 | { 6 | [MessageHandler(AppType.Gate)] 7 | public class R2G_GetLoginKeyHandler : AMRpcHandler 8 | { 9 | protected override void Run(Session session, R2G_GetLoginKey message, Action reply) 10 | { 11 | G2R_GetLoginKey response = new G2R_GetLoginKey(); 12 | try 13 | { 14 | long key = RandomHelper.RandInt64(); 15 | Game.Scene.GetComponent().Add(key, message.Account); 16 | response.Key = key; 17 | reply(response); 18 | } 19 | catch (Exception e) 20 | { 21 | ReplyError(response, e, reply); 22 | } 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/Helper/HotfixHelper.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Reflection; 3 | 4 | namespace Hotfix 5 | { 6 | public static class HotfixHelper 7 | { 8 | public static object Create(object old) 9 | { 10 | Assembly assembly = typeof(HotfixHelper).Assembly; 11 | string objectName = old.GetType().FullName; 12 | return Activator.CreateInstance(assembly.GetType(objectName)); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/Helper/MessageHelper.cs: -------------------------------------------------------------------------------- 1 | using Model; 2 | 3 | namespace Hotfix 4 | { 5 | public static class MessageHelper 6 | { 7 | public static void Broadcast(AActorMessage message) 8 | { 9 | Unit[] units = Game.Scene.GetComponent().GetAll(); 10 | ActorProxyComponent actorProxyComponent = Game.Scene.GetComponent(); 11 | foreach (Unit unit in units) 12 | { 13 | long gateSessionId = unit.GetComponent().GateSessionId; 14 | actorProxyComponent.Get(gateSessionId).Send(message); 15 | } 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Hotfix/System/RealmGateAddressComponentSystem.cs: -------------------------------------------------------------------------------- 1 | using Model; 2 | 3 | namespace Hotfix 4 | { 5 | [ObjectEvent] 6 | public class RealmGateAddressComponentEvent : ObjectEvent, IStart 7 | { 8 | public void Start() 9 | { 10 | this.Get().Start(); 11 | } 12 | } 13 | 14 | public static class RealmGateAddressComponentSystem 15 | { 16 | public static void Start(this RealmGateAddressComponent component) 17 | { 18 | StartConfig[] startConfigs = component.GetComponent().GetAll(); 19 | foreach (StartConfig config in startConfigs) 20 | { 21 | if (!config.AppType.Is(AppType.Gate)) 22 | { 23 | continue; 24 | } 25 | 26 | component.GateAddress.Add(config); 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Config/AConfig.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | /// 4 | /// 每个Config的基类 5 | /// 6 | public abstract class AConfig: Entity 7 | { 8 | protected AConfig() 9 | { 10 | } 11 | 12 | protected AConfig(long id): base(id) 13 | { 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Config/AConfigComponent.cs: -------------------------------------------------------------------------------- 1 | using MongoDB.Bson.Serialization.Attributes; 2 | 3 | namespace Model 4 | { 5 | /// 6 | /// 每个Config的基类 7 | /// 8 | [BsonKnownTypes(typeof (ClientConfig))] 9 | [BsonKnownTypes(typeof (InnerConfig))] 10 | [BsonKnownTypes(typeof (OuterConfig))] 11 | [BsonKnownTypes(typeof (HttpConfig))] 12 | [BsonKnownTypes(typeof (DBConfig))] 13 | public abstract class AConfigComponent: ComponentDB 14 | { 15 | } 16 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Config/ConfigAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | [AttributeUsage(AttributeTargets.Class)] 6 | public class ConfigAttribute: Attribute 7 | { 8 | public AppType Type { get; } 9 | 10 | public ConfigAttribute(AppType type) 11 | { 12 | this.Type = type; 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Config/ConfigHelper.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.IO; 3 | 4 | namespace Model 5 | { 6 | public static class ConfigHelper 7 | { 8 | public static string GetText(string key) 9 | { 10 | string path = $"../Config/{key}.txt"; 11 | try 12 | { 13 | string configStr = File.ReadAllText(path); 14 | return configStr; 15 | } 16 | catch (Exception e) 17 | { 18 | throw new Exception($"load config file fail, path: {path} {e}"); 19 | } 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Config/ICategory.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.ComponentModel; 3 | 4 | namespace Model 5 | { 6 | public interface ICategory: ISupportInitialize 7 | { 8 | Type ConfigType { get; } 9 | } 10 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Event/AEventAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | [AttributeUsage(AttributeTargets.Class, AllowMultiple = true)] 6 | public abstract class AEventAttribute: Attribute 7 | { 8 | public int Type { get; private set; } 9 | 10 | protected AEventAttribute(int type) 11 | { 12 | this.Type = type; 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Event/EnvKey.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | /// 4 | /// 一般使用事件名+变量名 5 | /// 6 | public enum EnvKey 7 | { 8 | ChannelError 9 | } 10 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Event/EventAttribute.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public class EventAttribute: AEventAttribute 4 | { 5 | public EventAttribute(int type): base(type) 6 | { 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Event/EventIdType.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public enum EventIdType 4 | { 5 | InitSceneStart, 6 | 7 | BehaviorTreeRunTreeEvent, 8 | BehaviorTreeOpenEditor, 9 | BehaviorTreeClickNode, 10 | BehaviorTreeAfterChangeNodeType, 11 | BehaviorTreeCreateNode, 12 | BehaviorTreePropertyDesignerNewCreateClick, 13 | BehaviorTreeMouseInNode, 14 | BehaviorTreeConnectState, 15 | BehaviorTreeReplaceClick, 16 | BehaviorTreeRightDesignerDrag, 17 | 18 | NumbericChange, 19 | } 20 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Event/IEvent.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public interface IEvent 4 | { 5 | void Run(); 6 | } 7 | 8 | public interface IEvent 9 | { 10 | void Run(A uid); 11 | } 12 | 13 | public interface IEvent 14 | { 15 | void Run(A a, B b); 16 | } 17 | 18 | public interface IEvent 19 | { 20 | void Run(A a, B b, C c); 21 | } 22 | 23 | public interface IEvent 24 | { 25 | void Run(A a, B b, C c, D d); 26 | } 27 | 28 | public interface IEvent 29 | { 30 | void Run(A a, B b, C c, D d, E e); 31 | } 32 | 33 | public interface IEvent 34 | { 35 | void Run(A a, B b, C c, D d, E e, F f); 36 | } 37 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Message/AActorMessage.cs: -------------------------------------------------------------------------------- 1 | using ProtoBuf; 2 | 3 | // 不要在这个文件加[ProtoInclude]跟[BsonKnowType]标签,加到InnerMessage.cs或者OuterMessage.cs里面去 4 | namespace Model 5 | { 6 | [ProtoContract] 7 | public abstract partial class AActorMessage : AMessage 8 | { 9 | } 10 | 11 | [ProtoContract] 12 | public abstract partial class AActorRequest : ARequest 13 | { 14 | } 15 | 16 | [ProtoContract] 17 | public abstract partial class AActorResponse : AResponse 18 | { 19 | } 20 | 21 | [ProtoContract] 22 | public abstract partial class AFrameMessage : AActorMessage 23 | { 24 | [ProtoMember(1)] 25 | public long Id; 26 | } 27 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Message/AMessage.cs: -------------------------------------------------------------------------------- 1 | using Core.Serializer; 2 | using Core.WindJson; 3 | 4 | // 不要在这个文件加[ProtoInclude]跟[BsonKnowType]标签,加到InnerMessage.cs或者OuterMessage.cs里面去 5 | namespace Model 6 | { 7 | [SBGroupInerited("Protocol")] 8 | public abstract partial class AMessage : SerializerBinary 9 | { 10 | public override string ToString() 11 | { 12 | var rJsonNode = JsonParser.ToJsonNode(this); 13 | return rJsonNode?.ToString(); 14 | } 15 | } 16 | 17 | public abstract partial class ARequest : AMessage 18 | { 19 | public uint RpcId; 20 | } 21 | 22 | /// 23 | /// 服务端回的RPC消息需要继承这个抽象类 24 | /// 25 | public abstract partial class AResponse : AMessage 26 | { 27 | public uint RpcId; 28 | public int Error = 0; 29 | public string Message = ""; 30 | } 31 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Message/ActorMessageAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | public class ActorMessageAttribute : Attribute 6 | { 7 | public ushort Opcode { get; private set; } 8 | 9 | public ActorMessageAttribute(ushort opcode) 10 | { 11 | this.Opcode = opcode; 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Message/ActorMessageHandlerAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | public class ActorMessageHandlerAttribute : Attribute 6 | { 7 | public AppType Type { get; } 8 | 9 | public ActorMessageHandlerAttribute(AppType appType) 10 | { 11 | this.Type = appType; 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Message/ErrorCode.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public static class ErrorCode 4 | { 5 | public const int ERR_Success = 0; 6 | 7 | public const int ERR_NotFoundActor = 1; 8 | 9 | public const int ERR_RpcFail = 101; 10 | public const int ERR_AccountOrPasswordError = 102; 11 | public const int ERR_ConnectGateKeyError = 103; 12 | public const int ERR_ReloadFail = 104; 13 | public const int ERR_NotFoundUnit = 105; 14 | public const int ERR_ActorLocationNotFound = 106; 15 | public const int ERR_SessionActorError = 107; 16 | public const int ERR_ActorError = 108; 17 | } 18 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Message/IEntityActorHandler.cs: -------------------------------------------------------------------------------- 1 | using System.Threading.Tasks; 2 | 3 | namespace Model 4 | { 5 | public interface IEntityActorHandler 6 | { 7 | Task Handle(Session session, Entity entity, ActorRequest message); 8 | } 9 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Message/IMActorHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Threading.Tasks; 3 | 4 | namespace Model 5 | { 6 | public interface IMActorHandler 7 | { 8 | Task Handle(Session session, Entity entity, ActorRequest message); 9 | Type GetMessageType(); 10 | } 11 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Message/IMHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | public interface IMHandler 6 | { 7 | void Handle(Session session, AMessage message); 8 | Type GetMessageType(); 9 | } 10 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Message/MessageAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | public class MessageAttribute: Attribute 6 | { 7 | public Opcode Opcode { get; } 8 | 9 | public MessageAttribute(Opcode opcode) 10 | { 11 | this.Opcode = opcode; 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Message/MessageHandlerAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | public class MessageHandlerAttribute : Attribute 6 | { 7 | public AppType Type { get; } 8 | 9 | public MessageHandlerAttribute(AppType appType) 10 | { 11 | this.Type = appType; 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Message/MessageInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public struct MessageInfo 4 | { 5 | public Opcode Opcode { get; set; } 6 | public AMessage Message { get; set; } 7 | 8 | public MessageInfo(Opcode opcode, AMessage message) 9 | { 10 | this.Opcode = opcode; 11 | this.Message = message; 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Message/OpcodeHelper.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Model 4 | { 5 | public static class OpcodeHelper 6 | { 7 | private static readonly HashSet needDebugLogMessageSet = new HashSet { 1 }; 8 | 9 | public static bool IsNeedDebugLogMessage(ushort opcode) 10 | { 11 | //return true; 12 | if (opcode > 1000) 13 | { 14 | return true; 15 | } 16 | 17 | if (needDebugLogMessageSet.Contains(opcode)) 18 | { 19 | return true; 20 | } 21 | 22 | return false; 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Object/Component.cs: -------------------------------------------------------------------------------- 1 | using MongoDB.Bson.Serialization.Attributes; 2 | 3 | namespace Model 4 | { 5 | [BsonIgnoreExtraElements] 6 | [BsonKnownTypes(typeof(AConfigComponent))] 7 | public abstract class Component: Disposer 8 | { 9 | [BsonIgnore] 10 | public Entity Entity { get; set; } 11 | 12 | public T GetEntity() where T : Entity 13 | { 14 | return this.Entity as T; 15 | } 16 | 17 | protected Component() 18 | { 19 | this.Id = 1; 20 | } 21 | 22 | public T GetComponent() where T : Component 23 | { 24 | return this.Entity.GetComponent(); 25 | } 26 | 27 | public override void Dispose() 28 | { 29 | if (this.Id == 0) 30 | { 31 | return; 32 | } 33 | 34 | base.Dispose(); 35 | 36 | this.Entity?.RemoveComponent(this.GetType()); 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Object/ComponentDB.cs: -------------------------------------------------------------------------------- 1 | using MongoDB.Bson.Serialization.Attributes; 2 | 3 | namespace Model 4 | { 5 | [BsonKnownTypes(typeof(AConfigComponent))] 6 | [BsonKnownTypes(typeof(UnitGateComponent))] 7 | [BsonKnownTypes(typeof(NumericComponent))] 8 | public abstract class ComponentDB : Component 9 | { 10 | } 11 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Object/Disposer.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using MongoDB.Bson.Serialization.Attributes; 3 | 4 | namespace Model 5 | { 6 | public abstract class Disposer : Object, IDisposable 7 | { 8 | [BsonIgnoreIfDefault] 9 | [BsonDefaultValue(1L)] 10 | [BsonElement] 11 | [BsonId] 12 | public long Id { get; set; } 13 | 14 | protected Disposer() 15 | { 16 | ObjectEvents.Instance.Add(this); 17 | } 18 | 19 | public virtual void Dispose() 20 | { 21 | this.Id = 0; 22 | ObjectPool.Instance.Recycle(this); 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Object/EntityType.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public enum EntityType 4 | { 5 | None, 6 | Scene, 7 | Session, 8 | UI, 9 | Config, 10 | Unit 11 | } 12 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Object/IAwake.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public interface IAwake 4 | { 5 | void Awake(); 6 | } 7 | 8 | public interface IAwake 9 | { 10 | void Awake(A a); 11 | } 12 | 13 | public interface IAwake 14 | { 15 | void Awake(A a, B b); 16 | } 17 | 18 | public interface IAwake 19 | { 20 | void Awake(A a, B b, C c); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Object/ILateUpdate.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public interface ILateUpdate 4 | { 5 | void LateUpdate(); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Object/ILoad.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public interface ILoad 4 | { 5 | void Load(); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Object/IStart.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public interface IStart 4 | { 5 | void Start(); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Object/IUpdate.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public interface IUpdate 4 | { 5 | void Update(); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Object/Object.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public abstract class Object 4 | { 5 | } 6 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Object/ObjectEventAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | [AttributeUsage(AttributeTargets.Class, AllowMultiple = true)] 6 | public class ObjectEventAttribute: Attribute 7 | { 8 | } 9 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Other/HttpHandlerAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | public class HttpHandlerAttribute : Attribute 6 | { 7 | public AppType AppType { get; } 8 | 9 | public string Path { get; } 10 | 11 | public HttpHandlerAttribute(AppType appType, string path) 12 | { 13 | this.AppType = appType; 14 | this.Path = path; 15 | } 16 | } 17 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Base/Other/IHttpHandler.cs: -------------------------------------------------------------------------------- 1 | using System.Net; 2 | 3 | namespace Model 4 | { 5 | public interface IHttpHandler 6 | { 7 | void Handle(HttpListenerContext context); 8 | } 9 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/ActorProxyComponent.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Model 4 | { 5 | public class ActorProxyComponent: Component 6 | { 7 | private readonly Dictionary dictionary = new Dictionary(); 8 | 9 | public ActorProxy Get(long id) 10 | { 11 | if (this.dictionary.TryGetValue(id, out ActorProxy actorProxy)) 12 | { 13 | return actorProxy; 14 | } 15 | 16 | actorProxy = EntityFactory.CreateWithId(id); 17 | this.dictionary[id] = actorProxy; 18 | return actorProxy; 19 | } 20 | 21 | public void Remove(long id) 22 | { 23 | ActorProxy actorProxy; 24 | if (!this.dictionary.TryGetValue(id, out actorProxy)) 25 | { 26 | return; 27 | } 28 | actorProxy.Dispose(); 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/Config/ClientConfig.cs: -------------------------------------------------------------------------------- 1 | using MongoDB.Bson.Serialization.Attributes; 2 | 3 | namespace Model 4 | { 5 | [BsonIgnoreExtraElements] 6 | public class ClientConfig: AConfigComponent 7 | { 8 | public string Host = ""; 9 | public int Port; 10 | 11 | [BsonIgnore] 12 | public string Address 13 | { 14 | get 15 | { 16 | return $"{this.Host}:{this.Port}"; 17 | } 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/Config/DBConfig.cs: -------------------------------------------------------------------------------- 1 | using MongoDB.Bson.Serialization.Attributes; 2 | 3 | namespace Model 4 | { 5 | [BsonIgnoreExtraElements] 6 | public class DBConfig : AConfigComponent 7 | { 8 | public string ConnectionString { get; set; } 9 | public string DBName { get; set; } 10 | } 11 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/Config/HttpConfig.cs: -------------------------------------------------------------------------------- 1 | using MongoDB.Bson.Serialization.Attributes; 2 | 3 | namespace Model 4 | { 5 | [BsonIgnoreExtraElements] 6 | public class HttpConfig : AConfigComponent 7 | { 8 | public string Url { get; set; } = ""; 9 | public int AppId { get; set; } 10 | public string AppKey { get; set; } = ""; 11 | public string ManagerSystemUrl { get; set; } = ""; 12 | } 13 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/Config/InnerConfig.cs: -------------------------------------------------------------------------------- 1 | using MongoDB.Bson.Serialization.Attributes; 2 | 3 | namespace Model 4 | { 5 | [BsonIgnoreExtraElements] 6 | public class InnerConfig: AConfigComponent 7 | { 8 | public string Host { get; set; } 9 | public int Port { get; set; } 10 | 11 | [BsonIgnore] 12 | public string Address 13 | { 14 | get 15 | { 16 | return $"{this.Host}:{this.Port}"; 17 | } 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/Config/OuterConfig.cs: -------------------------------------------------------------------------------- 1 | using MongoDB.Bson.Serialization.Attributes; 2 | 3 | namespace Model 4 | { 5 | [BsonIgnoreExtraElements] 6 | public class OuterConfig: AConfigComponent 7 | { 8 | public string Host { get; set; } 9 | public int Port { get; set; } 10 | 11 | [BsonIgnore] 12 | public string Address 13 | { 14 | get 15 | { 16 | return $"{this.Host}:{this.Port}"; 17 | } 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/NetOuterComponent.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public class NetOuterComponent: NetworkComponent 4 | { 5 | } 6 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/OptionComponent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using CommandLine; 3 | 4 | namespace Model 5 | { 6 | [ObjectEvent] 7 | public class OptionComponentEvent : ObjectEvent, IAwake 8 | { 9 | public void Awake(string[] args) 10 | { 11 | this.Get().Awake(args); 12 | } 13 | } 14 | 15 | public class OptionComponent : Component 16 | { 17 | public Options Options { get; set; } 18 | 19 | public void Awake(string[] args) 20 | { 21 | Parser.Default.ParseArguments(args) 22 | .WithNotParsed(error => throw new Exception($"命令行格式错误!")) 23 | .WithParsed(options => { Options = options; }); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/Player/SessionInfoComponent.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public class SessionInfoComponent : Component 4 | { 5 | public Session Session; 6 | } 7 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/RealmGateAddressComponent.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Model 4 | { 5 | public class RealmGateAddressComponent : Component 6 | { 7 | public readonly List GateAddress = new List(); 8 | 9 | public StartConfig GetAddress() 10 | { 11 | int n = RandomHelper.RandomNumber(0, this.GateAddress.Count); 12 | return this.GateAddress[n]; 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/RobotComponent.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public class RobotComponent: Component 4 | { 5 | public override void Dispose() 6 | { 7 | if (this.Id == 0) 8 | { 9 | return; 10 | } 11 | 12 | base.Dispose(); 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/ServerFrameComponent.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public class ServerFrameComponent: Component 4 | { 5 | public int Frame; 6 | 7 | public FrameMessage FrameMessage; 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/Session/SessionPlayerComponent.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public class SessionPlayerComponent : Component 4 | { 5 | public Player Player; 6 | 7 | public override void Dispose() 8 | { 9 | if (this.Id == 0) 10 | { 11 | return; 12 | } 13 | 14 | base.Dispose(); 15 | 16 | Game.Scene.GetComponent()?.Remove(this.Player.Id); 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Component/Unit/UnitGateComponent.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | [ObjectEvent] 4 | public class UnitGateComponentEvent : ObjectEvent, IAwake 5 | { 6 | public void Awake(long gateSessionId) 7 | { 8 | this.Get().Awake(gateSessionId); 9 | } 10 | } 11 | 12 | public class UnitGateComponent : ComponentDB 13 | { 14 | public long GateSessionId; 15 | 16 | public void Awake(long gateSessionId) 17 | { 18 | this.GateSessionId = gateSessionId; 19 | } 20 | 21 | public ActorProxy GetActorProxy() 22 | { 23 | return Game.Scene.GetComponent().Get(this.GateSessionId); 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Entity/Config/BuffConfig.cs: -------------------------------------------------------------------------------- 1 | using MongoDB.Bson.Serialization.Attributes; 2 | 3 | namespace Model 4 | { 5 | [BsonIgnoreExtraElements] 6 | public class BuffConfig: AConfig 7 | { 8 | public string Name { get; set; } 9 | public int Duration { get; set; } 10 | 11 | public BuffConfig() 12 | { 13 | } 14 | 15 | public BuffConfig(long id): base(id) 16 | { 17 | } 18 | } 19 | 20 | [Config(AppType.Client | AppType.Gate)] 21 | public class BuffCategory: ACategory 22 | { 23 | } 24 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Entity/Config/StartConfig.cs: -------------------------------------------------------------------------------- 1 | using MongoDB.Bson; 2 | using MongoDB.Bson.Serialization.Attributes; 3 | 4 | namespace Model 5 | { 6 | public class StartConfig: AConfig 7 | { 8 | public int AppId { get; set; } 9 | 10 | [BsonRepresentation(BsonType.String)] 11 | public AppType AppType { get; set; } 12 | 13 | public string ServerIP { get; set; } 14 | } 15 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Entity/EntityDB.cs: -------------------------------------------------------------------------------- 1 | using MongoDB.Bson.Serialization.Attributes; 2 | 3 | namespace Model 4 | { 5 | [BsonIgnoreExtraElements] 6 | [BsonKnownTypes(typeof(RechargeRecord))] 7 | [BsonKnownTypes(typeof(Recharge))] 8 | [BsonKnownTypes(typeof(Location))] 9 | public class EntityDB: Entity 10 | { 11 | protected EntityDB() 12 | { 13 | } 14 | 15 | protected EntityDB(long id): base(id) 16 | { 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Entity/Game.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public static class Game 4 | { 5 | private static Scene scene; 6 | 7 | public static Scene Scene 8 | { 9 | get 10 | { 11 | if (scene != null) 12 | { 13 | return scene; 14 | } 15 | scene = new Scene(); 16 | scene.AddComponent(); 17 | scene.AddComponent(); 18 | return scene; 19 | } 20 | } 21 | 22 | public static void Close() 23 | { 24 | scene.Dispose(); 25 | scene = null; 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Entity/Location.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public class Location: EntityDB 4 | { 5 | public string Address; 6 | 7 | public Location(long id, string address): base(id) 8 | { 9 | this.Address = address; 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Entity/Message/OuterMessage.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/winddyhe/egametang-network-client/c631dafb5b6e4109d79b3c45ccd574e875ebbc70/Server/Egametang/Server/Model/Entity/Message/OuterMessage.cs -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Entity/Player.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | [ObjectEvent] 4 | public class GamerEvent : ObjectEvent, IAwake 5 | { 6 | public void Awake(string account) 7 | { 8 | this.Get().Awake(account); 9 | } 10 | } 11 | 12 | public sealed class Player : Entity 13 | { 14 | public string Account { get; private set; } 15 | 16 | public long UnitId { get; set; } 17 | 18 | public void Awake(string account) 19 | { 20 | this.Account = account; 21 | } 22 | 23 | public override void Dispose() 24 | { 25 | if (this.Id == 0) 26 | { 27 | return; 28 | } 29 | 30 | base.Dispose(); 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Entity/Scene.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public enum SceneType 4 | { 5 | Share, 6 | Game, 7 | Login, 8 | Lobby, 9 | Map, 10 | Launcher, 11 | Robot, 12 | BehaviorTreeScene, 13 | RobotClient, 14 | 15 | Realm 16 | } 17 | 18 | public sealed class Scene: Entity 19 | { 20 | public string Name { get; set; } 21 | 22 | public SceneType SceneType { get; private set; } 23 | 24 | public Scene() 25 | { 26 | } 27 | 28 | public Scene(long id): base(id) 29 | { 30 | } 31 | 32 | public override void Dispose() 33 | { 34 | if (this.Id == 0) 35 | { 36 | return; 37 | } 38 | 39 | base.Dispose(); 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Entity/SceneEntity.cs: -------------------------------------------------------------------------------- 1 | using MongoDB.Bson.Serialization.Attributes; 2 | 3 | namespace Model 4 | { 5 | // 需要记录自己所在Scene的继承这个类 6 | public class SceneEntity : Entity 7 | { 8 | [BsonIgnore] 9 | public Scene Scene { get; set; } 10 | 11 | protected SceneEntity() 12 | { 13 | } 14 | 15 | protected SceneEntity(long id) : base(id) 16 | { 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Entity/Unit.cs: -------------------------------------------------------------------------------- 1 | using System.Numerics; 2 | using MongoDB.Bson.Serialization.Attributes; 3 | 4 | namespace Model 5 | { 6 | public enum UnitType 7 | { 8 | Hero, 9 | Npc 10 | } 11 | 12 | [ObjectEvent] 13 | public class UnitEvent : ObjectEvent, IAwake 14 | { 15 | public void Awake(UnitType unitType) 16 | { 17 | this.Get().Awake(unitType); 18 | } 19 | } 20 | 21 | public sealed class Unit: Entity 22 | { 23 | public UnitType UnitType { get; private set; } 24 | 25 | [BsonIgnore] 26 | public Vector3 Position { get; set; } 27 | 28 | public void Awake(UnitType unitType) 29 | { 30 | this.UnitType = unitType; 31 | } 32 | 33 | public override void Dispose() 34 | { 35 | if (this.Id == 0) 36 | { 37 | return; 38 | } 39 | 40 | base.Dispose(); 41 | } 42 | } 43 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.A2M_Reload.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class A2M_Reload 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.AActorMessage.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class AActorMessage 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.AActorRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class AActorRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.AActorResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class AActorResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.AFrameMessage.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class AFrameMessage 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Id); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.Id = rReader.Deserialize(this.Id); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.AMessage.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class AMessage 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ARequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ARequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.RpcId); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.RpcId = rReader.Deserialize(this.RpcId); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.AResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class AResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.RpcId); 17 | rWriter.Serialize(this.Error); 18 | rWriter.Serialize(this.Message); 19 | } 20 | public override void Deserialize(BinaryReader rReader) 21 | { 22 | base.Deserialize(rReader); 23 | this.RpcId = rReader.Deserialize(this.RpcId); 24 | this.Error = rReader.Deserialize(this.Error); 25 | this.Message = rReader.Deserialize(this.Message); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ActorRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ActorRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Id); 17 | rWriter.SerializeDynamic(this.AMessage); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.Id = rReader.Deserialize(this.Id); 23 | this.AMessage = rReader.DeserializeDynamic(this.AMessage); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ActorResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ActorResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ActorRpcRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ActorRpcRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ActorRpcResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ActorRpcResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.AMessage); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.AMessage = rReader.Deserialize(this.AMessage); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.Actor_CreateUnits.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class Actor_CreateUnits 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Units); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.Units = rReader.Deserialize(this.Units); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.Actor_Test.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class Actor_Test 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Info); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.Info = rReader.Deserialize(this.Info); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.Actor_TestRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class Actor_TestRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.request); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.request = rReader.Deserialize(this.request); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.Actor_TestResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class Actor_TestResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.response); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.response = rReader.Deserialize(this.response); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.Actor_TransferRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class Actor_TransferRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.MapIndex); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.MapIndex = rReader.Deserialize(this.MapIndex); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.Actor_TransferResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class Actor_TransferResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.C2G_EnterMap.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class C2G_EnterMap 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.C2G_LoginGate.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class C2G_LoginGate 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Key); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.Key = rReader.Deserialize(this.Key); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.C2M_Reload.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class C2M_Reload 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize((int)this.AppType); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.AppType = (Model.AppType)rReader.Deserialize((int)this.AppType); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.C2R_Login.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class C2R_Login 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Account); 17 | rWriter.Serialize(this.Password); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.Account = rReader.Deserialize(this.Account); 23 | this.Password = rReader.Deserialize(this.Password); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.C2R_Ping.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class C2R_Ping 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.DBQueryBatchRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class DBQueryBatchRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.CollectionName); 17 | rWriter.Serialize(this.IdList); 18 | rWriter.Serialize(this.NeedCache); 19 | } 20 | public override void Deserialize(BinaryReader rReader) 21 | { 22 | base.Deserialize(rReader); 23 | this.CollectionName = rReader.Deserialize(this.CollectionName); 24 | this.IdList = rReader.Deserialize(this.IdList); 25 | this.NeedCache = rReader.Deserialize(this.NeedCache); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.DBQueryBatchResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class DBQueryBatchResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.DBQueryJsonRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class DBQueryJsonRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.CollectionName); 17 | rWriter.Serialize(this.Json); 18 | rWriter.Serialize(this.NeedCache); 19 | } 20 | public override void Deserialize(BinaryReader rReader) 21 | { 22 | base.Deserialize(rReader); 23 | this.CollectionName = rReader.Deserialize(this.CollectionName); 24 | this.Json = rReader.Deserialize(this.Json); 25 | this.NeedCache = rReader.Deserialize(this.NeedCache); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.DBQueryJsonResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class DBQueryJsonResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.DBQueryRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class DBQueryRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.CollectionName); 17 | rWriter.Serialize(this.Id); 18 | rWriter.Serialize(this.NeedCache); 19 | } 20 | public override void Deserialize(BinaryReader rReader) 21 | { 22 | base.Deserialize(rReader); 23 | this.CollectionName = rReader.Deserialize(this.CollectionName); 24 | this.Id = rReader.Deserialize(this.Id); 25 | this.NeedCache = rReader.Deserialize(this.NeedCache); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.DBQueryResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class DBQueryResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.DBSaveBatchRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class DBSaveBatchRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.NeedCache); 17 | rWriter.Serialize(this.CollectionName); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.NeedCache = rReader.Deserialize(this.NeedCache); 23 | this.CollectionName = rReader.Deserialize(this.CollectionName); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.DBSaveBatchResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class DBSaveBatchResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.DBSaveRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class DBSaveRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.NeedCache); 17 | rWriter.Serialize(this.CollectionName); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.NeedCache = rReader.Deserialize(this.NeedCache); 23 | this.CollectionName = rReader.Deserialize(this.CollectionName); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.DBSaveResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class DBSaveResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.FrameMessage.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class FrameMessage 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Frame); 17 | rWriter.Serialize(this.Messages); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.Frame = rReader.Deserialize(this.Frame); 23 | this.Messages = rReader.Deserialize(this.Messages); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.Frame_ClickMap.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class Frame_ClickMap 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.X); 17 | rWriter.Serialize(this.Z); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.X = rReader.Deserialize(this.X); 23 | this.Z = rReader.Deserialize(this.Z); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.G2C_EnterMap.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class G2C_EnterMap 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.UnitId); 17 | rWriter.Serialize(this.Count); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.UnitId = rReader.Deserialize(this.UnitId); 23 | this.Count = rReader.Deserialize(this.Count); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.G2C_LoginGate.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class G2C_LoginGate 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.PlayerId); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.PlayerId = rReader.Deserialize(this.PlayerId); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.G2G_LockReleaseRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class G2G_LockReleaseRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Id); 17 | rWriter.Serialize(this.Address); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.Id = rReader.Deserialize(this.Id); 23 | this.Address = rReader.Deserialize(this.Address); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.G2G_LockReleaseResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class G2G_LockReleaseResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.G2G_LockRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class G2G_LockRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Id); 17 | rWriter.Serialize(this.Address); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.Id = rReader.Deserialize(this.Id); 23 | this.Address = rReader.Deserialize(this.Address); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.G2G_LockResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class G2G_LockResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.G2M_CreateUnit.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class G2M_CreateUnit 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.PlayerId); 17 | rWriter.Serialize(this.GateSessionId); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.PlayerId = rReader.Deserialize(this.PlayerId); 23 | this.GateSessionId = rReader.Deserialize(this.GateSessionId); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.G2R_GetLoginKey.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class G2R_GetLoginKey 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Key); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.Key = rReader.Deserialize(this.Key); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.M2A_Reload.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class M2A_Reload 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.M2C_Reload.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class M2C_Reload 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.M2G_CreateUnit.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class M2G_CreateUnit 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.UnitId); 17 | rWriter.Serialize(this.Count); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.UnitId = rReader.Deserialize(this.UnitId); 23 | this.Count = rReader.Deserialize(this.Count); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.M2M_TrasferUnitRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class M2M_TrasferUnitRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.M2M_TrasferUnitResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class M2M_TrasferUnitResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ObjectAddRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ObjectAddRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Key); 17 | rWriter.Serialize(this.AppId); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.Key = rReader.Deserialize(this.Key); 23 | this.AppId = rReader.Deserialize(this.AppId); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ObjectAddResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ObjectAddResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ObjectGetRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ObjectGetRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Key); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.Key = rReader.Deserialize(this.Key); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ObjectGetResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ObjectGetResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.AppId); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.AppId = rReader.Deserialize(this.AppId); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ObjectLockRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ObjectLockRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Key); 17 | rWriter.Serialize(this.LockAppId); 18 | rWriter.Serialize(this.Time); 19 | } 20 | public override void Deserialize(BinaryReader rReader) 21 | { 22 | base.Deserialize(rReader); 23 | this.Key = rReader.Deserialize(this.Key); 24 | this.LockAppId = rReader.Deserialize(this.LockAppId); 25 | this.Time = rReader.Deserialize(this.Time); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ObjectLockResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ObjectLockResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ObjectRemoveRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ObjectRemoveRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Key); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.Key = rReader.Deserialize(this.Key); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ObjectRemoveResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ObjectRemoveResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ObjectUnLockRequest.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ObjectUnLockRequest 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Key); 17 | rWriter.Serialize(this.UnLockAppId); 18 | rWriter.Serialize(this.AppId); 19 | } 20 | public override void Deserialize(BinaryReader rReader) 21 | { 22 | base.Deserialize(rReader); 23 | this.Key = rReader.Deserialize(this.Key); 24 | this.UnLockAppId = rReader.Deserialize(this.UnLockAppId); 25 | this.AppId = rReader.Deserialize(this.AppId); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.ObjectUnLockResponse.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class ObjectUnLockResponse 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.R2C_Login.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class R2C_Login 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Address); 17 | rWriter.Serialize(this.Key); 18 | } 19 | public override void Deserialize(BinaryReader rReader) 20 | { 21 | base.Deserialize(rReader); 22 | this.Address = rReader.Deserialize(this.Address); 23 | this.Key = rReader.Deserialize(this.Key); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.R2C_Ping.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class R2C_Ping 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | } 17 | public override void Deserialize(BinaryReader rReader) 18 | { 19 | base.Deserialize(rReader); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.R2G_GetLoginKey.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class R2G_GetLoginKey 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.Account); 17 | } 18 | public override void Deserialize(BinaryReader rReader) 19 | { 20 | base.Deserialize(rReader); 21 | this.Account = rReader.Deserialize(this.Account); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Generate/SerializerBinary/Protocol/Model.UnitInfo.Binary.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using Core; 3 | using Core.Serializer; 4 | 5 | 6 | /// 7 | /// 文件自动生成无需又该!如果出现编译错误,删除文件后会自动生成 8 | /// 9 | namespace Model 10 | { 11 | public partial class UnitInfo 12 | { 13 | public override void Serialize(BinaryWriter rWriter) 14 | { 15 | base.Serialize(rWriter); 16 | rWriter.Serialize(this.UnitId); 17 | rWriter.Serialize(this.X); 18 | rWriter.Serialize(this.Z); 19 | } 20 | public override void Deserialize(BinaryReader rReader) 21 | { 22 | base.Deserialize(rReader); 23 | this.UnitId = rReader.Deserialize(this.UnitId); 24 | this.X = rReader.Deserialize(this.X); 25 | this.Z = rReader.Deserialize(this.Z); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Message/AMHandler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | public abstract class AMHandler : IMHandler where Message : AMessage 6 | { 7 | protected abstract void Run(Session session, Message message); 8 | 9 | public void Handle(Session session, AMessage msg) 10 | { 11 | Message message = msg as Message; 12 | if (message == null) 13 | { 14 | Log.Error($"消息类型转换错误: {msg.GetType().Name} to {typeof(Message).Name}"); 15 | } 16 | this.Run(session, message); 17 | } 18 | 19 | public Type GetMessageType() 20 | { 21 | return typeof(Message); 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Message/IMessageDispatcher.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public interface IMessageDispatcher 4 | { 5 | void Dispatch(Session session, Opcode opcode, int offset, byte[] messageBytes, AMessage message); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Message/IMessagePacker.cs: -------------------------------------------------------------------------------- 1 | using Core.Serializer; 2 | using System; 3 | 4 | namespace Model 5 | { 6 | public interface IMessagePacker 7 | { 8 | byte[] SerializeToByteArray(object obj); 9 | string SerializeToText(object obj); 10 | 11 | object DeserializeFrom(Type type, byte[] bytes); 12 | object DeserializeFrom(Type type, byte[] bytes, int index, int count); 13 | T DeserializeFrom(byte[] bytes) where T : SerializerBinary; 14 | T DeserializeFrom(byte[] bytes, int index, int count) where T : SerializerBinary; 15 | 16 | T DeserializeFrom(string str) where T : SerializerBinary; 17 | object DeserializeFrom(Type type, string str); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Message/RpcException.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Model 4 | { 5 | /// 6 | /// RPC异常,带ErrorCode 7 | /// 8 | [Serializable] 9 | public class RpcException: Exception 10 | { 11 | public int Error { get; private set; } 12 | 13 | public RpcException(int error, string message): base($"Error: {error} Message: {message}") 14 | { 15 | this.Error = error; 16 | } 17 | 18 | public RpcException(int error, string message, Exception e): base($"Error: {error} Message: {message}", e) 19 | { 20 | this.Error = error; 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Other/NumericType.cs: -------------------------------------------------------------------------------- 1 | namespace Model 2 | { 3 | public enum NumericType 4 | { 5 | Speed = 1000, 6 | SpeedBase = Speed * 10, 7 | SpeedAdd = Speed * 10 + 1, 8 | SpeedPct = Speed * 10 + 2, 9 | } 10 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Other/OneThreadSynchronizationContext.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Concurrent; 3 | using System.Threading; 4 | 5 | namespace Model 6 | { 7 | public class OneThreadSynchronizationContext : SynchronizationContext 8 | { 9 | // 线程同步队列,发送接收socket回调都放到该队列,由poll线程统一执行 10 | private readonly ConcurrentQueue queue = new ConcurrentQueue(); 11 | 12 | private void Add(Action action) 13 | { 14 | this.queue.Enqueue(action); 15 | } 16 | 17 | public void Update() 18 | { 19 | while (true) 20 | { 21 | Action a; 22 | if (!this.queue.TryDequeue(out a)) 23 | { 24 | return; 25 | } 26 | a(); 27 | } 28 | } 29 | 30 | public override void Post(SendOrPostCallback callback, object state) 31 | { 32 | this.Add(() => { callback(state); }); 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Other/Options.cs: -------------------------------------------------------------------------------- 1 | #if SERVER 2 | using CommandLine; 3 | #endif 4 | 5 | namespace Model 6 | { 7 | public class Options 8 | { 9 | [Option("appId", Required = false, Default = 1)] 10 | public int AppId { get; set; } 11 | 12 | // 没啥用,主要是在查看进程信息能区分每个app.exe的类型 13 | [Option("appType", Required = false, Default = AppType.Manager)] 14 | public AppType AppType { get; set; } 15 | 16 | [Option("config", Required = false, Default = "../Config/StartConfig/LocalAllServer.txt")] 17 | public string Config { get; set; } 18 | } 19 | } -------------------------------------------------------------------------------- /Server/Egametang/Server/Model/Server.Model.csproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | false 5 | 6 | -------------------------------------------------------------------------------- /Server/Egametang/Server/SerializerBinaryEditor/Program.cs: -------------------------------------------------------------------------------- 1 | //====================================================================== 2 | // Copyright (C) 2015-2020 Winddy He. All rights reserved 3 | // Email: hgplan@126.com 4 | //====================================================================== 5 | using System; 6 | using System.Collections.Generic; 7 | using System.Linq; 8 | using System.Text; 9 | using Model; 10 | 11 | namespace Core.Editor 12 | { 13 | class Program 14 | { 15 | static void Main(string[] args) 16 | { 17 | DllHelper.ReferthisDLL(); 18 | AutoCSGenerateMain.AutoCSGenerate(); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Server/Egametang/Server/SerializerBinaryEditor/SerializerBinaryEditor.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp2.0 6 | 7 | 8 | 9 | bin\Debug\ 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Server/Egametang/Server/ThirdParty/ENet/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | INCLUDE_DIRECTORIES(.) 2 | 3 | FILE(GLOB Header "enet/*.h") 4 | FILE(GLOB CCer "*.c") 5 | 6 | SET(ENetSrc 7 | ${Header} 8 | ${CCer} 9 | ) 10 | 11 | ADD_LIBRARY(ENet SHARED ${ENetSrc}) 12 | 13 | set_target_properties(ENet PROPERTIES 14 | LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/" 15 | ) -------------------------------------------------------------------------------- /Server/Egametang/Server/ThirdParty/ENet/ENet.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /Server/Egametang/Server/ThirdParty/ENet/enet/callbacks.h: -------------------------------------------------------------------------------- 1 | /** 2 | @file callbacks.h 3 | @brief ENet callbacks 4 | */ 5 | #ifndef __ENET_CALLBACKS_H__ 6 | #define __ENET_CALLBACKS_H__ 7 | 8 | #include 9 | 10 | typedef struct _ENetCallbacks 11 | { 12 | void * (ENET_CALLBACK * malloc) (size_t size); 13 | void (ENET_CALLBACK * free) (void * memory); 14 | void (ENET_CALLBACK * no_memory) (void); 15 | } ENetCallbacks; 16 | 17 | /** @defgroup callbacks ENet internal callbacks 18 | @{ 19 | @ingroup private 20 | */ 21 | extern void * enet_malloc (size_t); 22 | extern void enet_free (void *); 23 | 24 | /** @} */ 25 | 26 | #endif /* __ENET_CALLBACKS_H__ */ 27 | 28 | -------------------------------------------------------------------------------- /Server/Egametang/Server/ThirdParty/ENet/enet/time.h: -------------------------------------------------------------------------------- 1 | /** 2 | @file time.h 3 | @brief ENet time constants and macros 4 | */ 5 | #ifndef __ENET_TIME_H__ 6 | #define __ENET_TIME_H__ 7 | 8 | #define ENET_TIME_OVERFLOW 86400000 9 | 10 | #define ENET_TIME_LESS(a, b) ((a) - (b) >= ENET_TIME_OVERFLOW) 11 | #define ENET_TIME_GREATER(a, b) ((b) - (a) >= ENET_TIME_OVERFLOW) 12 | #define ENET_TIME_LESS_EQUAL(a, b) (! ENET_TIME_GREATER (a, b)) 13 | #define ENET_TIME_GREATER_EQUAL(a, b) (! ENET_TIME_LESS (a, b)) 14 | 15 | #define ENET_TIME_DIFFERENCE(a, b) ((a) - (b) >= ENET_TIME_OVERFLOW ? (b) - (a) : (a) - (b)) 16 | 17 | #endif /* __ENET_TIME_H__ */ 18 | 19 | -------------------------------------------------------------------------------- /Server/Egametang/Server/ThirdParty/ENet/enet/types.h: -------------------------------------------------------------------------------- 1 | /** 2 | @file types.h 3 | @brief type definitions for ENet 4 | */ 5 | #ifndef __ENET_TYPES_H__ 6 | #define __ENET_TYPES_H__ 7 | 8 | typedef unsigned char enet_uint8; /**< unsigned 8-bit type */ 9 | typedef unsigned short enet_uint16; /**< unsigned 16-bit type */ 10 | typedef unsigned int enet_uint32; /**< unsigned 32-bit type */ 11 | 12 | #endif /* __ENET_TYPES_H__ */ 13 | 14 | -------------------------------------------------------------------------------- /Server/Egametang/Server/ThirdParty/ENet/enet/utility.h: -------------------------------------------------------------------------------- 1 | /** 2 | @file utility.h 3 | @brief ENet utility header 4 | */ 5 | #ifndef __ENET_UTILITY_H__ 6 | #define __ENET_UTILITY_H__ 7 | 8 | #define ENET_MAX(x, y) ((x) > (y) ? (x) : (y)) 9 | #define ENET_MIN(x, y) ((x) < (y) ? (x) : (y)) 10 | 11 | #endif /* __ENET_UTILITY_H__ */ 12 | 13 | -------------------------------------------------------------------------------- /Server/Egametang/Server/ThirdParty/MongodbDriver/MongoDB.Bson/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /Server/Egametang/Server/ThirdParty/MongodbDriver/MongoDB.Driver.Core/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Server/Egametang/Server/ThirdParty/MongodbDriver/MongoDB.Driver/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Server/Egametang/Server/ThirdParty/Nuget/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /UnityPackageManager/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | } 4 | } 5 | --------------------------------------------------------------------------------