From 144ba9f222d7552643875fdc820eb61deaedff91 Mon Sep 17 00:00:00 2001 From: ALEXTANG <574809918@qq.com> Date: Fri, 21 Jul 2023 14:32:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84AddressableManageComponent?= =?UTF-8?q?=E4=B8=8EClientNetworkComponent?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 完善AddressableManageComponent与ClientNetworkComponent --- .../DotNet/Core/Entitas/Scene/Scene.cs | 16 ++++++++++++++-- .../Network/Entity/ClientNetworkComponent.cs | 3 --- .../TCP/Client/TCPClientNetwork.cs | 1 + 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/Assets/GameScripts/DotNet/Core/Entitas/Scene/Scene.cs b/Assets/GameScripts/DotNet/Core/Entitas/Scene/Scene.cs index ed565b93..b39d28f1 100644 --- a/Assets/GameScripts/DotNet/Core/Entitas/Scene/Scene.cs +++ b/Assets/GameScripts/DotNet/Core/Entitas/Scene/Scene.cs @@ -111,8 +111,20 @@ namespace TEngine if (runEvent && sceneInfo.SceneType != null) { - // 没有SceneType目前只有代码创建的Scene才会这样、目前只有Server的Scene是这样 - await EventSystem.Instance.PublishAsync(new OnCreateScene(sceneInfo, onSetNetworkComplete)); + switch (sceneInfo.SceneType) + { + case "Addressable": + { + scene.AddComponent(); + break; + } + default: + { + // 没有SceneType目前只有代码创建的Scene才会这样、目前只有Server的Scene是这样 + await EventSystem.Instance.PublishAsync(new OnCreateScene(sceneInfo, onSetNetworkComplete)); + break; + } + } } Scenes.Add(scene); diff --git a/Assets/GameScripts/DotNet/Core/Network/Entity/ClientNetworkComponent.cs b/Assets/GameScripts/DotNet/Core/Network/Entity/ClientNetworkComponent.cs index 7a2e6000..1ce5efa5 100644 --- a/Assets/GameScripts/DotNet/Core/Network/Entity/ClientNetworkComponent.cs +++ b/Assets/GameScripts/DotNet/Core/Network/Entity/ClientNetworkComponent.cs @@ -9,7 +9,6 @@ namespace TEngine.Core.Network { private AClientNetwork Network { get; set; } public Session Session { get; private set; } - private Action _onConnectDisconnect; public void Initialize(NetworkProtocolType networkProtocolType, NetworkTarget networkTarget) { @@ -39,7 +38,6 @@ namespace TEngine.Core.Network throw new NotSupportedException("Network is null or isDisposed"); } - _onConnectDisconnect = onConnectDisconnect; Network.Connect(remoteEndPoint, onConnectComplete, onConnectFail, onConnectDisconnect, connectTimeout); Session = Session.Create(Network); } @@ -53,7 +51,6 @@ namespace TEngine.Core.Network } Session = null; - _onConnectDisconnect?.Invoke(); base.Dispose(); } } diff --git a/Assets/GameScripts/DotNet/Core/Network/NetworkProtocol/TCP/Client/TCPClientNetwork.cs b/Assets/GameScripts/DotNet/Core/Network/NetworkProtocol/TCP/Client/TCPClientNetwork.cs index b88c2c9d..da60ac21 100644 --- a/Assets/GameScripts/DotNet/Core/Network/NetworkProtocol/TCP/Client/TCPClientNetwork.cs +++ b/Assets/GameScripts/DotNet/Core/Network/NetworkProtocol/TCP/Client/TCPClientNetwork.cs @@ -41,6 +41,7 @@ namespace TEngine.Core.Network _isInit = true; OnConnectFail = onConnectFail; OnConnectComplete = onConnectComplete; + OnConnectDisconnect = onConnectDisconnect; ChannelId = 0xC0000000 | (uint) new Random().Next(); _sendAction = (rpcId, routeTypeOpCode, routeId, memoryStream, message) =>