From fc799ad4d4ed2cf298fac281f549748e00f39060 Mon Sep 17 00:00:00 2001 From: qq362946 <362946@qq.com> Date: Tue, 1 Oct 2024 15:14:53 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BA=86Fantasy.Benchmark?= =?UTF-8?q?=E5=9F=BA=E5=87=86=E6=B5=8B=E8=AF=95=E5=8A=9F=E8=83=BD=E3=80=82?= =?UTF-8?q?=E5=85=B7=E4=BD=93=E8=AF=B7=E7=9C=8BFantasy.Benchmark/README.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Fanatsy.sln | 8 +- Fanatsy.sln.DotSettings.user | 2 + Fantasy.Benchmark/ConsoleLog.cs | 138 ++++++++++++++++++ Fantasy.Benchmark/Fantasy.Benchmark.csproj | 32 ++++ Fantasy.Benchmark/NetworkBenchmark.cs | 45 ++++++ Fantasy.Benchmark/Program.cs | 2 + Fantasy.Benchmark/README.md | 6 + .../Handler/BenchmarkRequestHandler.cs | 25 ++++ .../Core/Network/Message/InnerMessage.cs | 32 ++++ .../Network/Message/PacketParser/OpCode.cs | 3 + .../Runtime/Core/Platform/Console/Entry.cs | 1 + .../Core/Serialize/Interface/ASerialize.cs | 3 +- .../Fantasy.Unity/Runtime/Core/Benchmark.meta | 8 + .../Runtime/Core/Benchmark/Handler.meta | 8 + .../Handler/BenchmarkRequestHandler.cs | 25 ++++ .../Handler/BenchmarkRequestHandler.cs.meta | 11 ++ .../Core/Network/Message/InnerMessage.cs | 32 ++++ .../Network/Message/PacketParser/OpCode.cs | 3 + .../ProcessSession/ProcessScheduler.cs | 1 - .../Runtime/Core/Platform/Console/Entry.cs | 1 + .../Fantasy.Unity/Runtime/Core/Scene/Scene.cs | 14 +- .../Core/Serialize/Interface/ASerialize.cs | 4 + .../Core/Serialize/SerializerManager.cs | 2 + .../Fantasy.Console.csproj | 4 +- Fantays.Console/Fantasy.Console.sln | 16 -- .../Runtime/Core/Assembly/AssemblyInfo.cs | 0 .../Runtime/Core/Assembly/AssemblySystem.cs | 0 .../Runtime/Core/Assembly/IAssembly.cs | 0 .../Handler/BenchmarkRequestHandler.cs | 25 ++++ .../Runtime/Core/DataBase/IDateBase.cs | 0 .../Runtime/Core/DataBase/MongoDataBase.cs | 0 .../Runtime/Core/DataBase/World.cs | 0 .../Collection/CircularBuffer.cs | 0 .../Collection/ConcurrentOneToManyListPool.cs | 0 .../ConcurrentOneToManyQueuePool.cs | 0 .../DataStructure/Collection/HashSetPool.cs | 0 .../Core/DataStructure/Collection/ListPool.cs | 0 .../Collection/OneToManyHashSetPool.cs | 0 .../Collection/OneToManyListPool.cs | 0 .../Collection/OneToManyQueuePool.cs | 0 .../DataStructure/Collection/ReuseList.cs | 0 .../SortedConcurrentOneToManyListPool.cs | 0 .../Collection/SortedOneToManyHashSetPool.cs | 0 .../Collection/SortedOneToManyListPool.cs | 0 .../Dictionary/DictionaryExtensions.cs | 0 .../Dictionary/DictionaryPool.cs | 0 .../Dictionary/DoubleMapDictionaryPool.cs | 0 .../Dictionary/EntityDictionary.cs | 0 .../Dictionary/OneToManyDictionaryPool.cs | 0 .../OneToManySortedDictionaryPool.cs | 0 .../Dictionary/ReuseDictionary.cs | 0 .../Dictionary/SortedDictionaryPool.cs | 0 .../DataStructure/NativeCollections/LICENSE | 0 .../NativeCollections/BitOperationsHelpers.cs | 0 .../NativeCollections/HashHelpers.cs | 0 .../NativeCollections/NativeArray.cs | 0 .../NativeCollections/NativeArrayPool.cs | 0 .../NativeCollections/NativeArrayReference.cs | 0 .../NativeCollections/NativeArraySegment.cs | 0 .../NativeCollections/NativeBitArray.cs | 0 .../NativeBuddyMemoryPool.cs | 0 .../NativeConcurrentDictionary.cs | 0 .../NativeConcurrentHashSet.cs | 0 .../NativeConcurrentQueue.cs | 0 .../NativeConcurrentSpinLock.cs | 0 .../NativeConcurrentStack.cs | 0 .../NativeCollections/NativeDictionary.cs | 0 .../NativeCollections/NativeHashSet.cs | 0 .../NativeCollections/NativeList.cs | 0 .../NativeMemoryAllocator.cs | 0 .../NativeCollections/NativeMemoryArray.cs | 0 .../NativeCollections/NativeMemoryBucket.cs | 0 .../NativeCollections/NativeMemoryPool.cs | 0 .../NativeCollections/NativeMemoryReader.cs | 0 .../NativeMemoryReaderExtensions.cs | 0 .../NativeCollections/NativeMemoryStream.cs | 0 .../NativeCollections/NativeMemoryWriter.cs | 0 .../NativeCollections/NativeMonitorLock.cs | 0 .../NativeCollections/NativePriorityQueue.cs | 0 .../NativeCollections/NativeQueue.cs | 0 .../NativeCollections/NativeReference.cs | 0 .../NativeSortedDictionary.cs | 0 .../NativeCollections/NativeSortedList.cs | 0 .../NativeCollections/NativeSortedSet.cs | 0 .../NativeCollections/NativeStack.cs | 0 .../DataStructure/NativeCollections/README.md | 0 .../PriorityQueue/PriorityQueueGenerics.cs | 0 .../PriorityQueue/PriorityQueueItem.cs | 0 .../PriorityQueue/PriorityQueueSimple.cs | 0 .../Core/DataStructure/SkipTable/SkipTable.cs | 0 .../DataStructure/SkipTable/SkipTableBase.cs | 0 .../DataStructure/SkipTable/SkipTableDesc.cs | 0 .../DataStructure/SkipTable/SkipTableNode.cs | 0 .../Component/CoroutineLock/CoroutineLock.cs | 0 .../CoroutineLock/CoroutineLockComponent.cs | 0 .../CoroutineLock/CoroutineLockQueue.cs | 0 .../CoroutineLock/WaitCoroutineLock.cs | 0 .../Core/Entitas/Component/EntityComponent.cs | 0 .../EventComponent/EventComponent.cs | 0 .../EventComponent/Interface/IEvent.cs | 0 .../Entitas/Component/MessagePoolComponent.cs | 0 .../SingleCollectionComponent.cs | 0 .../TimerComponent/Interface/TimerHandler.cs | 0 .../TimerComponent/TimeWheel/ScheduledTask.cs | 0 .../TimerComponent/TimeWheel/TimeWheel.cs | 0 .../Component/TimerComponent/TimerAction.cs | 0 .../TimerComponent/TimerComponent.cs | 0 .../TimerScheduler/TimerSchedulerNet.cs | 0 .../TimerScheduler/TimerSchedulerNetUnity.cs | 0 .../Component/TimerComponent/TimerType.cs | 0 .../Runtime/Core/Entitas/Entity.cs | 0 .../Runtime/Core/Entitas/EntityPool.cs | 0 .../Runtime/Core/Entitas/EntityReference.cs | 0 .../Supported/ISingleCollectionRoot.cs | 0 .../Interface/Supported/ISupportedDataBase.cs | 0 .../Supported/ISupportedMultiEntity.cs | 0 .../Supported/ISupportedSingleCollection.cs | 0 .../Interface/Supported/ISupportedTransfer.cs | 0 .../Entitas/Interface/System/IAwakeSystem.cs | 0 .../Interface/System/IDeserializeSystem.cs | 0 .../Interface/System/IDestroySystem.cs | 0 .../Interface/System/IEntitiesSystem.cs | 0 .../Interface/System/IFrameUpdateSystem.cs | 0 .../Entitas/Interface/System/IUpdateSystem.cs | 0 .../AsyncFTaskCompletedMethodBuilder.cs | 0 .../FTask/Builder/AsyncFTaskMethodBuilder.cs | 0 .../FTask/Builder/AsyncFVoidMethodBuilder.cs | 0 .../FCancellationToken.Extension.cs | 0 .../FCancellationToken/FCancellationToken.cs | 0 .../FTask/FTask.Extension/FTask.Factory.cs | 0 .../Core/FTask/FTask.Extension/FTask.Token.cs | 0 .../Core/FTask/FTask.Extension/FTask.Tools.cs | 0 .../Runtime/Core/FTask/Interface/IFTask.cs | 0 .../Runtime/Core/FTask/Task/FTask.cs | 0 .../Runtime/Core/FTask/Task/FTaskCompleted.cs | 0 .../Runtime/Core/FTask/Task/FVoid.cs | 0 .../Runtime/Core/Helper/ByteHelper.cs | 0 .../Runtime/Core/Helper/Download/ADownload.cs | 0 .../Core/Helper/Download/ADownload.cs.meta | 0 .../Runtime/Core/Helper/Download/Download.cs | 0 .../Core/Helper/Download/Download.cs.meta | 0 .../Helper/Download/DownloadAssetBundle.cs | 0 .../Download/DownloadAssetBundle.cs.meta | 0 .../Core/Helper/Download/DownloadAudioClip.cs | 0 .../Helper/Download/DownloadAudioClip.cs.meta | 0 .../Core/Helper/Download/DownloadByte.cs | 0 .../Core/Helper/Download/DownloadByte.cs.meta | 0 .../Core/Helper/Download/DownloadSprite.cs | 0 .../Helper/Download/DownloadSprite.cs.meta | 0 .../Core/Helper/Download/DownloadText.cs | 0 .../Core/Helper/Download/DownloadText.cs.meta | 0 .../Core/Helper/Download/DownloadTexture.cs | 0 .../Helper/Download/DownloadTexture.cs.meta | 0 .../Runtime/Core/Helper/EncryptHelper.cs | 0 .../Runtime/Core/Helper/FileHelper.cs | 0 .../Runtime/Core/Helper/HashCodeHelper.cs | 0 .../Helper/HttpClient/HttpClientHelper.cs | 0 .../HttpClient/HttpClientHelper.cs.meta | 0 .../Core/Helper/HttpClient/HttpClientPool.cs | 0 .../Helper/HttpClient/HttpClientPool.cs.meta | 0 .../Core/Helper/HttpClient/IJsonRpcRequest.cs | 0 .../Helper/HttpClient/IJsonRpcRequest.cs.meta | 0 .../Runtime/Core/Helper/JsonHelper.cs | 0 .../Runtime/Core/Helper/NetworkHelper.cs | 0 .../Runtime/Core/Helper/RandomHelper.cs | 0 .../Runtime/Core/Helper/SocketHelper.cs | 0 .../Runtime/Core/Helper/TimeHelper.cs | 0 .../UnityWebRequest/UnityWebRequestHelper.cs | 0 .../UnityWebRequestHelper.cs.meta | 0 .../Runtime/Core/Helper/WebSocketHelper.cs | 0 .../Runtime/Core/Helper/WinPeriod.cs | 0 .../Runtime/Core/IdFactory/EntityIdFactory.cs | 0 .../Core/IdFactory/RuntimeIdFactory.cs | 0 .../Runtime/Core/InnerErrorCode.cs | 0 .../Runtime/Core/Log/ConsoleLog.cs | 0 .../Runtime/Core/Log/ILog.cs | 0 .../Runtime/Core/Log/Log.cs | 0 .../Runtime/Core/Log/UnityLog.cs | 0 .../Network/Addressable/AddressableHelper.cs | 0 .../Addressable/AddressableManageComponent.cs | 0 .../AddressableMessageComponent.cs | 0 .../Addressable/AddressableRouteComponent.cs | 0 .../Network/Addressable/AddressableScene.cs | 0 .../Handler/I_AddressableAddHandler.cs | 0 .../Handler/I_AddressableGetHandler.cs | 0 .../Handler/I_AddressableLockHandler.cs | 0 .../Handler/I_AddressableRemoveHandler.cs | 0 .../Handler/I_AddressableUnLockHandler.cs | 0 .../Core/Network/MemoryStreamBufferPool.cs | 0 .../Dispatcher/Interface/IMessageHandler.cs | 0 .../Interface/IRouteMessageHandler.cs | 0 .../Dispatcher/MessageDispatcherComponent.cs | 0 .../Runtime/Core/Network/Message/IMessage.cs | 0 .../Core/Network/Message/InnerMessage.cs | 32 ++++ .../Handler/BufferPacketParser.cs | 0 .../Handler/CircularBufferPacketParser.cs | 0 .../Handler/OuterBufferPacketParserHelper.cs | 0 .../Handler/ReadOnlyMemoryPacketParser.cs | 0 .../PacketParser/Interface/APackInfo.cs | 0 .../PacketParser/Interface/APacketParser.cs | 0 .../Network/Message/PacketParser/OpCode.cs | 3 + .../PacketParser/Pack/InnerPackInfo.cs | 0 .../PacketParser/Pack/OuterPackInfo.cs | 0 .../PacketParser/Pack/ProcessPackInfo.cs | 0 .../Network/Message/PacketParser/Packet.cs | 0 .../PacketParser/PacketParserFactory.cs | 0 .../Scheduler/ClientMessageScheduler.cs | 0 .../Scheduler/InnerMessageScheduler.cs | 0 .../Interface/ANetworkMessageScheduler.cs | 0 .../Scheduler/MessageHelper/MessageSender.cs | 0 .../NetworkMessagingComponent.cs | 0 .../OnNetworkMessageUpdateCheckTimeout.cs | 0 .../Scheduler/OuterMessageScheduler.cs | 0 .../Protocol/Exception/ScanException.cs | 0 .../Protocol/HTTP/HTTPServerNetwork.cs | 0 .../Protocol/HTTP/SceneContextFilter.cs | 0 .../Protocol/Interface/AClientNetwork.cs | 0 .../Network/Protocol/Interface/ANetwork.cs | 0 .../Interface/ANetworkServerChannel.cs | 0 .../Protocol/Interface/INetworkChannel.cs | 0 .../Core/Network/Protocol/KCP/Base/Kcp.cs | 0 .../Core/Network/Protocol/KCP/Base/ikcpc.cs | 0 .../Core/Network/Protocol/KCP/Base/ikcph.cs | 0 .../Protocol/KCP/Client/KCPClientNetwork.cs | 0 .../Core/Network/Protocol/KCP/KCPSettings.cs | 0 .../Core/Network/Protocol/KCP/KcpHeader.cs | 0 .../Protocol/KCP/Server/KCPServerNetwork.cs | 0 .../KCP/Server/KCPServerNetworkChannel.cs | 0 .../Protocol/NetworkProtocolFactory.cs | 0 .../Network/Protocol/NetworkProtocolType.cs | 0 .../Protocol/TCP/Client/TCPClientNetwork.cs | 0 .../Protocol/TCP/Server/TCPServerNetwork.cs | 0 .../TCP/Server/TCPServerNetworkChannel.cs | 0 .../Client/WebSocketClientNetwork.cs | 0 .../Client/WebSocketClientNetworkWebgl.cs | 0 .../Server/WebSocketServerNetwork.cs | 0 .../Server/WebSocketServerNetworkChannel.cs | 0 .../Core/Network/Route/RouteComponent.cs | 0 .../ConsoleSessionHeartbeatComponent.cs | 0 .../Component/SessionIdleCheckerComponent.cs | 0 .../UnitySessionHeartbeatComponent.cs | 0 .../ProcessSession/ProcessScheduler.cs | 1 - .../Session/ProcessSession/ProcessSession.cs | 0 .../ProcessSession/ProcessSessionInfo.cs | 0 .../Runtime/Core/Network/Session/Session.cs | 0 .../Runtime/Core/Platform/Console/Entry.cs | 1 + .../Console/ThreadSynchronizationContext.cs | 0 .../Platform/Net/ConfigTable/MachineConfig.cs | 0 .../Platform/Net/ConfigTable/ProcessConfig.cs | 0 .../Platform/Net/ConfigTable/SceneConfig.cs | 0 .../Platform/Net/ConfigTable/WorldConfig.cs | 0 .../Runtime/Core/Platform/Net/Entry.cs | 0 .../Runtime/Core/Platform/Net/Process.cs | 0 .../Core/Platform/Net/ProcessDefine.cs | 0 .../Net/ThreadSynchronizationContext.cs | 0 .../Runtime/Core/Platform/Unity/AppDefine.cs | 0 .../Attributes/BsonDefaultValueAttribute.cs | 0 .../Unity/Attributes/BsonElementAttribute.cs | 0 .../Unity/Attributes/BsonIdAttribute.cs | 0 .../Unity/Attributes/BsonIgnoreAttribute.cs | 0 .../BsonIgnoreIfDefaultAttribute.cs | 0 .../Attributes/BsonIgnoreIfNullAttribute.cs | 0 .../Runtime/Core/Platform/Unity/Entry.cs | 0 .../Runtime/Core/Platform/Unity/Temp.cs | 0 .../Unity/ThreadSynchronizationContext.cs | 0 .../Core/Pool/Concurrent/MultiThreadPool.cs | 0 .../Pool/Concurrent/MultiThreadPoolQueue.cs | 0 .../Runtime/Core/Pool/Interface/IPool.cs | 0 .../Runtime/Core/Pool/Normal/Pool.cs | 0 .../Runtime/Core/Pool/Normal/PoolCore.cs | 0 .../Core/Pool/Normal/PoolWithDisposable.cs | 0 .../Runtime/Core/Pool/PoolHelper.cs | 0 .../Runtime/Core/Scene/ISceneUpdate.cs | 0 .../Runtime/Core/Scene/OnCreateSceneEvent.cs | 0 .../Runtime/Core/Scene/Scene.cs | 14 +- .../Core/Scene/Scheduler/ISceneScheduler.cs | 0 .../Core/Scene/Scheduler/MainScheduler.cs | 0 .../Scene/Scheduler/MultiThreadScheduler.cs | 0 .../Scene/Scheduler/ThreadPoolScheduler.cs | 0 .../Core/Scene/Scheduler/ThreadScheduler.cs | 0 .../Core/Serialize/BsonPack/BsonPackHelper.cs | 0 .../Serialize/BsonPack/StructBsonSerialize.cs | 0 .../BsonPack/SupportInitializeChecker.cs | 0 .../Core/Serialize/Interface/ASerialize.cs | 5 +- .../Core/Serialize/Interface/ISerialize.cs | 0 .../Core/Serialize/MemoryStreamBuffer.cs | 0 .../Serialize/ProtoBufPackHelper/IProto.cs | 0 .../ProtoBufPackHelperNet.cs | 0 .../ProtoBufPackHelperUnity.cs | 0 .../Core/Serialize/SerializerManager.cs | 2 + .../ConfigTable/Fantasy.Tools.ConfigTable.dll | Bin 64000 -> 64000 bytes .../ConfigTable/Fantasy.Tools.ConfigTable.pdb | Bin 37932 -> 37928 bytes Tools/Exporter/ConfigTable/Run.bat | 6 +- .../NetworkProtocol/ExporterSettings.json | 0 .../Fantasy.Tools.NetworkProtocol.dll | Bin 45568 -> 45568 bytes .../Fantasy.Tools.NetworkProtocol.pdb | Bin 24424 -> 24460 bytes Tools/Exporter/NetworkProtocol/Run.bat | 0 Tools/Exporter/NetworkProtocol/Run.sh | 0 .../Console/Fantasy.Console.Entity/Entry.cs | 15 +- .../Console/Fantasy.Console.Main/Program.cs | 11 +- .../Fantasy.Console.sln.DotSettings.user | 2 + examples/Server/Fantasy.Generator/Class1.cs | 8 - .../Fantasy.Generator.csproj | 8 - 303 files changed, 488 insertions(+), 71 deletions(-) create mode 100644 Fanatsy.sln.DotSettings.user create mode 100644 Fantasy.Benchmark/ConsoleLog.cs create mode 100644 Fantasy.Benchmark/Fantasy.Benchmark.csproj create mode 100644 Fantasy.Benchmark/NetworkBenchmark.cs create mode 100644 Fantasy.Benchmark/Program.cs create mode 100644 Fantasy.Benchmark/README.md create mode 100644 Fantasy.Net/Fantasy.Net/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs create mode 100644 Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark.meta create mode 100644 Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark/Handler.meta create mode 100644 Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs create mode 100644 Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs.meta rename Fantays.Console/{Fantasy.Console => }/Fantasy.Console.csproj (86%) delete mode 100644 Fantays.Console/Fantasy.Console.sln rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Assembly/AssemblyInfo.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Assembly/AssemblySystem.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Assembly/IAssembly.cs (100%) create mode 100644 Fantays.Console/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataBase/IDateBase.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataBase/MongoDataBase.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataBase/World.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Collection/CircularBuffer.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Collection/ConcurrentOneToManyListPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Collection/ConcurrentOneToManyQueuePool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Collection/HashSetPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Collection/ListPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Collection/OneToManyHashSetPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Collection/OneToManyListPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Collection/OneToManyQueuePool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Collection/ReuseList.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Collection/SortedConcurrentOneToManyListPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Collection/SortedOneToManyHashSetPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Collection/SortedOneToManyListPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Dictionary/DictionaryExtensions.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Dictionary/DictionaryPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Dictionary/DoubleMapDictionaryPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Dictionary/EntityDictionary.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Dictionary/OneToManyDictionaryPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Dictionary/OneToManySortedDictionaryPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Dictionary/ReuseDictionary.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/Dictionary/SortedDictionaryPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/LICENSE (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/BitOperationsHelpers.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/HashHelpers.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArray.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArrayPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArrayReference.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArraySegment.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeBitArray.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeBuddyMemoryPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentDictionary.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentHashSet.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentQueue.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentSpinLock.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentStack.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeDictionary.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeHashSet.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeList.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryAllocator.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryArray.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryBucket.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryReader.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryReaderExtensions.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryStream.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryWriter.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMonitorLock.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativePriorityQueue.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeQueue.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeReference.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedDictionary.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedList.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedSet.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeStack.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/NativeCollections/README.md (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueGenerics.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueItem.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueSimple.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/SkipTable/SkipTable.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/SkipTable/SkipTableBase.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/SkipTable/SkipTableDesc.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/DataStructure/SkipTable/SkipTableNode.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLock.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLockComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLockQueue.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/CoroutineLock/WaitCoroutineLock.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/EntityComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/EventComponent/EventComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/EventComponent/Interface/IEvent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/MessagePoolComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/SingleCollectionComponent/SingleCollectionComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/TimerComponent/Interface/TimerHandler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/TimerComponent/TimeWheel/ScheduledTask.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/TimerComponent/TimeWheel/TimeWheel.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/TimerComponent/TimerAction.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/TimerComponent/TimerComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/TimerComponent/TimerScheduler/TimerSchedulerNet.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/TimerComponent/TimerScheduler/TimerSchedulerNetUnity.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Component/TimerComponent/TimerType.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Entity.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/EntityPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/EntityReference.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Interface/Supported/ISingleCollectionRoot.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Interface/Supported/ISupportedDataBase.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Interface/Supported/ISupportedMultiEntity.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Interface/Supported/ISupportedSingleCollection.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Interface/Supported/ISupportedTransfer.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Interface/System/IAwakeSystem.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Interface/System/IDeserializeSystem.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Interface/System/IDestroySystem.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Interface/System/IEntitiesSystem.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Interface/System/IFrameUpdateSystem.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Entitas/Interface/System/IUpdateSystem.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/FTask/Builder/AsyncFTaskCompletedMethodBuilder.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/FTask/Builder/AsyncFTaskMethodBuilder.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/FTask/Builder/AsyncFVoidMethodBuilder.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/FTask/FCancellationToken/FCancellationToken.Extension.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/FTask/FCancellationToken/FCancellationToken.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/FTask/FTask.Extension/FTask.Factory.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/FTask/FTask.Extension/FTask.Token.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/FTask/FTask.Extension/FTask.Tools.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/FTask/Interface/IFTask.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/FTask/Task/FTask.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/FTask/Task/FTaskCompleted.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/FTask/Task/FVoid.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/ByteHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/ADownload.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/ADownload.cs.meta (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/Download.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/Download.cs.meta (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/DownloadAssetBundle.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/DownloadAssetBundle.cs.meta (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/DownloadAudioClip.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/DownloadAudioClip.cs.meta (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/DownloadByte.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/DownloadByte.cs.meta (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/DownloadSprite.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/DownloadSprite.cs.meta (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/DownloadText.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/DownloadText.cs.meta (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/DownloadTexture.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/Download/DownloadTexture.cs.meta (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/EncryptHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/FileHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/HashCodeHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/HttpClient/HttpClientHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/HttpClient/HttpClientHelper.cs.meta (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/HttpClient/HttpClientPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/HttpClient/HttpClientPool.cs.meta (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/HttpClient/IJsonRpcRequest.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/HttpClient/IJsonRpcRequest.cs.meta (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/JsonHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/NetworkHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/RandomHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/SocketHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/TimeHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/UnityWebRequest/UnityWebRequestHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/UnityWebRequest/UnityWebRequestHelper.cs.meta (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/WebSocketHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Helper/WinPeriod.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/IdFactory/EntityIdFactory.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/IdFactory/RuntimeIdFactory.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/InnerErrorCode.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Log/ConsoleLog.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Log/ILog.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Log/Log.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Log/UnityLog.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Addressable/AddressableHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Addressable/AddressableManageComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Addressable/AddressableMessageComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Addressable/AddressableRouteComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Addressable/AddressableScene.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Addressable/Handler/I_AddressableAddHandler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Addressable/Handler/I_AddressableGetHandler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Addressable/Handler/I_AddressableLockHandler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Addressable/Handler/I_AddressableRemoveHandler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Addressable/Handler/I_AddressableUnLockHandler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/MemoryStreamBufferPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/Dispatcher/Interface/IMessageHandler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/Dispatcher/Interface/IRouteMessageHandler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/Dispatcher/MessageDispatcherComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/IMessage.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/InnerMessage.cs (87%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/PacketParser/Handler/BufferPacketParser.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/PacketParser/Handler/CircularBufferPacketParser.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/PacketParser/Handler/OuterBufferPacketParserHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/PacketParser/Handler/ReadOnlyMemoryPacketParser.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/PacketParser/Interface/APackInfo.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/PacketParser/Interface/APacketParser.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/PacketParser/OpCode.cs (93%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/PacketParser/Pack/InnerPackInfo.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/PacketParser/Pack/OuterPackInfo.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/PacketParser/Pack/ProcessPackInfo.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/PacketParser/Packet.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/PacketParser/PacketParserFactory.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/Scheduler/ClientMessageScheduler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/Scheduler/InnerMessageScheduler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/Scheduler/Interface/ANetworkMessageScheduler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/Scheduler/MessageHelper/MessageSender.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/Scheduler/MessageHelper/NetworkMessagingComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/Scheduler/MessageHelper/OnNetworkMessageUpdateCheckTimeout.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Message/Scheduler/OuterMessageScheduler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/Exception/ScanException.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/HTTP/HTTPServerNetwork.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/HTTP/SceneContextFilter.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/Interface/AClientNetwork.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/Interface/ANetwork.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/Interface/ANetworkServerChannel.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/Interface/INetworkChannel.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/KCP/Base/Kcp.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/KCP/Base/ikcpc.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/KCP/Base/ikcph.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/KCP/Client/KCPClientNetwork.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/KCP/KCPSettings.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/KCP/KcpHeader.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/KCP/Server/KCPServerNetwork.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/KCP/Server/KCPServerNetworkChannel.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/NetworkProtocolFactory.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/NetworkProtocolType.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/TCP/Client/TCPClientNetwork.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/TCP/Server/TCPServerNetwork.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/TCP/Server/TCPServerNetworkChannel.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/WebSocket/Client/WebSocketClientNetwork.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/WebSocket/Client/WebSocketClientNetworkWebgl.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/WebSocket/Server/WebSocketServerNetwork.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Protocol/WebSocket/Server/WebSocketServerNetworkChannel.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Route/RouteComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Session/Component/ConsoleSessionHeartbeatComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Session/Component/SessionIdleCheckerComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Session/Component/UnitySessionHeartbeatComponent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Session/ProcessSession/ProcessScheduler.cs (99%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Session/ProcessSession/ProcessSession.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Session/ProcessSession/ProcessSessionInfo.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Network/Session/Session.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Console/Entry.cs (98%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Console/ThreadSynchronizationContext.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Net/ConfigTable/MachineConfig.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Net/ConfigTable/ProcessConfig.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Net/ConfigTable/SceneConfig.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Net/ConfigTable/WorldConfig.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Net/Entry.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Net/Process.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Net/ProcessDefine.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Net/ThreadSynchronizationContext.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Unity/AppDefine.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Unity/Attributes/BsonDefaultValueAttribute.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Unity/Attributes/BsonElementAttribute.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Unity/Attributes/BsonIdAttribute.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreAttribute.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreIfDefaultAttribute.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreIfNullAttribute.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Unity/Entry.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Unity/Temp.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Platform/Unity/ThreadSynchronizationContext.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Pool/Concurrent/MultiThreadPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Pool/Concurrent/MultiThreadPoolQueue.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Pool/Interface/IPool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Pool/Normal/Pool.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Pool/Normal/PoolCore.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Pool/Normal/PoolWithDisposable.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Pool/PoolHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Scene/ISceneUpdate.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Scene/OnCreateSceneEvent.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Scene/Scene.cs (98%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Scene/Scheduler/ISceneScheduler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Scene/Scheduler/MainScheduler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Scene/Scheduler/MultiThreadScheduler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Scene/Scheduler/ThreadPoolScheduler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Scene/Scheduler/ThreadScheduler.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Serialize/BsonPack/BsonPackHelper.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Serialize/BsonPack/StructBsonSerialize.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Serialize/BsonPack/SupportInitializeChecker.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Serialize/Interface/ASerialize.cs (94%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Serialize/Interface/ISerialize.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Serialize/MemoryStreamBuffer.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Serialize/ProtoBufPackHelper/IProto.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Serialize/ProtoBufPackHelper/ProtoBufPackHelperNet.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Serialize/ProtoBufPackHelper/ProtoBufPackHelperUnity.cs (100%) rename Fantays.Console/{Fantasy.Console => }/Runtime/Core/Serialize/SerializerManager.cs (99%) mode change 100755 => 100644 Tools/Exporter/NetworkProtocol/ExporterSettings.json mode change 100755 => 100644 Tools/Exporter/NetworkProtocol/Fantasy.Tools.NetworkProtocol.dll mode change 100755 => 100644 Tools/Exporter/NetworkProtocol/Fantasy.Tools.NetworkProtocol.pdb mode change 100755 => 100644 Tools/Exporter/NetworkProtocol/Run.bat mode change 100755 => 100644 Tools/Exporter/NetworkProtocol/Run.sh create mode 100644 examples/Console/Fantasy.Console.sln.DotSettings.user delete mode 100644 examples/Server/Fantasy.Generator/Class1.cs delete mode 100644 examples/Server/Fantasy.Generator/Fantasy.Generator.csproj diff --git a/Fanatsy.sln b/Fanatsy.sln index a2d648e5..d8ecc28e 100644 --- a/Fanatsy.sln +++ b/Fanatsy.sln @@ -14,7 +14,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Fantasy.Tools.ExporterNetwo EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Fantasy.Net", "Fantasy.Net\Fantasy.Net\Fantasy.Net.csproj", "{4782A7D1-2B43-48DD-AF50-EDC773436E20}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Fantasy.Console", "Fantays.Console\Fantasy.Console\Fantasy.Console.csproj", "{4E463740-00D2-4B4F-AC5B-A09B24487D35}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Fantasy.Console", "Fantays.Console\Fantasy.Console.csproj", "{4E463740-00D2-4B4F-AC5B-A09B24487D35}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tools", "Tools", "{0CEB6A4D-8CE9-4EA7-A918-61FA62D6F6F0}" EndProject @@ -22,6 +22,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Fantasy.Tools.ConfigTable", EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Fantasy.Tools.NetworkProtocol", "Tools\SourceCode\Fantasy.Tools.NetworkProtocol\Fantasy.Tools.NetworkProtocol.csproj", "{1951BC8A-0B3E-42F8-950B-DC142988B225}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Fantasy.Benchmark", "Fantasy.Benchmark\Fantasy.Benchmark.csproj", "{C228C5CC-81B9-4323-B4BD-F3C1FB129676}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -73,5 +75,9 @@ Global {1951BC8A-0B3E-42F8-950B-DC142988B225}.Debug|Any CPU.Build.0 = Debug|Any CPU {1951BC8A-0B3E-42F8-950B-DC142988B225}.Release|Any CPU.ActiveCfg = Release|Any CPU {1951BC8A-0B3E-42F8-950B-DC142988B225}.Release|Any CPU.Build.0 = Release|Any CPU + {C228C5CC-81B9-4323-B4BD-F3C1FB129676}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C228C5CC-81B9-4323-B4BD-F3C1FB129676}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C228C5CC-81B9-4323-B4BD-F3C1FB129676}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C228C5CC-81B9-4323-B4BD-F3C1FB129676}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection EndGlobal diff --git a/Fanatsy.sln.DotSettings.user b/Fanatsy.sln.DotSettings.user new file mode 100644 index 00000000..ab7f6a0c --- /dev/null +++ b/Fanatsy.sln.DotSettings.user @@ -0,0 +1,2 @@ + + ForceIncluded \ No newline at end of file diff --git a/Fantasy.Benchmark/ConsoleLog.cs b/Fantasy.Benchmark/ConsoleLog.cs new file mode 100644 index 00000000..4fa540fb --- /dev/null +++ b/Fantasy.Benchmark/ConsoleLog.cs @@ -0,0 +1,138 @@ + +#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member + +namespace Fantasy +{ + /// + /// 标准的控制台Log + /// + public sealed class ConsoleLog : ILog + { + + /// + /// 记录跟踪级别的日志消息。 + /// + /// 日志消息。 + public void Trace(string message) + { + System.Console.ForegroundColor = ConsoleColor.White; + System.Console.WriteLine(message); + } + + /// + /// 记录警告级别的日志消息。 + /// + /// 日志消息。 + public void Warning(string message) + { + System.Console.ForegroundColor = ConsoleColor.Yellow; + System.Console.WriteLine(message); + } + + /// + /// 记录信息级别的日志消息。 + /// + /// 日志消息。 + public void Info(string message) + { + System.Console.ForegroundColor = ConsoleColor.Gray; + System.Console.WriteLine(message); + } + + /// + /// 记录调试级别的日志消息。 + /// + /// 日志消息。 + public void Debug(string message) + { + System.Console.ForegroundColor = ConsoleColor.DarkGreen; + System.Console.WriteLine(message); + } + + /// + /// 记录错误级别的日志消息。 + /// + /// 日志消息。 + public void Error(string message) + { + System.Console.ForegroundColor = ConsoleColor.DarkRed; + System.Console.WriteLine(message); + } + + /// + /// 记录严重错误级别的日志消息。 + /// + /// 日志消息。 + public void Fatal(string message) + { + System.Console.ForegroundColor = ConsoleColor.Red; + System.Console.WriteLine(message); + } + + /// + /// 记录跟踪级别的格式化日志消息。 + /// + /// 日志消息模板。 + /// 格式化参数。 + public void Trace(string message, params object[] args) + { + System.Console.ForegroundColor = ConsoleColor.White; + System.Console.WriteLine(message, args); + } + + /// + /// 记录警告级别的格式化日志消息。 + /// + /// 日志消息模板。 + /// 格式化参数。 + public void Warning(string message, params object[] args) + { + System.Console.ForegroundColor = ConsoleColor.Yellow; + System.Console.WriteLine(message, args); + } + + /// + /// 记录信息级别的格式化日志消息。 + /// + /// 日志消息模板。 + /// 格式化参数。 + public void Info(string message, params object[] args) + { + System.Console.ForegroundColor = ConsoleColor.Gray; + System.Console.WriteLine(message, args); + } + + /// + /// 记录调试级别的格式化日志消息。 + /// + /// 日志消息模板。 + /// 格式化参数。 + public void Debug(string message, params object[] args) + { + System.Console.ForegroundColor = ConsoleColor.DarkGreen; + System.Console.WriteLine(message, args); + } + + /// + /// 记录错误级别的格式化日志消息。 + /// + /// 日志消息模板。 + /// 格式化参数。 + public void Error(string message, params object[] args) + { + System.Console.ForegroundColor = ConsoleColor.DarkRed; + System.Console.WriteLine(message, args); + } + + /// + /// 记录严重错误级别的格式化日志消息。 + /// + /// 日志消息模板。 + /// 格式化参数。 + public void Fatal(string message, params object[] args) + { + System.Console.ForegroundColor = ConsoleColor.Red; + System.Console.WriteLine(message, args); + } + } +} \ No newline at end of file diff --git a/Fantasy.Benchmark/Fantasy.Benchmark.csproj b/Fantasy.Benchmark/Fantasy.Benchmark.csproj new file mode 100644 index 00000000..61e1f056 --- /dev/null +++ b/Fantasy.Benchmark/Fantasy.Benchmark.csproj @@ -0,0 +1,32 @@ + + + + Exe + net8.0 + enable + enable + + + + TRACE;FANTASY_CONSOLE + true + + + + TRACE;FANTASY_CONSOLE + true + + + + + + + + + + + + + + + diff --git a/Fantasy.Benchmark/NetworkBenchmark.cs b/Fantasy.Benchmark/NetworkBenchmark.cs new file mode 100644 index 00000000..0a6953c9 --- /dev/null +++ b/Fantasy.Benchmark/NetworkBenchmark.cs @@ -0,0 +1,45 @@ +using BenchmarkDotNet.Attributes; +using BenchmarkDotNet.Jobs; +using BenchmarkDotNet.Running; +using Fantasy.Async; +using Fantasy.InnerMessage; +using Fantasy.Network; +using Fantasy.Platform.Console; + +#pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable. + +namespace Fantasy.Benchmark; +[SimpleJob(RuntimeMoniker.Net80, baseline: true)] +public class NetworkBenchmark +{ + private static Scene _scene; + private static Session _session; + private readonly BenchmarkRequest _benchmarkRequest = new BenchmarkRequest(); + + public static async FTask Initialize() + { + // 注册日志实例到框架中 + Log.Register(new ConsoleLog()); + // 初始化框架 + Entry.Initialize(); + // 执行StartUpdate方法 + Entry.StartUpdate(); + _scene = await Entry.CreateScene(); + // 创建远程连接 + _session = _scene.Connect("127.0.0.1:20000", NetworkProtocolType.KCP, + () => + { + Log.Debug("连接到目标服务器成功"); + var summary = BenchmarkRunner.Run(); + Console.WriteLine(summary); + }, + () => { Log.Debug("无法连接到目标服务器"); }, + () => { Log.Debug("与服务器断开连接"); }, false); + } + + [Benchmark] + public async FTask Call() + { + await _session.Call(_benchmarkRequest); + } +} \ No newline at end of file diff --git a/Fantasy.Benchmark/Program.cs b/Fantasy.Benchmark/Program.cs new file mode 100644 index 00000000..30d8cf37 --- /dev/null +++ b/Fantasy.Benchmark/Program.cs @@ -0,0 +1,2 @@ +Fantasy.Benchmark.NetworkBenchmark.Initialize().Coroutine(); +Console.ReadKey(); \ No newline at end of file diff --git a/Fantasy.Benchmark/README.md b/Fantasy.Benchmark/README.md new file mode 100644 index 00000000..8315cc44 --- /dev/null +++ b/Fantasy.Benchmark/README.md @@ -0,0 +1,6 @@ +# Fantasy.Benchmark +使用 Fantasy.Benchmark 工具,我们能够快速评估框架网络的处理性能。目前,该工具提供的基准测试主要集中在 RPC(远程过程调用)消息 方面。这一项测试能够有效测量系统在处理远程调用时的响应时间、吞吐量和资源利用率,帮助开发者优化网络通信性能,确保在高负载情况下系统依然能够稳定运行 +## 操作步骤 +- 1.打开位于 Examples/Server/Server.sln 的解决方案文件。 +- 2.在解决方案中选择并启动 Main 项目。 +- 3.接着,启动 Fantasy.Benchmark 应用程序,并耐心等待其测试结果的生成。 diff --git a/Fantasy.Net/Fantasy.Net/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs b/Fantasy.Net/Fantasy.Net/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs new file mode 100644 index 00000000..85325479 --- /dev/null +++ b/Fantasy.Net/Fantasy.Net/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs @@ -0,0 +1,25 @@ +using Fantasy.Async; +using Fantasy.InnerMessage; +using Fantasy.Network.Interface; + +#if FANTASY_NET +namespace Fantasy.Network.Benchmark.Handler; + +/// +/// BenchmarkRequestHandler +/// +public sealed class BenchmarkRequestHandler : MessageRPC +{ + /// + /// Run方法 + /// + /// + /// + /// + /// + protected override async FTask Run(Session session, BenchmarkRequest request, BenchmarkResponse response, Action reply) + { + await FTask.CompletedTask; + } +} +#endif diff --git a/Fantasy.Net/Fantasy.Net/Runtime/Core/Network/Message/InnerMessage.cs b/Fantasy.Net/Fantasy.Net/Runtime/Core/Network/Message/InnerMessage.cs index d30a2755..8910a34e 100644 --- a/Fantasy.Net/Fantasy.Net/Runtime/Core/Network/Message/InnerMessage.cs +++ b/Fantasy.Net/Fantasy.Net/Runtime/Core/Network/Message/InnerMessage.cs @@ -10,6 +10,38 @@ namespace Fantasy.InnerMessage { [ProtoContract] + public sealed partial class BenchmarkMessage : AMessage, IMessage + { + public uint OpCode() + { + return Fantasy.Network.OpCode.BenchmarkMessage; + } + } + [ProtoContract] + public partial class BenchmarkRequest : AMessage, IRequest + { + public uint OpCode() + { + return Fantasy.Network.OpCode.BenchmarkRequest; + } + [ProtoIgnore] + public BenchmarkResponse ResponseType { get; set; } + [ProtoMember(1)] + public long RpcId { get; set; } + } + + [ProtoContract] + public partial class BenchmarkResponse : AMessage, IResponse + { + public uint OpCode() + { + return Fantasy.Network.OpCode.BenchmarkResponse; + } + [ProtoMember(1)] + public long RpcId { get; set; } + [ProtoMember(2)] + public uint ErrorCode { get; set; } + } public sealed partial class Response : AMessage, IResponse { public uint OpCode() diff --git a/Fantasy.Net/Fantasy.Net/Runtime/Core/Network/Message/PacketParser/OpCode.cs b/Fantasy.Net/Fantasy.Net/Runtime/Core/Network/Message/PacketParser/OpCode.cs index ee1510d7..d02105d9 100644 --- a/Fantasy.Net/Fantasy.Net/Runtime/Core/Network/Message/PacketParser/OpCode.cs +++ b/Fantasy.Net/Fantasy.Net/Runtime/Core/Network/Message/PacketParser/OpCode.cs @@ -78,6 +78,9 @@ public static class OpCodeType public static class OpCode { + public static readonly uint BenchmarkMessage = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterMessage, 8388607); + public static readonly uint BenchmarkRequest = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterRequest, 8388607); + public static readonly uint BenchmarkResponse = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterResponse, 8388607); public static readonly uint PingRequest = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterPingRequest, 1); public static readonly uint PingResponse = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterPingResponse, 1); public static readonly uint DefaultResponse = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.InnerResponse, 1); diff --git a/Fantasy.Net/Fantasy.Net/Runtime/Core/Platform/Console/Entry.cs b/Fantasy.Net/Fantasy.Net/Runtime/Core/Platform/Console/Entry.cs index e49e5ed4..3f461326 100644 --- a/Fantasy.Net/Fantasy.Net/Runtime/Core/Platform/Console/Entry.cs +++ b/Fantasy.Net/Fantasy.Net/Runtime/Core/Platform/Console/Entry.cs @@ -55,6 +55,7 @@ public static void StartUpdate() while (_isInit) { ThreadScheduler.Update(); + Thread.Sleep(1); } }) { diff --git a/Fantasy.Net/Fantasy.Net/Runtime/Core/Serialize/Interface/ASerialize.cs b/Fantasy.Net/Fantasy.Net/Runtime/Core/Serialize/Interface/ASerialize.cs index 23d0345b..7487b86d 100644 --- a/Fantasy.Net/Fantasy.Net/Runtime/Core/Serialize/Interface/ASerialize.cs +++ b/Fantasy.Net/Fantasy.Net/Runtime/Core/Serialize/Interface/ASerialize.cs @@ -2,13 +2,12 @@ using System.ComponentModel; using System.Runtime.Serialization; using Fantasy.Pool; -#if FANTASY_NET +#if FANTASY_NET || FANTASY_UNITY || FANTASY_CONSOLE using MongoDB.Bson.Serialization.Attributes; #endif using Newtonsoft.Json; using ProtoBuf; #pragma warning disable CS1591 // Missing XML comment for publicly visible type or member - #pragma warning disable CS8625 // Cannot convert null literal to non-nullable reference type. #pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable. diff --git a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark.meta b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark.meta new file mode 100644 index 00000000..cfe3201a --- /dev/null +++ b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 160974fcbccd74d0eafedf8762807588 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark/Handler.meta b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark/Handler.meta new file mode 100644 index 00000000..cfda7e8e --- /dev/null +++ b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark/Handler.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 91eb4278fcdd44b6d8a782ca42107e4c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs new file mode 100644 index 00000000..85325479 --- /dev/null +++ b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs @@ -0,0 +1,25 @@ +using Fantasy.Async; +using Fantasy.InnerMessage; +using Fantasy.Network.Interface; + +#if FANTASY_NET +namespace Fantasy.Network.Benchmark.Handler; + +/// +/// BenchmarkRequestHandler +/// +public sealed class BenchmarkRequestHandler : MessageRPC +{ + /// + /// Run方法 + /// + /// + /// + /// + /// + protected override async FTask Run(Session session, BenchmarkRequest request, BenchmarkResponse response, Action reply) + { + await FTask.CompletedTask; + } +} +#endif diff --git a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs.meta b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs.meta new file mode 100644 index 00000000..e0451e32 --- /dev/null +++ b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0b5a936197cf64719b8d6b44158e0d91 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Network/Message/InnerMessage.cs b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Network/Message/InnerMessage.cs index d30a2755..8910a34e 100644 --- a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Network/Message/InnerMessage.cs +++ b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Network/Message/InnerMessage.cs @@ -10,6 +10,38 @@ namespace Fantasy.InnerMessage { [ProtoContract] + public sealed partial class BenchmarkMessage : AMessage, IMessage + { + public uint OpCode() + { + return Fantasy.Network.OpCode.BenchmarkMessage; + } + } + [ProtoContract] + public partial class BenchmarkRequest : AMessage, IRequest + { + public uint OpCode() + { + return Fantasy.Network.OpCode.BenchmarkRequest; + } + [ProtoIgnore] + public BenchmarkResponse ResponseType { get; set; } + [ProtoMember(1)] + public long RpcId { get; set; } + } + + [ProtoContract] + public partial class BenchmarkResponse : AMessage, IResponse + { + public uint OpCode() + { + return Fantasy.Network.OpCode.BenchmarkResponse; + } + [ProtoMember(1)] + public long RpcId { get; set; } + [ProtoMember(2)] + public uint ErrorCode { get; set; } + } public sealed partial class Response : AMessage, IResponse { public uint OpCode() diff --git a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Network/Message/PacketParser/OpCode.cs b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Network/Message/PacketParser/OpCode.cs index ee1510d7..d02105d9 100644 --- a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Network/Message/PacketParser/OpCode.cs +++ b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Network/Message/PacketParser/OpCode.cs @@ -78,6 +78,9 @@ public static class OpCodeType public static class OpCode { + public static readonly uint BenchmarkMessage = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterMessage, 8388607); + public static readonly uint BenchmarkRequest = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterRequest, 8388607); + public static readonly uint BenchmarkResponse = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterResponse, 8388607); public static readonly uint PingRequest = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterPingRequest, 1); public static readonly uint PingResponse = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterPingResponse, 1); public static readonly uint DefaultResponse = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.InnerResponse, 1); diff --git a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Network/Session/ProcessSession/ProcessScheduler.cs b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Network/Session/ProcessSession/ProcessScheduler.cs index 6fc101df..d6a8caa4 100644 --- a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Network/Session/ProcessSession/ProcessScheduler.cs +++ b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Network/Session/ProcessSession/ProcessScheduler.cs @@ -202,7 +202,6 @@ public static void Scheduler(this ProcessSession session, Type messageType, uint if (entity == null || entity.IsDisposed) { sceneMessageDispatcherComponent.FailRouteResponse(session, message.GetType(), InnerErrorCode.ErrNotFoundRoute, rpcId); - return; } diff --git a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Platform/Console/Entry.cs b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Platform/Console/Entry.cs index e49e5ed4..3f461326 100644 --- a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Platform/Console/Entry.cs +++ b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Platform/Console/Entry.cs @@ -55,6 +55,7 @@ public static void StartUpdate() while (_isInit) { ThreadScheduler.Update(); + Thread.Sleep(1); } }) { diff --git a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Scene/Scene.cs b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Scene/Scene.cs index f91696d5..803c1a80 100644 --- a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Scene/Scene.cs +++ b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Scene/Scene.cs @@ -502,13 +502,13 @@ public Session GetSession(long runTimeId) _processSessionInfos.Remove(sceneId); } - // if (Process.IsInAppliaction(ref sceneId)) - // { - // // 如果在同一个Process下,不需要通过Socket发送了,直接通过Process下转发。 - // var processSession = Session.CreateInnerSession(Scene); - // _processSessionInfos.Add(sceneId, new ProcessSessionInfo(processSession, null)); - // return processSession; - // } + if (Process.IsInAppliaction(ref sceneId)) + { + // 如果在同一个Process下,不需要通过Socket发送了,直接通过Process下转发。 + var processSession = Session.CreateInnerSession(Scene); + _processSessionInfos.Add(sceneId, new ProcessSessionInfo(processSession, null)); + return processSession; + } if (!SceneConfigData.Instance.TryGet(sceneId, out var sceneConfig)) { diff --git a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Serialize/Interface/ASerialize.cs b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Serialize/Interface/ASerialize.cs index 55c3e540..fbda1d4a 100644 --- a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Serialize/Interface/ASerialize.cs +++ b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Serialize/Interface/ASerialize.cs @@ -2,7 +2,9 @@ using System.ComponentModel; using System.Runtime.Serialization; using Fantasy.Pool; +#if FANTASY_NET || FANTASY_UNITY || FANTASY_CONSOLE using MongoDB.Bson.Serialization.Attributes; +#endif using Newtonsoft.Json; using ProtoBuf; #pragma warning disable CS1591 // Missing XML comment for publicly visible type or member @@ -38,7 +40,9 @@ public void SetScene(Scene scene) _scene = scene; } #endif +#if FANTASY_NET [BsonIgnore] +#endif [JsonIgnore] [IgnoreDataMember] [ProtoIgnore] diff --git a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Serialize/SerializerManager.cs b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Serialize/SerializerManager.cs index 56d01243..8c7a0b30 100644 --- a/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Serialize/SerializerManager.cs +++ b/Fantasy.Unity/Fantasy.Unity/Runtime/Core/Serialize/SerializerManager.cs @@ -2,7 +2,9 @@ using System.Collections.Generic; using Fantasy.Assembly; using Fantasy.Helper; +#if !FANTASY_EXPORTER using Fantasy.Network; +#endif using ProtoBuf; #pragma warning disable CS8604 // Possible null reference argument. #pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable. diff --git a/Fantays.Console/Fantasy.Console/Fantasy.Console.csproj b/Fantays.Console/Fantasy.Console.csproj similarity index 86% rename from Fantays.Console/Fantasy.Console/Fantasy.Console.csproj rename to Fantays.Console/Fantasy.Console.csproj index 3a92ff0d..9a5f8b71 100644 --- a/Fantays.Console/Fantasy.Console/Fantasy.Console.csproj +++ b/Fantays.Console/Fantasy.Console.csproj @@ -7,13 +7,13 @@ - TRACE;FANTASY_CONSOLE;FANTASY_KCPUNSAFE; + TRACE;FANTASY_CONSOLE true true - TRACE;FANTASY_CONSOLE;FANTASY_KCPUNSAFE + TRACE;FANTASY_CONSOLE true diff --git a/Fantays.Console/Fantasy.Console.sln b/Fantays.Console/Fantasy.Console.sln deleted file mode 100644 index b51ba545..00000000 --- a/Fantays.Console/Fantasy.Console.sln +++ /dev/null @@ -1,16 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Fantasy.Console", "Fantasy.Console\Fantasy.Console.csproj", "{B08C2D16-82FF-46C7-9724-3BBE6F745132}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {B08C2D16-82FF-46C7-9724-3BBE6F745132}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {B08C2D16-82FF-46C7-9724-3BBE6F745132}.Debug|Any CPU.Build.0 = Debug|Any CPU - {B08C2D16-82FF-46C7-9724-3BBE6F745132}.Release|Any CPU.ActiveCfg = Release|Any CPU - {B08C2D16-82FF-46C7-9724-3BBE6F745132}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection -EndGlobal diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Assembly/AssemblyInfo.cs b/Fantays.Console/Runtime/Core/Assembly/AssemblyInfo.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Assembly/AssemblyInfo.cs rename to Fantays.Console/Runtime/Core/Assembly/AssemblyInfo.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Assembly/AssemblySystem.cs b/Fantays.Console/Runtime/Core/Assembly/AssemblySystem.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Assembly/AssemblySystem.cs rename to Fantays.Console/Runtime/Core/Assembly/AssemblySystem.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Assembly/IAssembly.cs b/Fantays.Console/Runtime/Core/Assembly/IAssembly.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Assembly/IAssembly.cs rename to Fantays.Console/Runtime/Core/Assembly/IAssembly.cs diff --git a/Fantays.Console/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs b/Fantays.Console/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs new file mode 100644 index 00000000..85325479 --- /dev/null +++ b/Fantays.Console/Runtime/Core/Benchmark/Handler/BenchmarkRequestHandler.cs @@ -0,0 +1,25 @@ +using Fantasy.Async; +using Fantasy.InnerMessage; +using Fantasy.Network.Interface; + +#if FANTASY_NET +namespace Fantasy.Network.Benchmark.Handler; + +/// +/// BenchmarkRequestHandler +/// +public sealed class BenchmarkRequestHandler : MessageRPC +{ + /// + /// Run方法 + /// + /// + /// + /// + /// + protected override async FTask Run(Session session, BenchmarkRequest request, BenchmarkResponse response, Action reply) + { + await FTask.CompletedTask; + } +} +#endif diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataBase/IDateBase.cs b/Fantays.Console/Runtime/Core/DataBase/IDateBase.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataBase/IDateBase.cs rename to Fantays.Console/Runtime/Core/DataBase/IDateBase.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataBase/MongoDataBase.cs b/Fantays.Console/Runtime/Core/DataBase/MongoDataBase.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataBase/MongoDataBase.cs rename to Fantays.Console/Runtime/Core/DataBase/MongoDataBase.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataBase/World.cs b/Fantays.Console/Runtime/Core/DataBase/World.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataBase/World.cs rename to Fantays.Console/Runtime/Core/DataBase/World.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/CircularBuffer.cs b/Fantays.Console/Runtime/Core/DataStructure/Collection/CircularBuffer.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/CircularBuffer.cs rename to Fantays.Console/Runtime/Core/DataStructure/Collection/CircularBuffer.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/ConcurrentOneToManyListPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Collection/ConcurrentOneToManyListPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/ConcurrentOneToManyListPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Collection/ConcurrentOneToManyListPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/ConcurrentOneToManyQueuePool.cs b/Fantays.Console/Runtime/Core/DataStructure/Collection/ConcurrentOneToManyQueuePool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/ConcurrentOneToManyQueuePool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Collection/ConcurrentOneToManyQueuePool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/HashSetPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Collection/HashSetPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/HashSetPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Collection/HashSetPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/ListPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Collection/ListPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/ListPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Collection/ListPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/OneToManyHashSetPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Collection/OneToManyHashSetPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/OneToManyHashSetPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Collection/OneToManyHashSetPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/OneToManyListPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Collection/OneToManyListPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/OneToManyListPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Collection/OneToManyListPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/OneToManyQueuePool.cs b/Fantays.Console/Runtime/Core/DataStructure/Collection/OneToManyQueuePool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/OneToManyQueuePool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Collection/OneToManyQueuePool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/ReuseList.cs b/Fantays.Console/Runtime/Core/DataStructure/Collection/ReuseList.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/ReuseList.cs rename to Fantays.Console/Runtime/Core/DataStructure/Collection/ReuseList.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/SortedConcurrentOneToManyListPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Collection/SortedConcurrentOneToManyListPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/SortedConcurrentOneToManyListPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Collection/SortedConcurrentOneToManyListPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/SortedOneToManyHashSetPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Collection/SortedOneToManyHashSetPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/SortedOneToManyHashSetPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Collection/SortedOneToManyHashSetPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/SortedOneToManyListPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Collection/SortedOneToManyListPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Collection/SortedOneToManyListPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Collection/SortedOneToManyListPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/DictionaryExtensions.cs b/Fantays.Console/Runtime/Core/DataStructure/Dictionary/DictionaryExtensions.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/DictionaryExtensions.cs rename to Fantays.Console/Runtime/Core/DataStructure/Dictionary/DictionaryExtensions.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/DictionaryPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Dictionary/DictionaryPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/DictionaryPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Dictionary/DictionaryPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/DoubleMapDictionaryPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Dictionary/DoubleMapDictionaryPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/DoubleMapDictionaryPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Dictionary/DoubleMapDictionaryPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/EntityDictionary.cs b/Fantays.Console/Runtime/Core/DataStructure/Dictionary/EntityDictionary.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/EntityDictionary.cs rename to Fantays.Console/Runtime/Core/DataStructure/Dictionary/EntityDictionary.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/OneToManyDictionaryPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Dictionary/OneToManyDictionaryPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/OneToManyDictionaryPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Dictionary/OneToManyDictionaryPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/OneToManySortedDictionaryPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Dictionary/OneToManySortedDictionaryPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/OneToManySortedDictionaryPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Dictionary/OneToManySortedDictionaryPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/ReuseDictionary.cs b/Fantays.Console/Runtime/Core/DataStructure/Dictionary/ReuseDictionary.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/ReuseDictionary.cs rename to Fantays.Console/Runtime/Core/DataStructure/Dictionary/ReuseDictionary.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/SortedDictionaryPool.cs b/Fantays.Console/Runtime/Core/DataStructure/Dictionary/SortedDictionaryPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/Dictionary/SortedDictionaryPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/Dictionary/SortedDictionaryPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/LICENSE b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/LICENSE similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/LICENSE rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/LICENSE diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/BitOperationsHelpers.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/BitOperationsHelpers.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/BitOperationsHelpers.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/BitOperationsHelpers.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/HashHelpers.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/HashHelpers.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/HashHelpers.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/HashHelpers.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArray.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArray.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArray.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArray.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArrayPool.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArrayPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArrayPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArrayPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArrayReference.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArrayReference.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArrayReference.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArrayReference.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArraySegment.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArraySegment.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArraySegment.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeArraySegment.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeBitArray.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeBitArray.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeBitArray.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeBitArray.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeBuddyMemoryPool.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeBuddyMemoryPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeBuddyMemoryPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeBuddyMemoryPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentDictionary.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentDictionary.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentDictionary.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentDictionary.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentHashSet.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentHashSet.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentHashSet.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentHashSet.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentQueue.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentQueue.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentQueue.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentQueue.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentSpinLock.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentSpinLock.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentSpinLock.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentSpinLock.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentStack.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentStack.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentStack.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeConcurrentStack.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeDictionary.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeDictionary.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeDictionary.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeDictionary.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeHashSet.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeHashSet.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeHashSet.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeHashSet.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeList.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeList.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeList.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeList.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryAllocator.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryAllocator.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryAllocator.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryAllocator.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryArray.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryArray.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryArray.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryArray.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryBucket.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryBucket.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryBucket.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryBucket.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryPool.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryPool.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryReader.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryReader.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryReader.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryReader.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryReaderExtensions.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryReaderExtensions.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryReaderExtensions.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryReaderExtensions.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryStream.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryStream.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryStream.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryStream.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryWriter.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryWriter.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryWriter.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMemoryWriter.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMonitorLock.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMonitorLock.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMonitorLock.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeMonitorLock.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativePriorityQueue.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativePriorityQueue.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativePriorityQueue.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativePriorityQueue.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeQueue.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeQueue.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeQueue.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeQueue.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeReference.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeReference.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeReference.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeReference.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedDictionary.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedDictionary.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedDictionary.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedDictionary.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedList.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedList.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedList.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedList.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedSet.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedSet.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedSet.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeSortedSet.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeStack.cs b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeStack.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeStack.cs rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/NativeCollections/NativeStack.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/README.md b/Fantays.Console/Runtime/Core/DataStructure/NativeCollections/README.md similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/NativeCollections/README.md rename to Fantays.Console/Runtime/Core/DataStructure/NativeCollections/README.md diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueGenerics.cs b/Fantays.Console/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueGenerics.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueGenerics.cs rename to Fantays.Console/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueGenerics.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueItem.cs b/Fantays.Console/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueItem.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueItem.cs rename to Fantays.Console/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueItem.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueSimple.cs b/Fantays.Console/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueSimple.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueSimple.cs rename to Fantays.Console/Runtime/Core/DataStructure/PriorityQueue/PriorityQueueSimple.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/SkipTable/SkipTable.cs b/Fantays.Console/Runtime/Core/DataStructure/SkipTable/SkipTable.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/SkipTable/SkipTable.cs rename to Fantays.Console/Runtime/Core/DataStructure/SkipTable/SkipTable.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/SkipTable/SkipTableBase.cs b/Fantays.Console/Runtime/Core/DataStructure/SkipTable/SkipTableBase.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/SkipTable/SkipTableBase.cs rename to Fantays.Console/Runtime/Core/DataStructure/SkipTable/SkipTableBase.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/SkipTable/SkipTableDesc.cs b/Fantays.Console/Runtime/Core/DataStructure/SkipTable/SkipTableDesc.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/SkipTable/SkipTableDesc.cs rename to Fantays.Console/Runtime/Core/DataStructure/SkipTable/SkipTableDesc.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/SkipTable/SkipTableNode.cs b/Fantays.Console/Runtime/Core/DataStructure/SkipTable/SkipTableNode.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/DataStructure/SkipTable/SkipTableNode.cs rename to Fantays.Console/Runtime/Core/DataStructure/SkipTable/SkipTableNode.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLock.cs b/Fantays.Console/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLock.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLock.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLock.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLockComponent.cs b/Fantays.Console/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLockComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLockComponent.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLockComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLockQueue.cs b/Fantays.Console/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLockQueue.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLockQueue.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/CoroutineLock/CoroutineLockQueue.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/CoroutineLock/WaitCoroutineLock.cs b/Fantays.Console/Runtime/Core/Entitas/Component/CoroutineLock/WaitCoroutineLock.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/CoroutineLock/WaitCoroutineLock.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/CoroutineLock/WaitCoroutineLock.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/EntityComponent.cs b/Fantays.Console/Runtime/Core/Entitas/Component/EntityComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/EntityComponent.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/EntityComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/EventComponent/EventComponent.cs b/Fantays.Console/Runtime/Core/Entitas/Component/EventComponent/EventComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/EventComponent/EventComponent.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/EventComponent/EventComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/EventComponent/Interface/IEvent.cs b/Fantays.Console/Runtime/Core/Entitas/Component/EventComponent/Interface/IEvent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/EventComponent/Interface/IEvent.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/EventComponent/Interface/IEvent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/MessagePoolComponent.cs b/Fantays.Console/Runtime/Core/Entitas/Component/MessagePoolComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/MessagePoolComponent.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/MessagePoolComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/SingleCollectionComponent/SingleCollectionComponent.cs b/Fantays.Console/Runtime/Core/Entitas/Component/SingleCollectionComponent/SingleCollectionComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/SingleCollectionComponent/SingleCollectionComponent.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/SingleCollectionComponent/SingleCollectionComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/Interface/TimerHandler.cs b/Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/Interface/TimerHandler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/Interface/TimerHandler.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/Interface/TimerHandler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimeWheel/ScheduledTask.cs b/Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimeWheel/ScheduledTask.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimeWheel/ScheduledTask.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimeWheel/ScheduledTask.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimeWheel/TimeWheel.cs b/Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimeWheel/TimeWheel.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimeWheel/TimeWheel.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimeWheel/TimeWheel.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerAction.cs b/Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerAction.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerAction.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerAction.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerComponent.cs b/Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerComponent.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerScheduler/TimerSchedulerNet.cs b/Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerScheduler/TimerSchedulerNet.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerScheduler/TimerSchedulerNet.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerScheduler/TimerSchedulerNet.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerScheduler/TimerSchedulerNetUnity.cs b/Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerScheduler/TimerSchedulerNetUnity.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerScheduler/TimerSchedulerNetUnity.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerScheduler/TimerSchedulerNetUnity.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerType.cs b/Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerType.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerType.cs rename to Fantays.Console/Runtime/Core/Entitas/Component/TimerComponent/TimerType.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Entity.cs b/Fantays.Console/Runtime/Core/Entitas/Entity.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Entity.cs rename to Fantays.Console/Runtime/Core/Entitas/Entity.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/EntityPool.cs b/Fantays.Console/Runtime/Core/Entitas/EntityPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/EntityPool.cs rename to Fantays.Console/Runtime/Core/Entitas/EntityPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/EntityReference.cs b/Fantays.Console/Runtime/Core/Entitas/EntityReference.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/EntityReference.cs rename to Fantays.Console/Runtime/Core/Entitas/EntityReference.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/Supported/ISingleCollectionRoot.cs b/Fantays.Console/Runtime/Core/Entitas/Interface/Supported/ISingleCollectionRoot.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/Supported/ISingleCollectionRoot.cs rename to Fantays.Console/Runtime/Core/Entitas/Interface/Supported/ISingleCollectionRoot.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedDataBase.cs b/Fantays.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedDataBase.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedDataBase.cs rename to Fantays.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedDataBase.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedMultiEntity.cs b/Fantays.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedMultiEntity.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedMultiEntity.cs rename to Fantays.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedMultiEntity.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedSingleCollection.cs b/Fantays.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedSingleCollection.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedSingleCollection.cs rename to Fantays.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedSingleCollection.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedTransfer.cs b/Fantays.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedTransfer.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedTransfer.cs rename to Fantays.Console/Runtime/Core/Entitas/Interface/Supported/ISupportedTransfer.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/System/IAwakeSystem.cs b/Fantays.Console/Runtime/Core/Entitas/Interface/System/IAwakeSystem.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/System/IAwakeSystem.cs rename to Fantays.Console/Runtime/Core/Entitas/Interface/System/IAwakeSystem.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/System/IDeserializeSystem.cs b/Fantays.Console/Runtime/Core/Entitas/Interface/System/IDeserializeSystem.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/System/IDeserializeSystem.cs rename to Fantays.Console/Runtime/Core/Entitas/Interface/System/IDeserializeSystem.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/System/IDestroySystem.cs b/Fantays.Console/Runtime/Core/Entitas/Interface/System/IDestroySystem.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/System/IDestroySystem.cs rename to Fantays.Console/Runtime/Core/Entitas/Interface/System/IDestroySystem.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/System/IEntitiesSystem.cs b/Fantays.Console/Runtime/Core/Entitas/Interface/System/IEntitiesSystem.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/System/IEntitiesSystem.cs rename to Fantays.Console/Runtime/Core/Entitas/Interface/System/IEntitiesSystem.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/System/IFrameUpdateSystem.cs b/Fantays.Console/Runtime/Core/Entitas/Interface/System/IFrameUpdateSystem.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/System/IFrameUpdateSystem.cs rename to Fantays.Console/Runtime/Core/Entitas/Interface/System/IFrameUpdateSystem.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/System/IUpdateSystem.cs b/Fantays.Console/Runtime/Core/Entitas/Interface/System/IUpdateSystem.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Entitas/Interface/System/IUpdateSystem.cs rename to Fantays.Console/Runtime/Core/Entitas/Interface/System/IUpdateSystem.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Builder/AsyncFTaskCompletedMethodBuilder.cs b/Fantays.Console/Runtime/Core/FTask/Builder/AsyncFTaskCompletedMethodBuilder.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Builder/AsyncFTaskCompletedMethodBuilder.cs rename to Fantays.Console/Runtime/Core/FTask/Builder/AsyncFTaskCompletedMethodBuilder.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Builder/AsyncFTaskMethodBuilder.cs b/Fantays.Console/Runtime/Core/FTask/Builder/AsyncFTaskMethodBuilder.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Builder/AsyncFTaskMethodBuilder.cs rename to Fantays.Console/Runtime/Core/FTask/Builder/AsyncFTaskMethodBuilder.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Builder/AsyncFVoidMethodBuilder.cs b/Fantays.Console/Runtime/Core/FTask/Builder/AsyncFVoidMethodBuilder.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Builder/AsyncFVoidMethodBuilder.cs rename to Fantays.Console/Runtime/Core/FTask/Builder/AsyncFVoidMethodBuilder.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/FTask/FCancellationToken/FCancellationToken.Extension.cs b/Fantays.Console/Runtime/Core/FTask/FCancellationToken/FCancellationToken.Extension.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/FTask/FCancellationToken/FCancellationToken.Extension.cs rename to Fantays.Console/Runtime/Core/FTask/FCancellationToken/FCancellationToken.Extension.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/FTask/FCancellationToken/FCancellationToken.cs b/Fantays.Console/Runtime/Core/FTask/FCancellationToken/FCancellationToken.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/FTask/FCancellationToken/FCancellationToken.cs rename to Fantays.Console/Runtime/Core/FTask/FCancellationToken/FCancellationToken.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/FTask/FTask.Extension/FTask.Factory.cs b/Fantays.Console/Runtime/Core/FTask/FTask.Extension/FTask.Factory.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/FTask/FTask.Extension/FTask.Factory.cs rename to Fantays.Console/Runtime/Core/FTask/FTask.Extension/FTask.Factory.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/FTask/FTask.Extension/FTask.Token.cs b/Fantays.Console/Runtime/Core/FTask/FTask.Extension/FTask.Token.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/FTask/FTask.Extension/FTask.Token.cs rename to Fantays.Console/Runtime/Core/FTask/FTask.Extension/FTask.Token.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/FTask/FTask.Extension/FTask.Tools.cs b/Fantays.Console/Runtime/Core/FTask/FTask.Extension/FTask.Tools.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/FTask/FTask.Extension/FTask.Tools.cs rename to Fantays.Console/Runtime/Core/FTask/FTask.Extension/FTask.Tools.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Interface/IFTask.cs b/Fantays.Console/Runtime/Core/FTask/Interface/IFTask.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Interface/IFTask.cs rename to Fantays.Console/Runtime/Core/FTask/Interface/IFTask.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Task/FTask.cs b/Fantays.Console/Runtime/Core/FTask/Task/FTask.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Task/FTask.cs rename to Fantays.Console/Runtime/Core/FTask/Task/FTask.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Task/FTaskCompleted.cs b/Fantays.Console/Runtime/Core/FTask/Task/FTaskCompleted.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Task/FTaskCompleted.cs rename to Fantays.Console/Runtime/Core/FTask/Task/FTaskCompleted.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Task/FVoid.cs b/Fantays.Console/Runtime/Core/FTask/Task/FVoid.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/FTask/Task/FVoid.cs rename to Fantays.Console/Runtime/Core/FTask/Task/FVoid.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/ByteHelper.cs b/Fantays.Console/Runtime/Core/Helper/ByteHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/ByteHelper.cs rename to Fantays.Console/Runtime/Core/Helper/ByteHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/ADownload.cs b/Fantays.Console/Runtime/Core/Helper/Download/ADownload.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/ADownload.cs rename to Fantays.Console/Runtime/Core/Helper/Download/ADownload.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/ADownload.cs.meta b/Fantays.Console/Runtime/Core/Helper/Download/ADownload.cs.meta similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/ADownload.cs.meta rename to Fantays.Console/Runtime/Core/Helper/Download/ADownload.cs.meta diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/Download.cs b/Fantays.Console/Runtime/Core/Helper/Download/Download.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/Download.cs rename to Fantays.Console/Runtime/Core/Helper/Download/Download.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/Download.cs.meta b/Fantays.Console/Runtime/Core/Helper/Download/Download.cs.meta similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/Download.cs.meta rename to Fantays.Console/Runtime/Core/Helper/Download/Download.cs.meta diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadAssetBundle.cs b/Fantays.Console/Runtime/Core/Helper/Download/DownloadAssetBundle.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadAssetBundle.cs rename to Fantays.Console/Runtime/Core/Helper/Download/DownloadAssetBundle.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadAssetBundle.cs.meta b/Fantays.Console/Runtime/Core/Helper/Download/DownloadAssetBundle.cs.meta similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadAssetBundle.cs.meta rename to Fantays.Console/Runtime/Core/Helper/Download/DownloadAssetBundle.cs.meta diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadAudioClip.cs b/Fantays.Console/Runtime/Core/Helper/Download/DownloadAudioClip.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadAudioClip.cs rename to Fantays.Console/Runtime/Core/Helper/Download/DownloadAudioClip.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadAudioClip.cs.meta b/Fantays.Console/Runtime/Core/Helper/Download/DownloadAudioClip.cs.meta similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadAudioClip.cs.meta rename to Fantays.Console/Runtime/Core/Helper/Download/DownloadAudioClip.cs.meta diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadByte.cs b/Fantays.Console/Runtime/Core/Helper/Download/DownloadByte.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadByte.cs rename to Fantays.Console/Runtime/Core/Helper/Download/DownloadByte.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadByte.cs.meta b/Fantays.Console/Runtime/Core/Helper/Download/DownloadByte.cs.meta similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadByte.cs.meta rename to Fantays.Console/Runtime/Core/Helper/Download/DownloadByte.cs.meta diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadSprite.cs b/Fantays.Console/Runtime/Core/Helper/Download/DownloadSprite.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadSprite.cs rename to Fantays.Console/Runtime/Core/Helper/Download/DownloadSprite.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadSprite.cs.meta b/Fantays.Console/Runtime/Core/Helper/Download/DownloadSprite.cs.meta similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadSprite.cs.meta rename to Fantays.Console/Runtime/Core/Helper/Download/DownloadSprite.cs.meta diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadText.cs b/Fantays.Console/Runtime/Core/Helper/Download/DownloadText.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadText.cs rename to Fantays.Console/Runtime/Core/Helper/Download/DownloadText.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadText.cs.meta b/Fantays.Console/Runtime/Core/Helper/Download/DownloadText.cs.meta similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadText.cs.meta rename to Fantays.Console/Runtime/Core/Helper/Download/DownloadText.cs.meta diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadTexture.cs b/Fantays.Console/Runtime/Core/Helper/Download/DownloadTexture.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadTexture.cs rename to Fantays.Console/Runtime/Core/Helper/Download/DownloadTexture.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadTexture.cs.meta b/Fantays.Console/Runtime/Core/Helper/Download/DownloadTexture.cs.meta similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/Download/DownloadTexture.cs.meta rename to Fantays.Console/Runtime/Core/Helper/Download/DownloadTexture.cs.meta diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/EncryptHelper.cs b/Fantays.Console/Runtime/Core/Helper/EncryptHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/EncryptHelper.cs rename to Fantays.Console/Runtime/Core/Helper/EncryptHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/FileHelper.cs b/Fantays.Console/Runtime/Core/Helper/FileHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/FileHelper.cs rename to Fantays.Console/Runtime/Core/Helper/FileHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HashCodeHelper.cs b/Fantays.Console/Runtime/Core/Helper/HashCodeHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HashCodeHelper.cs rename to Fantays.Console/Runtime/Core/Helper/HashCodeHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HttpClient/HttpClientHelper.cs b/Fantays.Console/Runtime/Core/Helper/HttpClient/HttpClientHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HttpClient/HttpClientHelper.cs rename to Fantays.Console/Runtime/Core/Helper/HttpClient/HttpClientHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HttpClient/HttpClientHelper.cs.meta b/Fantays.Console/Runtime/Core/Helper/HttpClient/HttpClientHelper.cs.meta similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HttpClient/HttpClientHelper.cs.meta rename to Fantays.Console/Runtime/Core/Helper/HttpClient/HttpClientHelper.cs.meta diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HttpClient/HttpClientPool.cs b/Fantays.Console/Runtime/Core/Helper/HttpClient/HttpClientPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HttpClient/HttpClientPool.cs rename to Fantays.Console/Runtime/Core/Helper/HttpClient/HttpClientPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HttpClient/HttpClientPool.cs.meta b/Fantays.Console/Runtime/Core/Helper/HttpClient/HttpClientPool.cs.meta similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HttpClient/HttpClientPool.cs.meta rename to Fantays.Console/Runtime/Core/Helper/HttpClient/HttpClientPool.cs.meta diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HttpClient/IJsonRpcRequest.cs b/Fantays.Console/Runtime/Core/Helper/HttpClient/IJsonRpcRequest.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HttpClient/IJsonRpcRequest.cs rename to Fantays.Console/Runtime/Core/Helper/HttpClient/IJsonRpcRequest.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HttpClient/IJsonRpcRequest.cs.meta b/Fantays.Console/Runtime/Core/Helper/HttpClient/IJsonRpcRequest.cs.meta similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/HttpClient/IJsonRpcRequest.cs.meta rename to Fantays.Console/Runtime/Core/Helper/HttpClient/IJsonRpcRequest.cs.meta diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/JsonHelper.cs b/Fantays.Console/Runtime/Core/Helper/JsonHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/JsonHelper.cs rename to Fantays.Console/Runtime/Core/Helper/JsonHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/NetworkHelper.cs b/Fantays.Console/Runtime/Core/Helper/NetworkHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/NetworkHelper.cs rename to Fantays.Console/Runtime/Core/Helper/NetworkHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/RandomHelper.cs b/Fantays.Console/Runtime/Core/Helper/RandomHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/RandomHelper.cs rename to Fantays.Console/Runtime/Core/Helper/RandomHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/SocketHelper.cs b/Fantays.Console/Runtime/Core/Helper/SocketHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/SocketHelper.cs rename to Fantays.Console/Runtime/Core/Helper/SocketHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/TimeHelper.cs b/Fantays.Console/Runtime/Core/Helper/TimeHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/TimeHelper.cs rename to Fantays.Console/Runtime/Core/Helper/TimeHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/UnityWebRequest/UnityWebRequestHelper.cs b/Fantays.Console/Runtime/Core/Helper/UnityWebRequest/UnityWebRequestHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/UnityWebRequest/UnityWebRequestHelper.cs rename to Fantays.Console/Runtime/Core/Helper/UnityWebRequest/UnityWebRequestHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/UnityWebRequest/UnityWebRequestHelper.cs.meta b/Fantays.Console/Runtime/Core/Helper/UnityWebRequest/UnityWebRequestHelper.cs.meta similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/UnityWebRequest/UnityWebRequestHelper.cs.meta rename to Fantays.Console/Runtime/Core/Helper/UnityWebRequest/UnityWebRequestHelper.cs.meta diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/WebSocketHelper.cs b/Fantays.Console/Runtime/Core/Helper/WebSocketHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/WebSocketHelper.cs rename to Fantays.Console/Runtime/Core/Helper/WebSocketHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Helper/WinPeriod.cs b/Fantays.Console/Runtime/Core/Helper/WinPeriod.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Helper/WinPeriod.cs rename to Fantays.Console/Runtime/Core/Helper/WinPeriod.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/IdFactory/EntityIdFactory.cs b/Fantays.Console/Runtime/Core/IdFactory/EntityIdFactory.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/IdFactory/EntityIdFactory.cs rename to Fantays.Console/Runtime/Core/IdFactory/EntityIdFactory.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/IdFactory/RuntimeIdFactory.cs b/Fantays.Console/Runtime/Core/IdFactory/RuntimeIdFactory.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/IdFactory/RuntimeIdFactory.cs rename to Fantays.Console/Runtime/Core/IdFactory/RuntimeIdFactory.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/InnerErrorCode.cs b/Fantays.Console/Runtime/Core/InnerErrorCode.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/InnerErrorCode.cs rename to Fantays.Console/Runtime/Core/InnerErrorCode.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Log/ConsoleLog.cs b/Fantays.Console/Runtime/Core/Log/ConsoleLog.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Log/ConsoleLog.cs rename to Fantays.Console/Runtime/Core/Log/ConsoleLog.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Log/ILog.cs b/Fantays.Console/Runtime/Core/Log/ILog.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Log/ILog.cs rename to Fantays.Console/Runtime/Core/Log/ILog.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Log/Log.cs b/Fantays.Console/Runtime/Core/Log/Log.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Log/Log.cs rename to Fantays.Console/Runtime/Core/Log/Log.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Log/UnityLog.cs b/Fantays.Console/Runtime/Core/Log/UnityLog.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Log/UnityLog.cs rename to Fantays.Console/Runtime/Core/Log/UnityLog.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/AddressableHelper.cs b/Fantays.Console/Runtime/Core/Network/Addressable/AddressableHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/AddressableHelper.cs rename to Fantays.Console/Runtime/Core/Network/Addressable/AddressableHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/AddressableManageComponent.cs b/Fantays.Console/Runtime/Core/Network/Addressable/AddressableManageComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/AddressableManageComponent.cs rename to Fantays.Console/Runtime/Core/Network/Addressable/AddressableManageComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/AddressableMessageComponent.cs b/Fantays.Console/Runtime/Core/Network/Addressable/AddressableMessageComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/AddressableMessageComponent.cs rename to Fantays.Console/Runtime/Core/Network/Addressable/AddressableMessageComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/AddressableRouteComponent.cs b/Fantays.Console/Runtime/Core/Network/Addressable/AddressableRouteComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/AddressableRouteComponent.cs rename to Fantays.Console/Runtime/Core/Network/Addressable/AddressableRouteComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/AddressableScene.cs b/Fantays.Console/Runtime/Core/Network/Addressable/AddressableScene.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/AddressableScene.cs rename to Fantays.Console/Runtime/Core/Network/Addressable/AddressableScene.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableAddHandler.cs b/Fantays.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableAddHandler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableAddHandler.cs rename to Fantays.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableAddHandler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableGetHandler.cs b/Fantays.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableGetHandler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableGetHandler.cs rename to Fantays.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableGetHandler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableLockHandler.cs b/Fantays.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableLockHandler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableLockHandler.cs rename to Fantays.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableLockHandler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableRemoveHandler.cs b/Fantays.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableRemoveHandler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableRemoveHandler.cs rename to Fantays.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableRemoveHandler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableUnLockHandler.cs b/Fantays.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableUnLockHandler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableUnLockHandler.cs rename to Fantays.Console/Runtime/Core/Network/Addressable/Handler/I_AddressableUnLockHandler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/MemoryStreamBufferPool.cs b/Fantays.Console/Runtime/Core/Network/MemoryStreamBufferPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/MemoryStreamBufferPool.cs rename to Fantays.Console/Runtime/Core/Network/MemoryStreamBufferPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Dispatcher/Interface/IMessageHandler.cs b/Fantays.Console/Runtime/Core/Network/Message/Dispatcher/Interface/IMessageHandler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Dispatcher/Interface/IMessageHandler.cs rename to Fantays.Console/Runtime/Core/Network/Message/Dispatcher/Interface/IMessageHandler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Dispatcher/Interface/IRouteMessageHandler.cs b/Fantays.Console/Runtime/Core/Network/Message/Dispatcher/Interface/IRouteMessageHandler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Dispatcher/Interface/IRouteMessageHandler.cs rename to Fantays.Console/Runtime/Core/Network/Message/Dispatcher/Interface/IRouteMessageHandler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Dispatcher/MessageDispatcherComponent.cs b/Fantays.Console/Runtime/Core/Network/Message/Dispatcher/MessageDispatcherComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Dispatcher/MessageDispatcherComponent.cs rename to Fantays.Console/Runtime/Core/Network/Message/Dispatcher/MessageDispatcherComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/IMessage.cs b/Fantays.Console/Runtime/Core/Network/Message/IMessage.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/IMessage.cs rename to Fantays.Console/Runtime/Core/Network/Message/IMessage.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/InnerMessage.cs b/Fantays.Console/Runtime/Core/Network/Message/InnerMessage.cs similarity index 87% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/InnerMessage.cs rename to Fantays.Console/Runtime/Core/Network/Message/InnerMessage.cs index d30a2755..8910a34e 100644 --- a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/InnerMessage.cs +++ b/Fantays.Console/Runtime/Core/Network/Message/InnerMessage.cs @@ -10,6 +10,38 @@ namespace Fantasy.InnerMessage { [ProtoContract] + public sealed partial class BenchmarkMessage : AMessage, IMessage + { + public uint OpCode() + { + return Fantasy.Network.OpCode.BenchmarkMessage; + } + } + [ProtoContract] + public partial class BenchmarkRequest : AMessage, IRequest + { + public uint OpCode() + { + return Fantasy.Network.OpCode.BenchmarkRequest; + } + [ProtoIgnore] + public BenchmarkResponse ResponseType { get; set; } + [ProtoMember(1)] + public long RpcId { get; set; } + } + + [ProtoContract] + public partial class BenchmarkResponse : AMessage, IResponse + { + public uint OpCode() + { + return Fantasy.Network.OpCode.BenchmarkResponse; + } + [ProtoMember(1)] + public long RpcId { get; set; } + [ProtoMember(2)] + public uint ErrorCode { get; set; } + } public sealed partial class Response : AMessage, IResponse { public uint OpCode() diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Handler/BufferPacketParser.cs b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/Handler/BufferPacketParser.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Handler/BufferPacketParser.cs rename to Fantays.Console/Runtime/Core/Network/Message/PacketParser/Handler/BufferPacketParser.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Handler/CircularBufferPacketParser.cs b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/Handler/CircularBufferPacketParser.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Handler/CircularBufferPacketParser.cs rename to Fantays.Console/Runtime/Core/Network/Message/PacketParser/Handler/CircularBufferPacketParser.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Handler/OuterBufferPacketParserHelper.cs b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/Handler/OuterBufferPacketParserHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Handler/OuterBufferPacketParserHelper.cs rename to Fantays.Console/Runtime/Core/Network/Message/PacketParser/Handler/OuterBufferPacketParserHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Handler/ReadOnlyMemoryPacketParser.cs b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/Handler/ReadOnlyMemoryPacketParser.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Handler/ReadOnlyMemoryPacketParser.cs rename to Fantays.Console/Runtime/Core/Network/Message/PacketParser/Handler/ReadOnlyMemoryPacketParser.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Interface/APackInfo.cs b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/Interface/APackInfo.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Interface/APackInfo.cs rename to Fantays.Console/Runtime/Core/Network/Message/PacketParser/Interface/APackInfo.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Interface/APacketParser.cs b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/Interface/APacketParser.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Interface/APacketParser.cs rename to Fantays.Console/Runtime/Core/Network/Message/PacketParser/Interface/APacketParser.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/OpCode.cs b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/OpCode.cs similarity index 93% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/OpCode.cs rename to Fantays.Console/Runtime/Core/Network/Message/PacketParser/OpCode.cs index ee1510d7..d02105d9 100644 --- a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/OpCode.cs +++ b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/OpCode.cs @@ -78,6 +78,9 @@ public static class OpCodeType public static class OpCode { + public static readonly uint BenchmarkMessage = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterMessage, 8388607); + public static readonly uint BenchmarkRequest = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterRequest, 8388607); + public static readonly uint BenchmarkResponse = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterResponse, 8388607); public static readonly uint PingRequest = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterPingRequest, 1); public static readonly uint PingResponse = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.OuterPingResponse, 1); public static readonly uint DefaultResponse = Create(OpCodeProtocolType.ProtoBuf, OpCodeType.InnerResponse, 1); diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Pack/InnerPackInfo.cs b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/Pack/InnerPackInfo.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Pack/InnerPackInfo.cs rename to Fantays.Console/Runtime/Core/Network/Message/PacketParser/Pack/InnerPackInfo.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Pack/OuterPackInfo.cs b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/Pack/OuterPackInfo.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Pack/OuterPackInfo.cs rename to Fantays.Console/Runtime/Core/Network/Message/PacketParser/Pack/OuterPackInfo.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Pack/ProcessPackInfo.cs b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/Pack/ProcessPackInfo.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Pack/ProcessPackInfo.cs rename to Fantays.Console/Runtime/Core/Network/Message/PacketParser/Pack/ProcessPackInfo.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Packet.cs b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/Packet.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/Packet.cs rename to Fantays.Console/Runtime/Core/Network/Message/PacketParser/Packet.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/PacketParserFactory.cs b/Fantays.Console/Runtime/Core/Network/Message/PacketParser/PacketParserFactory.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/PacketParser/PacketParserFactory.cs rename to Fantays.Console/Runtime/Core/Network/Message/PacketParser/PacketParserFactory.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/ClientMessageScheduler.cs b/Fantays.Console/Runtime/Core/Network/Message/Scheduler/ClientMessageScheduler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/ClientMessageScheduler.cs rename to Fantays.Console/Runtime/Core/Network/Message/Scheduler/ClientMessageScheduler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/InnerMessageScheduler.cs b/Fantays.Console/Runtime/Core/Network/Message/Scheduler/InnerMessageScheduler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/InnerMessageScheduler.cs rename to Fantays.Console/Runtime/Core/Network/Message/Scheduler/InnerMessageScheduler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/Interface/ANetworkMessageScheduler.cs b/Fantays.Console/Runtime/Core/Network/Message/Scheduler/Interface/ANetworkMessageScheduler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/Interface/ANetworkMessageScheduler.cs rename to Fantays.Console/Runtime/Core/Network/Message/Scheduler/Interface/ANetworkMessageScheduler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/MessageHelper/MessageSender.cs b/Fantays.Console/Runtime/Core/Network/Message/Scheduler/MessageHelper/MessageSender.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/MessageHelper/MessageSender.cs rename to Fantays.Console/Runtime/Core/Network/Message/Scheduler/MessageHelper/MessageSender.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/MessageHelper/NetworkMessagingComponent.cs b/Fantays.Console/Runtime/Core/Network/Message/Scheduler/MessageHelper/NetworkMessagingComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/MessageHelper/NetworkMessagingComponent.cs rename to Fantays.Console/Runtime/Core/Network/Message/Scheduler/MessageHelper/NetworkMessagingComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/MessageHelper/OnNetworkMessageUpdateCheckTimeout.cs b/Fantays.Console/Runtime/Core/Network/Message/Scheduler/MessageHelper/OnNetworkMessageUpdateCheckTimeout.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/MessageHelper/OnNetworkMessageUpdateCheckTimeout.cs rename to Fantays.Console/Runtime/Core/Network/Message/Scheduler/MessageHelper/OnNetworkMessageUpdateCheckTimeout.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/OuterMessageScheduler.cs b/Fantays.Console/Runtime/Core/Network/Message/Scheduler/OuterMessageScheduler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Message/Scheduler/OuterMessageScheduler.cs rename to Fantays.Console/Runtime/Core/Network/Message/Scheduler/OuterMessageScheduler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/Exception/ScanException.cs b/Fantays.Console/Runtime/Core/Network/Protocol/Exception/ScanException.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/Exception/ScanException.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/Exception/ScanException.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/HTTP/HTTPServerNetwork.cs b/Fantays.Console/Runtime/Core/Network/Protocol/HTTP/HTTPServerNetwork.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/HTTP/HTTPServerNetwork.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/HTTP/HTTPServerNetwork.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/HTTP/SceneContextFilter.cs b/Fantays.Console/Runtime/Core/Network/Protocol/HTTP/SceneContextFilter.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/HTTP/SceneContextFilter.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/HTTP/SceneContextFilter.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/Interface/AClientNetwork.cs b/Fantays.Console/Runtime/Core/Network/Protocol/Interface/AClientNetwork.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/Interface/AClientNetwork.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/Interface/AClientNetwork.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/Interface/ANetwork.cs b/Fantays.Console/Runtime/Core/Network/Protocol/Interface/ANetwork.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/Interface/ANetwork.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/Interface/ANetwork.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/Interface/ANetworkServerChannel.cs b/Fantays.Console/Runtime/Core/Network/Protocol/Interface/ANetworkServerChannel.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/Interface/ANetworkServerChannel.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/Interface/ANetworkServerChannel.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/Interface/INetworkChannel.cs b/Fantays.Console/Runtime/Core/Network/Protocol/Interface/INetworkChannel.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/Interface/INetworkChannel.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/Interface/INetworkChannel.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/Base/Kcp.cs b/Fantays.Console/Runtime/Core/Network/Protocol/KCP/Base/Kcp.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/Base/Kcp.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/KCP/Base/Kcp.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/Base/ikcpc.cs b/Fantays.Console/Runtime/Core/Network/Protocol/KCP/Base/ikcpc.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/Base/ikcpc.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/KCP/Base/ikcpc.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/Base/ikcph.cs b/Fantays.Console/Runtime/Core/Network/Protocol/KCP/Base/ikcph.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/Base/ikcph.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/KCP/Base/ikcph.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/Client/KCPClientNetwork.cs b/Fantays.Console/Runtime/Core/Network/Protocol/KCP/Client/KCPClientNetwork.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/Client/KCPClientNetwork.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/KCP/Client/KCPClientNetwork.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/KCPSettings.cs b/Fantays.Console/Runtime/Core/Network/Protocol/KCP/KCPSettings.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/KCPSettings.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/KCP/KCPSettings.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/KcpHeader.cs b/Fantays.Console/Runtime/Core/Network/Protocol/KCP/KcpHeader.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/KcpHeader.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/KCP/KcpHeader.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/Server/KCPServerNetwork.cs b/Fantays.Console/Runtime/Core/Network/Protocol/KCP/Server/KCPServerNetwork.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/Server/KCPServerNetwork.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/KCP/Server/KCPServerNetwork.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/Server/KCPServerNetworkChannel.cs b/Fantays.Console/Runtime/Core/Network/Protocol/KCP/Server/KCPServerNetworkChannel.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/KCP/Server/KCPServerNetworkChannel.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/KCP/Server/KCPServerNetworkChannel.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/NetworkProtocolFactory.cs b/Fantays.Console/Runtime/Core/Network/Protocol/NetworkProtocolFactory.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/NetworkProtocolFactory.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/NetworkProtocolFactory.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/NetworkProtocolType.cs b/Fantays.Console/Runtime/Core/Network/Protocol/NetworkProtocolType.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/NetworkProtocolType.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/NetworkProtocolType.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/TCP/Client/TCPClientNetwork.cs b/Fantays.Console/Runtime/Core/Network/Protocol/TCP/Client/TCPClientNetwork.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/TCP/Client/TCPClientNetwork.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/TCP/Client/TCPClientNetwork.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/TCP/Server/TCPServerNetwork.cs b/Fantays.Console/Runtime/Core/Network/Protocol/TCP/Server/TCPServerNetwork.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/TCP/Server/TCPServerNetwork.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/TCP/Server/TCPServerNetwork.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/TCP/Server/TCPServerNetworkChannel.cs b/Fantays.Console/Runtime/Core/Network/Protocol/TCP/Server/TCPServerNetworkChannel.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/TCP/Server/TCPServerNetworkChannel.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/TCP/Server/TCPServerNetworkChannel.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/WebSocket/Client/WebSocketClientNetwork.cs b/Fantays.Console/Runtime/Core/Network/Protocol/WebSocket/Client/WebSocketClientNetwork.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/WebSocket/Client/WebSocketClientNetwork.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/WebSocket/Client/WebSocketClientNetwork.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/WebSocket/Client/WebSocketClientNetworkWebgl.cs b/Fantays.Console/Runtime/Core/Network/Protocol/WebSocket/Client/WebSocketClientNetworkWebgl.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/WebSocket/Client/WebSocketClientNetworkWebgl.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/WebSocket/Client/WebSocketClientNetworkWebgl.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/WebSocket/Server/WebSocketServerNetwork.cs b/Fantays.Console/Runtime/Core/Network/Protocol/WebSocket/Server/WebSocketServerNetwork.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/WebSocket/Server/WebSocketServerNetwork.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/WebSocket/Server/WebSocketServerNetwork.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/WebSocket/Server/WebSocketServerNetworkChannel.cs b/Fantays.Console/Runtime/Core/Network/Protocol/WebSocket/Server/WebSocketServerNetworkChannel.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Protocol/WebSocket/Server/WebSocketServerNetworkChannel.cs rename to Fantays.Console/Runtime/Core/Network/Protocol/WebSocket/Server/WebSocketServerNetworkChannel.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Route/RouteComponent.cs b/Fantays.Console/Runtime/Core/Network/Route/RouteComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Route/RouteComponent.cs rename to Fantays.Console/Runtime/Core/Network/Route/RouteComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/Component/ConsoleSessionHeartbeatComponent.cs b/Fantays.Console/Runtime/Core/Network/Session/Component/ConsoleSessionHeartbeatComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/Component/ConsoleSessionHeartbeatComponent.cs rename to Fantays.Console/Runtime/Core/Network/Session/Component/ConsoleSessionHeartbeatComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/Component/SessionIdleCheckerComponent.cs b/Fantays.Console/Runtime/Core/Network/Session/Component/SessionIdleCheckerComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/Component/SessionIdleCheckerComponent.cs rename to Fantays.Console/Runtime/Core/Network/Session/Component/SessionIdleCheckerComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/Component/UnitySessionHeartbeatComponent.cs b/Fantays.Console/Runtime/Core/Network/Session/Component/UnitySessionHeartbeatComponent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/Component/UnitySessionHeartbeatComponent.cs rename to Fantays.Console/Runtime/Core/Network/Session/Component/UnitySessionHeartbeatComponent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/ProcessSession/ProcessScheduler.cs b/Fantays.Console/Runtime/Core/Network/Session/ProcessSession/ProcessScheduler.cs similarity index 99% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/ProcessSession/ProcessScheduler.cs rename to Fantays.Console/Runtime/Core/Network/Session/ProcessSession/ProcessScheduler.cs index 6fc101df..d6a8caa4 100644 --- a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/ProcessSession/ProcessScheduler.cs +++ b/Fantays.Console/Runtime/Core/Network/Session/ProcessSession/ProcessScheduler.cs @@ -202,7 +202,6 @@ public static void Scheduler(this ProcessSession session, Type messageType, uint if (entity == null || entity.IsDisposed) { sceneMessageDispatcherComponent.FailRouteResponse(session, message.GetType(), InnerErrorCode.ErrNotFoundRoute, rpcId); - return; } diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/ProcessSession/ProcessSession.cs b/Fantays.Console/Runtime/Core/Network/Session/ProcessSession/ProcessSession.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/ProcessSession/ProcessSession.cs rename to Fantays.Console/Runtime/Core/Network/Session/ProcessSession/ProcessSession.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/ProcessSession/ProcessSessionInfo.cs b/Fantays.Console/Runtime/Core/Network/Session/ProcessSession/ProcessSessionInfo.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/ProcessSession/ProcessSessionInfo.cs rename to Fantays.Console/Runtime/Core/Network/Session/ProcessSession/ProcessSessionInfo.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/Session.cs b/Fantays.Console/Runtime/Core/Network/Session/Session.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Network/Session/Session.cs rename to Fantays.Console/Runtime/Core/Network/Session/Session.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Console/Entry.cs b/Fantays.Console/Runtime/Core/Platform/Console/Entry.cs similarity index 98% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Console/Entry.cs rename to Fantays.Console/Runtime/Core/Platform/Console/Entry.cs index e49e5ed4..3f461326 100644 --- a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Console/Entry.cs +++ b/Fantays.Console/Runtime/Core/Platform/Console/Entry.cs @@ -55,6 +55,7 @@ public static void StartUpdate() while (_isInit) { ThreadScheduler.Update(); + Thread.Sleep(1); } }) { diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Console/ThreadSynchronizationContext.cs b/Fantays.Console/Runtime/Core/Platform/Console/ThreadSynchronizationContext.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Console/ThreadSynchronizationContext.cs rename to Fantays.Console/Runtime/Core/Platform/Console/ThreadSynchronizationContext.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/ConfigTable/MachineConfig.cs b/Fantays.Console/Runtime/Core/Platform/Net/ConfigTable/MachineConfig.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/ConfigTable/MachineConfig.cs rename to Fantays.Console/Runtime/Core/Platform/Net/ConfigTable/MachineConfig.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/ConfigTable/ProcessConfig.cs b/Fantays.Console/Runtime/Core/Platform/Net/ConfigTable/ProcessConfig.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/ConfigTable/ProcessConfig.cs rename to Fantays.Console/Runtime/Core/Platform/Net/ConfigTable/ProcessConfig.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/ConfigTable/SceneConfig.cs b/Fantays.Console/Runtime/Core/Platform/Net/ConfigTable/SceneConfig.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/ConfigTable/SceneConfig.cs rename to Fantays.Console/Runtime/Core/Platform/Net/ConfigTable/SceneConfig.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/ConfigTable/WorldConfig.cs b/Fantays.Console/Runtime/Core/Platform/Net/ConfigTable/WorldConfig.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/ConfigTable/WorldConfig.cs rename to Fantays.Console/Runtime/Core/Platform/Net/ConfigTable/WorldConfig.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/Entry.cs b/Fantays.Console/Runtime/Core/Platform/Net/Entry.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/Entry.cs rename to Fantays.Console/Runtime/Core/Platform/Net/Entry.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/Process.cs b/Fantays.Console/Runtime/Core/Platform/Net/Process.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/Process.cs rename to Fantays.Console/Runtime/Core/Platform/Net/Process.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/ProcessDefine.cs b/Fantays.Console/Runtime/Core/Platform/Net/ProcessDefine.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/ProcessDefine.cs rename to Fantays.Console/Runtime/Core/Platform/Net/ProcessDefine.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/ThreadSynchronizationContext.cs b/Fantays.Console/Runtime/Core/Platform/Net/ThreadSynchronizationContext.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Net/ThreadSynchronizationContext.cs rename to Fantays.Console/Runtime/Core/Platform/Net/ThreadSynchronizationContext.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/AppDefine.cs b/Fantays.Console/Runtime/Core/Platform/Unity/AppDefine.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/AppDefine.cs rename to Fantays.Console/Runtime/Core/Platform/Unity/AppDefine.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Attributes/BsonDefaultValueAttribute.cs b/Fantays.Console/Runtime/Core/Platform/Unity/Attributes/BsonDefaultValueAttribute.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Attributes/BsonDefaultValueAttribute.cs rename to Fantays.Console/Runtime/Core/Platform/Unity/Attributes/BsonDefaultValueAttribute.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Attributes/BsonElementAttribute.cs b/Fantays.Console/Runtime/Core/Platform/Unity/Attributes/BsonElementAttribute.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Attributes/BsonElementAttribute.cs rename to Fantays.Console/Runtime/Core/Platform/Unity/Attributes/BsonElementAttribute.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Attributes/BsonIdAttribute.cs b/Fantays.Console/Runtime/Core/Platform/Unity/Attributes/BsonIdAttribute.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Attributes/BsonIdAttribute.cs rename to Fantays.Console/Runtime/Core/Platform/Unity/Attributes/BsonIdAttribute.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreAttribute.cs b/Fantays.Console/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreAttribute.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreAttribute.cs rename to Fantays.Console/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreAttribute.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreIfDefaultAttribute.cs b/Fantays.Console/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreIfDefaultAttribute.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreIfDefaultAttribute.cs rename to Fantays.Console/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreIfDefaultAttribute.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreIfNullAttribute.cs b/Fantays.Console/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreIfNullAttribute.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreIfNullAttribute.cs rename to Fantays.Console/Runtime/Core/Platform/Unity/Attributes/BsonIgnoreIfNullAttribute.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Entry.cs b/Fantays.Console/Runtime/Core/Platform/Unity/Entry.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Entry.cs rename to Fantays.Console/Runtime/Core/Platform/Unity/Entry.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Temp.cs b/Fantays.Console/Runtime/Core/Platform/Unity/Temp.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/Temp.cs rename to Fantays.Console/Runtime/Core/Platform/Unity/Temp.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/ThreadSynchronizationContext.cs b/Fantays.Console/Runtime/Core/Platform/Unity/ThreadSynchronizationContext.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Platform/Unity/ThreadSynchronizationContext.cs rename to Fantays.Console/Runtime/Core/Platform/Unity/ThreadSynchronizationContext.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Pool/Concurrent/MultiThreadPool.cs b/Fantays.Console/Runtime/Core/Pool/Concurrent/MultiThreadPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Pool/Concurrent/MultiThreadPool.cs rename to Fantays.Console/Runtime/Core/Pool/Concurrent/MultiThreadPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Pool/Concurrent/MultiThreadPoolQueue.cs b/Fantays.Console/Runtime/Core/Pool/Concurrent/MultiThreadPoolQueue.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Pool/Concurrent/MultiThreadPoolQueue.cs rename to Fantays.Console/Runtime/Core/Pool/Concurrent/MultiThreadPoolQueue.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Pool/Interface/IPool.cs b/Fantays.Console/Runtime/Core/Pool/Interface/IPool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Pool/Interface/IPool.cs rename to Fantays.Console/Runtime/Core/Pool/Interface/IPool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Pool/Normal/Pool.cs b/Fantays.Console/Runtime/Core/Pool/Normal/Pool.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Pool/Normal/Pool.cs rename to Fantays.Console/Runtime/Core/Pool/Normal/Pool.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Pool/Normal/PoolCore.cs b/Fantays.Console/Runtime/Core/Pool/Normal/PoolCore.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Pool/Normal/PoolCore.cs rename to Fantays.Console/Runtime/Core/Pool/Normal/PoolCore.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Pool/Normal/PoolWithDisposable.cs b/Fantays.Console/Runtime/Core/Pool/Normal/PoolWithDisposable.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Pool/Normal/PoolWithDisposable.cs rename to Fantays.Console/Runtime/Core/Pool/Normal/PoolWithDisposable.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Pool/PoolHelper.cs b/Fantays.Console/Runtime/Core/Pool/PoolHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Pool/PoolHelper.cs rename to Fantays.Console/Runtime/Core/Pool/PoolHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Scene/ISceneUpdate.cs b/Fantays.Console/Runtime/Core/Scene/ISceneUpdate.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Scene/ISceneUpdate.cs rename to Fantays.Console/Runtime/Core/Scene/ISceneUpdate.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Scene/OnCreateSceneEvent.cs b/Fantays.Console/Runtime/Core/Scene/OnCreateSceneEvent.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Scene/OnCreateSceneEvent.cs rename to Fantays.Console/Runtime/Core/Scene/OnCreateSceneEvent.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scene.cs b/Fantays.Console/Runtime/Core/Scene/Scene.cs similarity index 98% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scene.cs rename to Fantays.Console/Runtime/Core/Scene/Scene.cs index f91696d5..803c1a80 100644 --- a/Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scene.cs +++ b/Fantays.Console/Runtime/Core/Scene/Scene.cs @@ -502,13 +502,13 @@ public Session GetSession(long runTimeId) _processSessionInfos.Remove(sceneId); } - // if (Process.IsInAppliaction(ref sceneId)) - // { - // // 如果在同一个Process下,不需要通过Socket发送了,直接通过Process下转发。 - // var processSession = Session.CreateInnerSession(Scene); - // _processSessionInfos.Add(sceneId, new ProcessSessionInfo(processSession, null)); - // return processSession; - // } + if (Process.IsInAppliaction(ref sceneId)) + { + // 如果在同一个Process下,不需要通过Socket发送了,直接通过Process下转发。 + var processSession = Session.CreateInnerSession(Scene); + _processSessionInfos.Add(sceneId, new ProcessSessionInfo(processSession, null)); + return processSession; + } if (!SceneConfigData.Instance.TryGet(sceneId, out var sceneConfig)) { diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scheduler/ISceneScheduler.cs b/Fantays.Console/Runtime/Core/Scene/Scheduler/ISceneScheduler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scheduler/ISceneScheduler.cs rename to Fantays.Console/Runtime/Core/Scene/Scheduler/ISceneScheduler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scheduler/MainScheduler.cs b/Fantays.Console/Runtime/Core/Scene/Scheduler/MainScheduler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scheduler/MainScheduler.cs rename to Fantays.Console/Runtime/Core/Scene/Scheduler/MainScheduler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scheduler/MultiThreadScheduler.cs b/Fantays.Console/Runtime/Core/Scene/Scheduler/MultiThreadScheduler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scheduler/MultiThreadScheduler.cs rename to Fantays.Console/Runtime/Core/Scene/Scheduler/MultiThreadScheduler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scheduler/ThreadPoolScheduler.cs b/Fantays.Console/Runtime/Core/Scene/Scheduler/ThreadPoolScheduler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scheduler/ThreadPoolScheduler.cs rename to Fantays.Console/Runtime/Core/Scene/Scheduler/ThreadPoolScheduler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scheduler/ThreadScheduler.cs b/Fantays.Console/Runtime/Core/Scene/Scheduler/ThreadScheduler.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Scene/Scheduler/ThreadScheduler.cs rename to Fantays.Console/Runtime/Core/Scene/Scheduler/ThreadScheduler.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/BsonPack/BsonPackHelper.cs b/Fantays.Console/Runtime/Core/Serialize/BsonPack/BsonPackHelper.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/BsonPack/BsonPackHelper.cs rename to Fantays.Console/Runtime/Core/Serialize/BsonPack/BsonPackHelper.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/BsonPack/StructBsonSerialize.cs b/Fantays.Console/Runtime/Core/Serialize/BsonPack/StructBsonSerialize.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/BsonPack/StructBsonSerialize.cs rename to Fantays.Console/Runtime/Core/Serialize/BsonPack/StructBsonSerialize.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/BsonPack/SupportInitializeChecker.cs b/Fantays.Console/Runtime/Core/Serialize/BsonPack/SupportInitializeChecker.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/BsonPack/SupportInitializeChecker.cs rename to Fantays.Console/Runtime/Core/Serialize/BsonPack/SupportInitializeChecker.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/Interface/ASerialize.cs b/Fantays.Console/Runtime/Core/Serialize/Interface/ASerialize.cs similarity index 94% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/Interface/ASerialize.cs rename to Fantays.Console/Runtime/Core/Serialize/Interface/ASerialize.cs index 55c3e540..7487b86d 100644 --- a/Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/Interface/ASerialize.cs +++ b/Fantays.Console/Runtime/Core/Serialize/Interface/ASerialize.cs @@ -2,11 +2,12 @@ using System.ComponentModel; using System.Runtime.Serialization; using Fantasy.Pool; +#if FANTASY_NET || FANTASY_UNITY || FANTASY_CONSOLE using MongoDB.Bson.Serialization.Attributes; +#endif using Newtonsoft.Json; using ProtoBuf; #pragma warning disable CS1591 // Missing XML comment for publicly visible type or member - #pragma warning disable CS8625 // Cannot convert null literal to non-nullable reference type. #pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable. @@ -38,7 +39,9 @@ public void SetScene(Scene scene) _scene = scene; } #endif +#if FANTASY_NET [BsonIgnore] +#endif [JsonIgnore] [IgnoreDataMember] [ProtoIgnore] diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/Interface/ISerialize.cs b/Fantays.Console/Runtime/Core/Serialize/Interface/ISerialize.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/Interface/ISerialize.cs rename to Fantays.Console/Runtime/Core/Serialize/Interface/ISerialize.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/MemoryStreamBuffer.cs b/Fantays.Console/Runtime/Core/Serialize/MemoryStreamBuffer.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/MemoryStreamBuffer.cs rename to Fantays.Console/Runtime/Core/Serialize/MemoryStreamBuffer.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/ProtoBufPackHelper/IProto.cs b/Fantays.Console/Runtime/Core/Serialize/ProtoBufPackHelper/IProto.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/ProtoBufPackHelper/IProto.cs rename to Fantays.Console/Runtime/Core/Serialize/ProtoBufPackHelper/IProto.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/ProtoBufPackHelper/ProtoBufPackHelperNet.cs b/Fantays.Console/Runtime/Core/Serialize/ProtoBufPackHelper/ProtoBufPackHelperNet.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/ProtoBufPackHelper/ProtoBufPackHelperNet.cs rename to Fantays.Console/Runtime/Core/Serialize/ProtoBufPackHelper/ProtoBufPackHelperNet.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/ProtoBufPackHelper/ProtoBufPackHelperUnity.cs b/Fantays.Console/Runtime/Core/Serialize/ProtoBufPackHelper/ProtoBufPackHelperUnity.cs similarity index 100% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/ProtoBufPackHelper/ProtoBufPackHelperUnity.cs rename to Fantays.Console/Runtime/Core/Serialize/ProtoBufPackHelper/ProtoBufPackHelperUnity.cs diff --git a/Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/SerializerManager.cs b/Fantays.Console/Runtime/Core/Serialize/SerializerManager.cs similarity index 99% rename from Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/SerializerManager.cs rename to Fantays.Console/Runtime/Core/Serialize/SerializerManager.cs index 56d01243..8c7a0b30 100644 --- a/Fantays.Console/Fantasy.Console/Runtime/Core/Serialize/SerializerManager.cs +++ b/Fantays.Console/Runtime/Core/Serialize/SerializerManager.cs @@ -2,7 +2,9 @@ using System.Collections.Generic; using Fantasy.Assembly; using Fantasy.Helper; +#if !FANTASY_EXPORTER using Fantasy.Network; +#endif using ProtoBuf; #pragma warning disable CS8604 // Possible null reference argument. #pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable. diff --git a/Tools/Exporter/ConfigTable/Fantasy.Tools.ConfigTable.dll b/Tools/Exporter/ConfigTable/Fantasy.Tools.ConfigTable.dll index 4e16c56c09880dfce9cac224febacedcd8e4a40f..691c3ecb2512754045ad0afc53aa3a0450f1de03 100644 GIT binary patch delta 337 zcmZqp!rbtMc|r%v^c_1_PwbIljGMSJoRM=fBV#>d%H&2MX}g(`sr`z;<1()F>wM4M zwiGS<8CdHmv3bU|&7v9>mS!e~X-4L$CZ?8#X@(XlmPyHJ#;M7ciK)hkW=RIACT3}d zM#;vTi{DIT9IGv9|*%>EV(mJDVLCJcrQX$(dT<_xJowkc2y#5ZKH zU`PS7lNgeLJY%3-GLV-Dq>X{38Bp8+tlkW))(9wTyqWzABMVc4?PkFr?-?f=umb>O Cm1~#) delta 337 zcmZqp!rbtMc|r%v=lM=sCiciMhD}@<&d4;Gk+GgJW^yBtG~3L`)P6;PCs8g}K}y4W z%I>3j>t0(LY@Ts#v#5qaig{9^fw{4{sd<{Yp|OdniGgXFd5TF|N^)YVk)fr9fq|)k znW@3%;x|(nd5fM1oM2$|4PatmU}&B!`c9tpHV-4i?a7w!lm({lNVPQZndH&gzIyJT zQ+uCJ&UvTBT$HRoxp21R(j6h={zy-us zn5ZbmXg1mCz4qj|_Zub}aBSxLu!`B=fFXs!oFR!Jk--2+8w0T^5T^mLA&_SRx_Jb^ub(X$b%T diff --git a/Tools/Exporter/ConfigTable/Fantasy.Tools.ConfigTable.pdb b/Tools/Exporter/ConfigTable/Fantasy.Tools.ConfigTable.pdb index 082e1264a21c795212a1929cf9c08d9051a1bcfb..e28ebf3cdac87ecf100c33202128609951458558 100644 GIT binary patch delta 4158 zcmZ{l2~<;O9>xFf5y%U>fUE*>KmkEa*hEq%hZlFqts$CYL#(lUB=P659+B}J8q+OAD#OimUd2obAI>UZ+YMLzC1qL%5L4t zE}te3okA3nK4q$&h=zQ8{<+6cc~0}hkO#dzwtVb)@S7DYmRn4EVrUw%WQ8AuzkoY2 zEafr`mBH7;KZoChKZPq;hSFG;X22K0cfk+9@4;Wem39oN>{zOX*T8qd55OP5SqV!q z5aJWhhX}(kS>O z_+I!icmT&xB*)TN_!Rg?_+Q|c;rHR8GKL1rSTe%r%1kWnM)*4_SVx9@99bFxuY!LF z-vPe}zYh;{VrZxnb_Q>N+u*0*1DqL3a>mKQU0hfSab+mZm8D)JPr|{I9j!{XBXx?9 z?ded8J>5*TCz;Bg3@UpcTCH-R!zwA=1YT)U>X$B|sC1r@gqs3rOnLyV0o%bh;0cha z1IQl?16oi9j9>;ZgJoc?TA0nBwy6E-Aqds@Q=+D`E(du$s0ACr8E^*-&G4tGU@bTS zu9_gSOh0l5J|GCZ3p}!XC>&&fQZNC`$qFJb zq}|{&kd_Dw@S?yHFA4?4LfJ$fq%ZNHDliW;fzQDia6^1Rc&HEEDd|H$i)D^plyJn1 z;HYCHM^2?2)q*jjINDjpk?$Ce+Q8*J{24l151UBqVzHvt#_m?dM9er zJCo@ceIb>9&~N=>75T^bz<3Yy&$%GiU{e!METPI1jFXo8T^Z z1pW&o26u7-9>5RCL70JpyQU@F^QVShM8;pLf=FuQPqMz{LA2yIl?S@A(2*l<0!Qw^ z7sx?4P=G|Bn$X!N`?Y6OaWtyxmkBtkvL-pq_BQ$Dj-fMPRi2dj#vn8^RFuq+Yl@wi zx8Zk2Qdxr7aek6%`D`Ru4d$Tjog8wwHg)lq(%q5 zsWC&NGc3@F88#@N(E)AGAgR#bB!@X<+Mq8o<(yEZ5>*E+O}B{I2Hlor;~eSptPW%= z)RFdNkqpyktDu=sN6OFEA>Yb2L*q3T=(HRgG&r{ddNG$AIogmXhn~pOLE|-MlV}!E zZJkw4;v!sxotdE+2)Z|)TsbN%kV6{_RL~;@Iw%#Ip-F`n==?$(bXQ@AsN^POIW)OQ z1)W=@gT`w*py9>jj*m#O+}*^{j$$1OY>64_ThbwB>Lp|y6l)aK0`04@iQ3_TGZ-oN z?TonGShdnHl*xR7Ttw3-U&&jGD*TkpEiV0WBL#UYv=}zajVH z=%7ySB_m0N3OTnz2d%F#Lp}8tXuQS-U89%x7Jihf-uMbsk~cnum2#+QJo(|$8OR^m zNdC@bGc8f1 zM8|f`iU(ft{RgREw=YgzoW;)=H2QV>;-J@7&nP@A?0VWBjw2uKkrYdGP93^{)?9HkI=$V^zN_sjO)`e=)W~s%U!H^rYz} zuZe5#%uBzsddJHdli0BAseFeu*j;j1QPuWn?DO!4Uw;tj;}P^EAa?Qj-0fZ@c^4%d^1$P_)w$`4NdSG)TMDJ;m3}+H&eoInD8JjoLN%+R;tY zJE?XPg4;CX4n;ezaCeb@y5(5g)K6a(xR01UX`H)FcD;1u@Rg>`CrhS}d6pZnZ12L+ z{Un}oI~&y_Xwk^rC($$3Tnyf%J(@V|?5_9TNn2jQD6iL>+ecUBe^IyO$dkXVc336T ze(8S9F5S;*-N1@j+J7wz%s#c&v?vG6Q+Ak+e>({bj z_TnQ&-VImh#Qyv70{y$IQ!J*ad1odC{qVt~0d}jr^RK+WuKvi~$fI+H9?UK>yjoCh zEaQ`yb&q|XuKOhU(%P75rfT*1&tlW}mu}b*;j=Pg{lNZd_oa6%m#X5`rNchCUJ*9F zBI!qsa&pndv`Mgs2`H*qxM z-EDIjKWn_m9Kkyw`Vu)eE!seZkMyq z&-%sGk=>7Jqnyh)J!{|TH+ou9-fdo9J##=eGh#W~QG&b$QMWz?Kf*F+rwGqU*M0%X@CmS6Zu^lGwoRcY$NHkzt|r+hsb3{{cPt#j*eZ delta 4196 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 S)%_)6k4;okV?4Q1XZ1g}HPEL3 diff --git a/Tools/Exporter/ConfigTable/Run.bat b/Tools/Exporter/ConfigTable/Run.bat index d756e175..e166f0ec 100644 --- a/Tools/Exporter/ConfigTable/Run.bat +++ b/Tools/Exporter/ConfigTable/Run.bat @@ -9,13 +9,13 @@ set /p choice=Please select an option: if "%choice%"=="1" ( echo Client - dotnet Exporter.dll --ExportPlatform 1 + dotnet Fantasy.Tools.ConfigTable.dll --ExportPlatform 1 ) else if "%choice%"=="2" ( echo Server - dotnet Exporter.dll --ExportPlatform 2 + dotnet Fantasy.Tools.ConfigTable.dll --ExportPlatform 2 ) else if "%choice%"=="3" ( echo All - dotnet Exporter.dll --ExportPlatform 3 + dotnet Fantasy.Tools.ConfigTable.dll --ExportPlatform 3 ) else ( echo Invalid option ) diff --git a/Tools/Exporter/NetworkProtocol/ExporterSettings.json b/Tools/Exporter/NetworkProtocol/ExporterSettings.json old mode 100755 new mode 100644 diff --git a/Tools/Exporter/NetworkProtocol/Fantasy.Tools.NetworkProtocol.dll b/Tools/Exporter/NetworkProtocol/Fantasy.Tools.NetworkProtocol.dll old mode 100755 new mode 100644 index 014a40f85b6cf0fe64af48c255cba82b5bb18cb2..45004ebb7fec1c7570c4d1cb3afad061b62ed9b7 GIT binary patch literal 45568 zcmeHw34B}CvG?37>1wkTOR_D;tDKNTi5+DRPDnzWjTo{!frQObY$b7GTSk(B;E39+ zr7VS#rVzT2LR-24ZFwzFXvqWG@_?4MP#$gJB`wSAD{Wubuk_LI{b$a-(v|H5+V}PS zzTfZr44QM!oH=vm%*>gy=w4;*xi^!8h@AMm^A6F2NcnH6z>|X^R0kR!4$uSMXB!{X z);!y|d3Sdv+MiDCN+)`wor%7_R5rRJ8BGuLMZ5c=E7rG1dsAJ>cxkEc6qEIal|*Ya z2c@3-^;fOlj?x73Ycq*H4UA7=jVF;t@i~eQOBY3=E4h&q`8lPiCV0*|X#3SfW%7R^ zHH%Duzb`#Ow4O6ZiFypqjQrE61gN_oC)zx+>SX08k;hi=L3y>U9M2{%&7xfLDFD>T zSTP>^UzBKjJe^5*0x7Z`MTVK)gOBZRDHIY{3gN~81s*g4W94(iF3u^HTmehS7~Ee~WXMK7h2Fp4_z@oT7tu@m&zOeUOGuMdKU zbJ_&mk&_G%kX9ii0|Z1<2+8ar-4Vm2GDvsEAQe(q%){w43PVRz!5=MyG>&3!pnV21 zXlXP=c5Ih|iwiYe@HdegqDs5vNI@2)kaoNR89k)w(Rbc?A9X11ZlB%|=_;cT=?&vL zObMz@L_>!X#VBbakCFpp=D8DuxXz3hUB;jo!`DQHsxQTO`LD8CdWpfmjG=0@sjRUf zpe|=+tqlRKIx8E(5k+4orE;@WFT`e{L8`oUiZIHhdb6rgRhgv;QdOnsCaNm4bc$4s zS5@#i^z1cDa6T}sR#j6}m05!4p{hnz!5rMmEJ4|*s#R4@s>&?E=bXwGI#oh1uu_m> zv*0FrY&KwQ4uDc0?4=WYlASV`8DO;Zp(B$!FtcwDA<3@RS`ga_lm12TaJ7ZeYklbB%~I$-C987a&bpPqtfzR0%YTIF%g z?`|GPdK%8qA6o!)85}Eyl7Xp|f-QX|O%0yZcw|b+8(WAp>%} zNT@h_M{>x@C4JC6|~UQNq&exXObfpWR<|*VvCq)+LDIjnLR*F(sNJ}w9E73 z6QG4V20_lm zqM$RfmF4!{)IIxIJ$5=s{p1dND#PBU=|NA>dnoLqpilAeJA!`2qa^4HmN;YOEHwqa z;NcB=gB~z>TFDxKte7=2hhj@vE}1@Je`u2jjyh``&^7cnB|n0a%F?E=2YovsV60VG zp_5WC_wa`DH3uR3acmD#8o9kctU7mV8;`KQ^9Ny9 z&>4LPtvY@XHjL<5@XI~t23>tyefffc0!dfO8IC)lFZcAXQsvPSBkXCSpa=fvpl^ap zDfb;6tp4DWzUap3AAiOly>;HTH6=LeJ_-j3yDGy*(@L15jTySnW!Nxo2SBiE zI~P1a89{f#XEc=VFdD*Lh;lXOM!WWIetoMi=&IVv#x$U5BWUDh^8`K9KM&c$m^rF{g+=}eJ&SEr8w{2FaNU?r55Ie-IT3f#8_ajAT{z>WIT;8v@Z+ZGWhtl z{>Jy+x^l|$FaB}O$;P#s$JJ*WSOX8Nan!(SFtAB7us!ESr@ryiO?ys0w0rDB+aqIZ zZ67fr%O8^c&#)HL+F9LAkg1H~fNk zSnT_;Gm7fez6tHw_tCaVnpr$eJi=NNFI=h;t0-1xwThaV!U{aks*wyx5g!$)WPm_e zQwYfbfe5D%k^usDtJ zMov9*CT9^=oH8Gb^nV&=Jk2c?~?=Rb`|$N#CjuhmmUMqJbcc=!FfE zsW0^Bpr2sxfT#%_Z3a;eih^R44s3fjj$%f0r6j2>AWZw*P}|waHE9tjCP?WL#+<_e zxaB%9RqBml9veBR(Rq0sAQeUN2E|L{|v48UFvNPKu>~FixG|JzpBtbhr|URhu$fMxpx8~5UO1)#uEiG?m`P) znkX?~b%?>x5`#md2qH*xRn!Mr9qGv)%kN-*v}2fWhwv-y1ZfUHHyh5*H-v|wA;Ww_ z#9wJBNY#*Igj4o773^14H)0EZAZ!PjvOj+R~;(VJ-i(;N*rvm+Nz*4lR$OY z6>_DQu~v4VL?Kte8S7NJ^qF?FE8selO%mC<8GDZshy~*GIvYtUiFT8PeM5A-o&RPV zl_$?WZNqx=*h_8L0_}%vSk;e{htW_HvG?;)8&!eh-8QUhORp>nyD8+Us*3G|%ps2} zwoAtBNk7QMyHz3Rj+M$dJ+VE (ZM`B!LKD|U?h2Q$z@fYb1SZaMa7Y@aTatKPGH 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 W|3(cwrv5!c54PX`|L^}j4g7B=+}SVy literal 45568 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 YpZ`y4;9>PQ5O3mX_y0cszth0~15R8G5dZ)H diff --git a/Tools/Exporter/NetworkProtocol/Fantasy.Tools.NetworkProtocol.pdb b/Tools/Exporter/NetworkProtocol/Fantasy.Tools.NetworkProtocol.pdb old mode 100755 new mode 100644 index a64337f928965b1530e8caa3e9a397ea8f9275ce..3f8b4ad6526a11fb722f2fc1613c3c6a5ffb0892 GIT binary patch delta 3365 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 e>BTW&e{w4wH(gtb1DT+V(); // 添加心跳组件给Session。 // Start(2000)就是2000毫秒。 - Session.AddComponent().Start(2000); - - Session.Send(new C2G_TestMessage() + _session.AddComponent().Start(2000); + + _session.Send(new C2G_TestMessage() { Tag = "111111111111" }); diff --git a/examples/Console/Fantasy.Console.Main/Program.cs b/examples/Console/Fantasy.Console.Main/Program.cs index d532db7e..7d98c30f 100644 --- a/examples/Console/Fantasy.Console.Main/Program.cs +++ b/examples/Console/Fantasy.Console.Main/Program.cs @@ -1,10 +1,7 @@ -// See https://aka.ms/new-console-template for more information - -using Fantasy; +using Fantasy; using Fantasy.Console.Entity; - Fantasy.Log.Register(new ConsoleLog()); Fantasy.Platform.Console.Entry.Initialize(typeof(Fantasy.Console.Entity.Entry).Assembly); - -Thread.Sleep(3000); -await Entry.Show(); \ No newline at end of file +Fantasy.Platform.Console.Entry.StartUpdate(); +Entry.Show().Coroutine(); +Console.ReadKey(); \ No newline at end of file diff --git a/examples/Console/Fantasy.Console.sln.DotSettings.user b/examples/Console/Fantasy.Console.sln.DotSettings.user new file mode 100644 index 00000000..37d33c7a --- /dev/null +++ b/examples/Console/Fantasy.Console.sln.DotSettings.user @@ -0,0 +1,2 @@ + + ForceIncluded \ No newline at end of file diff --git a/examples/Server/Fantasy.Generator/Class1.cs b/examples/Server/Fantasy.Generator/Class1.cs deleted file mode 100644 index 0248611a..00000000 --- a/examples/Server/Fantasy.Generator/Class1.cs +++ /dev/null @@ -1,8 +0,0 @@ -using System; - -namespace Fantasy.Generator -{ - public class Class1 - { - } -} \ No newline at end of file diff --git a/examples/Server/Fantasy.Generator/Fantasy.Generator.csproj b/examples/Server/Fantasy.Generator/Fantasy.Generator.csproj deleted file mode 100644 index 1b35273c..00000000 --- a/examples/Server/Fantasy.Generator/Fantasy.Generator.csproj +++ /dev/null @@ -1,8 +0,0 @@ - - - - netstandard2.0 - 11 - - -