From 4368c0a2b8e5a8b7a7e0a18d891e16f140b840be Mon Sep 17 00:00:00 2001 From: ALEXTANG <574809918@qq.com> Date: Tue, 30 Aug 2022 17:00:13 +0800 Subject: [PATCH] Update Update --- .../Event/EventArgs/NetBaseEventArgs.cs | 19 ---- .../Event/EventArgs/NetBaseEventArgs.cs.meta | 11 --- ...osedEventArgs.cs => NetworkClosedEvent.cs} | 59 ++++++++++++ ...rgs.cs.meta => NetworkClosedEvent.cs.meta} | 0 .../EventArgs/NetworkConnectedEventArgs.cs | 68 ++++++++++++++ ...ventArgs.cs => NetworkCustomErrorEvent.cs} | 71 ++++++++++++++ ...s.meta => NetworkCustomErrorEvent.cs.meta} | 0 ...ErrorEventArgs.cs => NetworkErrorEvent.cs} | 93 +++++++++++++++++++ ...Args.cs.meta => NetworkErrorEvent.cs.meta} | 0 ...ntArgs.cs => NetworkMissHeartBeatEvent.cs} | 71 ++++++++++++++ ...meta => NetworkMissHeartBeatEvent.cs.meta} | 0 .../Core/NetWork/Event/EventManager.cs | 4 +- .../Core/NetWork/Event/EventPool/EventPool.cs | 2 +- .../Core/NetWork/Event/IEventManager.cs | 12 +++ .../Runtime/Core/NetWork/Event/NetEvent.cs | 20 +++- .../NetWork/Helper/NetworkChannelHelper.cs | 30 +++--- .../Runtime/Core/NetWork/Helper/ProtoUtils.cs | 2 +- .../Scripts/Runtime/Core/NetWork/Network.cs | 48 +++++----- 18 files changed, 437 insertions(+), 73 deletions(-) delete mode 100644 Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetBaseEventArgs.cs delete mode 100644 Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetBaseEventArgs.cs.meta rename Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/{NetworkClosedEventArgs.cs => NetworkClosedEvent.cs} (51%) rename Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/{NetworkClosedEventArgs.cs.meta => NetworkClosedEvent.cs.meta} (100%) rename Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/{NetworkCustomErrorEventArgs.cs => NetworkCustomErrorEvent.cs} (52%) rename Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/{NetworkCustomErrorEventArgs.cs.meta => NetworkCustomErrorEvent.cs.meta} (100%) rename Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/{NetworkErrorEventArgs.cs => NetworkErrorEvent.cs} (54%) rename Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/{NetworkErrorEventArgs.cs.meta => NetworkErrorEvent.cs.meta} (100%) rename Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/{NetworkMissHeartBeatEventArgs.cs => NetworkMissHeartBeatEvent.cs} (51%) rename Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/{NetworkMissHeartBeatEventArgs.cs.meta => NetworkMissHeartBeatEvent.cs.meta} (100%) diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetBaseEventArgs.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetBaseEventArgs.cs deleted file mode 100644 index aed94370..00000000 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetBaseEventArgs.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System; - -namespace TEngine.Runtime -{ - public abstract class NetBaseEventArgs : EventArgs, IMemory - { - /// - /// 初始化构造函数 - /// - public NetBaseEventArgs() - { - } - - /// - /// 清理引用。 - /// - public abstract void Clear(); - } -} \ No newline at end of file diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetBaseEventArgs.cs.meta b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetBaseEventArgs.cs.meta deleted file mode 100644 index 5ea01426..00000000 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetBaseEventArgs.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dd227169d1cedc64ba3c1454671bca7d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkClosedEventArgs.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkClosedEvent.cs similarity index 51% rename from Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkClosedEventArgs.cs rename to Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkClosedEvent.cs index 0f7b5d7f..67955a71 100644 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkClosedEventArgs.cs +++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkClosedEvent.cs @@ -58,4 +58,63 @@ NetworkChannel = null; } } + + /// + /// 网络连接关闭事件。 + /// + public sealed class NetworkClosedEvent : GameEventArgs + { + /// + /// 网络连接关闭事件编号。 + /// + public static readonly int EventId = typeof(NetworkClosedEvent).GetHashCode(); + + /// + /// 初始化网络连接关闭事件的新实例。 + /// + public NetworkClosedEvent() + { + NetworkChannel = null; + } + + /// + /// 获取网络连接关闭事件编号。 + /// + public override int Id + { + get + { + return EventId; + } + } + + /// + /// 获取网络频道。 + /// + public INetworkChannel NetworkChannel + { + get; + private set; + } + + /// + /// 创建网络连接关闭事件。 + /// + /// 内部事件。 + /// 创建的网络连接关闭事件。 + public static NetworkClosedEvent Create(NetworkClosedEventArgs e) + { + NetworkClosedEvent networkClosedEventArgs = MemoryPool.Acquire(); + networkClosedEventArgs.NetworkChannel = e.NetworkChannel; + return networkClosedEventArgs; + } + + /// + /// 清理网络连接关闭事件。 + /// + public override void Clear() + { + NetworkChannel = null; + } + } } \ No newline at end of file diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkClosedEventArgs.cs.meta b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkClosedEvent.cs.meta similarity index 100% rename from Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkClosedEventArgs.cs.meta rename to Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkClosedEvent.cs.meta diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkConnectedEventArgs.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkConnectedEventArgs.cs index aa764289..90bd741d 100644 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkConnectedEventArgs.cs +++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkConnectedEventArgs.cs @@ -71,4 +71,72 @@ UserData = null; } } + + public sealed class NetworkConnectedEvent : GameEventArgs + { + /// + /// 网络连接成功事件编号。 + /// + public static readonly int EventId = typeof(NetworkConnectedEvent).GetHashCode(); + + /// + /// 初始化网络连接成功事件的新实例。 + /// + public NetworkConnectedEvent() + { + NetworkChannel = null; + UserData = null; + } + + /// + /// 获取网络连接成功事件编号。 + /// + public override int Id + { + get + { + return EventId; + } + } + + /// + /// 获取网络频道。 + /// + public INetworkChannel NetworkChannel + { + get; + private set; + } + + /// + /// 获取用户自定义数据。 + /// + public object UserData + { + get; + private set; + } + + /// + /// 创建网络连接成功事件。 + /// + /// 内部事件。 + /// 创建的网络连接成功事件。 + public static NetworkConnectedEvent Create(NetworkConnectedEventArgs e) + { + NetworkConnectedEvent networkConnectedEventArgs = MemoryPool.Acquire(); + networkConnectedEventArgs.NetworkChannel = e.NetworkChannel; + networkConnectedEventArgs.UserData = e.UserData; + return networkConnectedEventArgs; + } + + /// + /// 清理网络连接成功事件。 + /// + public override void Clear() + { + NetworkChannel = null; + UserData = null; + } + } } \ No newline at end of file diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkCustomErrorEventArgs.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkCustomErrorEvent.cs similarity index 52% rename from Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkCustomErrorEventArgs.cs rename to Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkCustomErrorEvent.cs index b63a9126..9963f1be 100644 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkCustomErrorEventArgs.cs +++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkCustomErrorEvent.cs @@ -71,4 +71,75 @@ CustomErrorData = null; } } + + /// + /// 用户自定义网络错误事件。 + /// + public sealed class NetworkCustomErrorEvent : GameEventArgs + { + /// + /// 用户自定义网络错误事件编号。 + /// + public static readonly int EventId = typeof(NetworkCustomErrorEvent).GetHashCode(); + + /// + /// 初始化用户自定义网络错误事件的新实例。 + /// + public NetworkCustomErrorEvent() + { + NetworkChannel = null; + CustomErrorData = null; + } + + /// + /// 获取用户自定义网络错误事件编号。 + /// + public override int Id + { + get + { + return EventId; + } + } + + /// + /// 获取网络频道。 + /// + public INetworkChannel NetworkChannel + { + get; + private set; + } + + /// + /// 获取用户自定义错误数据。 + /// + public object CustomErrorData + { + get; + private set; + } + + /// + /// 创建用户自定义网络错误事件。 + /// + /// 内部事件。 + /// 创建的用户自定义网络错误事件。 + public static NetworkCustomErrorEvent Create(NetworkCustomErrorEventArgs e) + { + NetworkCustomErrorEvent networkCustomErrorEventArgs = MemoryPool.Acquire(); + networkCustomErrorEventArgs.NetworkChannel = e.NetworkChannel; + networkCustomErrorEventArgs.CustomErrorData = e.CustomErrorData; + return networkCustomErrorEventArgs; + } + + /// + /// 清理用户自定义网络错误事件。 + /// + public override void Clear() + { + NetworkChannel = null; + CustomErrorData = null; + } + } } \ No newline at end of file diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkCustomErrorEventArgs.cs.meta b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkCustomErrorEvent.cs.meta similarity index 100% rename from Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkCustomErrorEventArgs.cs.meta rename to Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkCustomErrorEvent.cs.meta diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkErrorEventArgs.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkErrorEvent.cs similarity index 54% rename from Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkErrorEventArgs.cs rename to Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkErrorEvent.cs index cb3f073e..d89a65bd 100644 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkErrorEventArgs.cs +++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkErrorEvent.cs @@ -99,4 +99,97 @@ namespace TEngine.Runtime ErrorMessage = null; } } + + /// + /// 网络错误事件。 + /// + public sealed class NetworkErrorEvent : GameEventArgs + { + /// + /// 网络错误事件编号。 + /// + public static readonly int EventId = typeof(NetworkErrorEvent).GetHashCode(); + + /// + /// 初始化网络错误事件的新实例。 + /// + public NetworkErrorEvent() + { + NetworkChannel = null; + ErrorCode = NetworkErrorCode.Unknown; + ErrorMessage = null; + } + + /// + /// 获取网络错误事件编号。 + /// + public override int Id + { + get + { + return EventId; + } + } + + /// + /// 获取网络频道。 + /// + public INetworkChannel NetworkChannel + { + get; + private set; + } + + /// + /// 获取错误码。 + /// + public NetworkErrorCode ErrorCode + { + get; + private set; + } + + /// + /// 获取 Socket 错误码。 + /// + public SocketError SocketErrorCode + { + get; + private set; + } + + /// + /// 获取错误信息。 + /// + public string ErrorMessage + { + get; + private set; + } + + /// + /// 创建网络错误事件。 + /// + /// 内部事件。 + /// 创建的网络错误事件。 + public static NetworkErrorEvent Create(NetworkErrorEventArgs e) + { + NetworkErrorEvent networkErrorEventArgs = MemoryPool.Acquire(); + networkErrorEventArgs.NetworkChannel = e.NetworkChannel; + networkErrorEventArgs.ErrorCode = e.ErrorCode; + networkErrorEventArgs.SocketErrorCode = e.SocketErrorCode; + networkErrorEventArgs.ErrorMessage = e.ErrorMessage; + return networkErrorEventArgs; + } + + /// + /// 清理网络错误事件。 + /// + public override void Clear() + { + NetworkChannel = null; + ErrorCode = NetworkErrorCode.Unknown; + ErrorMessage = null; + } + } } \ No newline at end of file diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkErrorEventArgs.cs.meta b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkErrorEvent.cs.meta similarity index 100% rename from Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkErrorEventArgs.cs.meta rename to Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkErrorEvent.cs.meta diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkMissHeartBeatEventArgs.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkMissHeartBeatEvent.cs similarity index 51% rename from Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkMissHeartBeatEventArgs.cs rename to Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkMissHeartBeatEvent.cs index bf189d6d..e035b266 100644 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkMissHeartBeatEventArgs.cs +++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkMissHeartBeatEvent.cs @@ -71,4 +71,75 @@ MissCount = 0; } } + + /// + /// 网络心跳包丢失事件。 + /// + public sealed class NetworkMissHeartBeatEvent : GameEventArgs + { + /// + /// 网络心跳包丢失事件编号。 + /// + public static readonly int EventId = typeof(NetworkMissHeartBeatEvent).GetHashCode(); + + /// + /// 初始化网络心跳包丢失事件的新实例。 + /// + public NetworkMissHeartBeatEvent() + { + NetworkChannel = null; + MissCount = 0; + } + + /// + /// 获取网络心跳包丢失事件编号。 + /// + public override int Id + { + get + { + return EventId; + } + } + + /// + /// 获取网络频道。 + /// + public INetworkChannel NetworkChannel + { + get; + private set; + } + + /// + /// 获取心跳包已丢失次数。 + /// + public int MissCount + { + get; + private set; + } + + /// + /// 创建网络心跳包丢失事件。 + /// + /// 内部事件。 + /// 创建的网络心跳包丢失事件。 + public static NetworkMissHeartBeatEvent Create(NetworkMissHeartBeatEventArgs e) + { + NetworkMissHeartBeatEvent networkMissHeartBeatEventArgs = MemoryPool.Acquire(); + networkMissHeartBeatEventArgs.NetworkChannel = e.NetworkChannel; + networkMissHeartBeatEventArgs.MissCount = e.MissCount; + return networkMissHeartBeatEventArgs; + } + + /// + /// 清理网络心跳包丢失事件。 + /// + public override void Clear() + { + NetworkChannel = null; + MissCount = 0; + } + } } \ No newline at end of file diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkMissHeartBeatEventArgs.cs.meta b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkMissHeartBeatEvent.cs.meta similarity index 100% rename from Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkMissHeartBeatEventArgs.cs.meta rename to Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventArgs/NetworkMissHeartBeatEvent.cs.meta diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventManager.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventManager.cs index 6dc69906..1e38928d 100644 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventManager.cs +++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventManager.cs @@ -44,7 +44,7 @@ namespace TEngine.Runtime /// /// 逻辑流逝时间,以秒为单位。 /// 真实流逝时间,以秒为单位。 - internal void Update(float elapseSeconds, float realElapseSeconds) + public void Update(float elapseSeconds, float realElapseSeconds) { m_EventPool.Update(elapseSeconds, realElapseSeconds); } @@ -52,7 +52,7 @@ namespace TEngine.Runtime /// /// 关闭并清理事件管理器。 /// - internal void Shutdown() + public void Shutdown() { m_EventPool.Shutdown(); } diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventPool/EventPool.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventPool/EventPool.cs index a7c20998..1d751a87 100644 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventPool/EventPool.cs +++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/EventPool/EventPool.cs @@ -188,7 +188,7 @@ namespace TEngine.Runtime } } - if (!m_EventHandlers.Remove(id, handler)) + if (m_EventHandlers.Count >=0 && !m_EventHandlers.Remove(id, handler)) { throw new Exception(Utility.Text.Format("Event '{0}' not exists specified handler.", id)); } diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/IEventManager.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/IEventManager.cs index d6075ed4..e4f53c67 100644 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/IEventManager.cs +++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/IEventManager.cs @@ -71,5 +71,17 @@ namespace TEngine.Runtime /// 事件源。 /// 事件参数。 void FireNow(object sender, GameEventArgs e); + + /// + /// 事件管理器轮询。 + /// + /// 逻辑流逝时间,以秒为单位。 + /// 真实流逝时间,以秒为单位。 + void Update(float elapseSeconds, float realElapseSeconds); + + /// + /// 关闭并清理事件管理器。 + /// + void Shutdown(); } } diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/NetEvent.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/NetEvent.cs index b12813cf..f3984e43 100644 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/NetEvent.cs +++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Event/NetEvent.cs @@ -1,4 +1,5 @@ using System; +using UnityEngine; namespace TEngine.Runtime { @@ -38,7 +39,24 @@ namespace TEngine.Runtime Log.Fatal("Event manager is invalid."); return; } - }/// + } + + public override void Update() + { + base.Update(); + + if (m_EventManager != null) + { + m_EventManager.Update(Time.deltaTime, Time.unscaledDeltaTime);; + } + } + + public override void Destroy() + { + base.Destroy(); + } + + /// /// 获取事件处理函数的数量。 /// /// 事件类型编号。 diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Helper/NetworkChannelHelper.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Helper/NetworkChannelHelper.cs index 23522103..cb52245e 100644 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Helper/NetworkChannelHelper.cs +++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Helper/NetworkChannelHelper.cs @@ -57,11 +57,11 @@ namespace TEngine.Runtime } } - NetEvent.Instance.Subscribe(NetworkConnectedEventArgs.EventId, OnNetworkConnected); - NetEvent.Instance.Subscribe(NetworkClosedEventArgs.EventId, OnNetworkClosed); - NetEvent.Instance.Subscribe(NetworkMissHeartBeatEventArgs.EventId, OnNetworkMissHeartBeat); - NetEvent.Instance.Subscribe(NetworkErrorEventArgs.EventId, OnNetworkError); - NetEvent.Instance.Subscribe(NetworkCustomErrorEventArgs.EventId, OnNetworkCustomError); + NetEvent.Instance.Subscribe(NetworkConnectedEvent.EventId, OnNetworkConnected); + NetEvent.Instance.Subscribe(NetworkClosedEvent.EventId, OnNetworkClosed); + NetEvent.Instance.Subscribe(NetworkMissHeartBeatEvent.EventId, OnNetworkMissHeartBeat); + NetEvent.Instance.Subscribe(NetworkErrorEvent.EventId, OnNetworkError); + NetEvent.Instance.Subscribe(NetworkCustomErrorEvent.EventId, OnNetworkCustomError); } /// @@ -182,11 +182,11 @@ namespace TEngine.Runtime /// public void Shutdown() { - NetEvent.Instance.Unsubscribe(NetworkConnectedEventArgs.EventId, OnNetworkConnected); - NetEvent.Instance.Unsubscribe(NetworkClosedEventArgs.EventId, OnNetworkClosed); - NetEvent.Instance.Unsubscribe(NetworkMissHeartBeatEventArgs.EventId, OnNetworkMissHeartBeat); - NetEvent.Instance.Unsubscribe(NetworkErrorEventArgs.EventId, OnNetworkError); - NetEvent.Instance.Unsubscribe(NetworkCustomErrorEventArgs.EventId, OnNetworkCustomError); + NetEvent.Instance.Unsubscribe(NetworkConnectedEvent.EventId, OnNetworkConnected); + NetEvent.Instance.Unsubscribe(NetworkClosedEvent.EventId, OnNetworkClosed); + NetEvent.Instance.Unsubscribe(NetworkMissHeartBeatEvent.EventId, OnNetworkMissHeartBeat); + NetEvent.Instance.Unsubscribe(NetworkErrorEvent.EventId, OnNetworkError); + NetEvent.Instance.Unsubscribe(NetworkCustomErrorEvent.EventId, OnNetworkCustomError); m_NetworkChannel = null; } @@ -194,7 +194,7 @@ namespace TEngine.Runtime #region Handle private void OnNetworkConnected(object sender, GameEventArgs e) { - NetworkConnectedEventArgs ne = (NetworkConnectedEventArgs)e; + NetworkConnectedEvent ne = (NetworkConnectedEvent)e; if (ne.NetworkChannel != m_NetworkChannel) { return; @@ -204,7 +204,7 @@ namespace TEngine.Runtime private void OnNetworkClosed(object sender, GameEventArgs e) { - NetworkClosedEventArgs ne = (NetworkClosedEventArgs)e; + NetworkClosedEvent ne = (NetworkClosedEvent)e; if (ne.NetworkChannel != m_NetworkChannel) { return; @@ -214,7 +214,7 @@ namespace TEngine.Runtime private void OnNetworkMissHeartBeat(object sender, GameEventArgs e) { - NetworkMissHeartBeatEventArgs ne = (NetworkMissHeartBeatEventArgs)e; + NetworkMissHeartBeatEvent ne = (NetworkMissHeartBeatEvent)e; if (ne.NetworkChannel != m_NetworkChannel) { return; @@ -231,7 +231,7 @@ namespace TEngine.Runtime private void OnNetworkError(object sender, GameEventArgs e) { - NetworkErrorEventArgs ne = (NetworkErrorEventArgs)e; + NetworkErrorEvent ne = (NetworkErrorEvent)e; if (ne.NetworkChannel != m_NetworkChannel) { return; @@ -244,7 +244,7 @@ namespace TEngine.Runtime private void OnNetworkCustomError(object sender, GameEventArgs e) { - NetworkCustomErrorEventArgs ne = (NetworkCustomErrorEventArgs)e; + NetworkCustomErrorEvent ne = (NetworkCustomErrorEvent)e; if (ne.NetworkChannel != m_NetworkChannel) { return; diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Helper/ProtoUtils.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Helper/ProtoUtils.cs index af5d18da..d21d6413 100644 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Helper/ProtoUtils.cs +++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Helper/ProtoUtils.cs @@ -41,7 +41,7 @@ namespace TEngine.Runtime } catch (IOException ex) { - Log.Error(($"[DeSerialize] 错误:{ex.Message}, {ex.Data["StackTrace"]}")); + Log.Error(($"[DeSerialize] Error:{ex.Message}, {ex.Data["StackTrace"]}")); return null; } } diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Network.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Network.cs index 852eeee5..090a648b 100644 --- a/Assets/TEngine/Scripts/Runtime/Core/NetWork/Network.cs +++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/Network.cs @@ -34,6 +34,26 @@ namespace TEngine.Runtime base.OnLoad(); GameEventMgr.Instance.AddEventListener(TEngineEvent.OnStartGame,OnStartGame); + + m_NetworkManager = new NetworkManager(); + NetworkManager = m_NetworkManager as NetworkManager; + if (m_NetworkManager == null) + { + Log.Fatal("Network manager is invalid."); + return; + } + + m_NetworkManager.NetworkConnected += OnNetworkConnected; + m_NetworkManager.NetworkClosed += OnNetworkClosed; + m_NetworkManager.NetworkMissHeartBeat += OnNetworkMissHeartBeat; + m_NetworkManager.NetworkError += OnNetworkError; + m_NetworkManager.NetworkCustomError += OnNetworkCustomError; + + if (NetEvent.Instance == null) + { + Log.Fatal("Event component is invalid."); + return; + } } private void Update() @@ -55,25 +75,7 @@ namespace TEngine.Runtime private void OnStartGame() { - m_NetworkManager = new NetworkManager(); - NetworkManager = m_NetworkManager as NetworkManager; - if (m_NetworkManager == null) - { - Log.Fatal("Network manager is invalid."); - return; - } - - m_NetworkManager.NetworkConnected += OnNetworkConnected; - m_NetworkManager.NetworkClosed += OnNetworkClosed; - m_NetworkManager.NetworkMissHeartBeat += OnNetworkMissHeartBeat; - m_NetworkManager.NetworkError += OnNetworkError; - m_NetworkManager.NetworkCustomError += OnNetworkCustomError; - if (NetEvent.Instance == null) - { - Log.Fatal("Event component is invalid."); - return; - } } /// @@ -138,27 +140,27 @@ namespace TEngine.Runtime private void OnNetworkConnected(object sender, NetworkConnectedEventArgs e) { - NetEvent.Instance.Fire(this, e); + NetEvent.Instance.Fire(this, NetworkConnectedEvent.Create(e)); } private void OnNetworkClosed(object sender, NetworkClosedEventArgs e) { - NetEvent.Instance.Fire(this, e); + NetEvent.Instance.Fire(this, NetworkClosedEvent.Create(e)); } private void OnNetworkMissHeartBeat(object sender, NetworkMissHeartBeatEventArgs e) { - NetEvent.Instance.Fire(this, e); + NetEvent.Instance.Fire(this, NetworkMissHeartBeatEvent.Create(e)); } private void OnNetworkError(object sender, NetworkErrorEventArgs e) { - NetEvent.Instance.Fire(this, e); + NetEvent.Instance.Fire(this, NetworkErrorEvent.Create(e)); } private void OnNetworkCustomError(object sender, NetworkCustomErrorEventArgs e) { - NetEvent.Instance.Fire(this, e); + NetEvent.Instance.Fire(this, NetworkCustomErrorEvent.Create(e)); } } } \ No newline at end of file