From d891f1e595e4e925e71a82a6b7229e6ea4b6b76b Mon Sep 17 00:00:00 2001 From: Jeffrey Rainy Date: Thu, 5 Aug 2021 17:09:48 -0400 Subject: [PATCH 1/3] refactor: calling networkShow(NetworkObject) code in networkshow(List) instead of calling a deeper-nested function. Make the code more uniform and prepares for incoming snapshot changes --- .../Runtime/Core/NetworkObject.cs | 20 ++----------------- 1 file changed, 2 insertions(+), 18 deletions(-) diff --git a/com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs b/com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs index fd4f6d533f..5ca7966e59 100644 --- a/com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs +++ b/com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs @@ -278,25 +278,9 @@ public static void NetworkShow(List networkObjects, ulong clientI } } - - var context = networkManager.MessageQueueContainer.EnterInternalCommandContext( - MessageQueueContainer.MessageType.CreateObjects, NetworkChannel.Internal, - new[] { clientId }, NetworkUpdateLoop.UpdateStage); - - if (context != null) + foreach(var networkObject in networkObjects) { - using (var nonNullContext = (InternalCommandContext)context) - { - nonNullContext.NetworkWriter.WriteUInt16Packed((ushort)networkObjects.Count); - - for (int i = 0; i < networkObjects.Count; i++) - { - networkObjects[i].Observers.Add(clientId); - - networkManager.SpawnManager.WriteSpawnCallForObject(nonNullContext.NetworkWriter, clientId, - networkObjects[i]); - } - } + networkObject.NetworkShow(clientId); } } From 140a9e7e056ad6b715ce4c305f0cc80c40f46a0e Mon Sep 17 00:00:00 2001 From: Jeffrey Rainy Date: Thu, 5 Aug 2021 17:23:22 -0400 Subject: [PATCH 2/3] style: whitespace --- com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs b/com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs index 5ca7966e59..c5b24d37b7 100644 --- a/com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs +++ b/com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs @@ -278,7 +278,7 @@ public static void NetworkShow(List networkObjects, ulong clientI } } - foreach(var networkObject in networkObjects) + foreach (var networkObject in networkObjects) { networkObject.NetworkShow(clientId); } From 8494c4de7fff5875763c46c180e1e72af520f320 Mon Sep 17 00:00:00 2001 From: Jeffrey Rainy Date: Thu, 5 Aug 2021 18:05:30 -0400 Subject: [PATCH 3/3] refactor: also using NetworkHide(NetworkObject) to implement NetworkHide(List). Same reasons as for NetworkShow --- .../Runtime/Core/NetworkObject.cs | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs b/com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs index c5b24d37b7..feffdc2ba7 100644 --- a/com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs +++ b/com.unity.multiplayer.mlapi/Runtime/Core/NetworkObject.cs @@ -369,23 +369,9 @@ public static void NetworkHide(List networkObjects, ulong clientI } } - var context = networkManager.MessageQueueContainer.EnterInternalCommandContext( - MessageQueueContainer.MessageType.DestroyObjects, NetworkChannel.Internal, - new[] { clientId }, NetworkUpdateStage.PostLateUpdate); - if (context != null) + foreach (var networkObject in networkObjects) { - using (var nonNullContext = (InternalCommandContext)context) - { - nonNullContext.NetworkWriter.WriteUInt16Packed((ushort)networkObjects.Count); - - for (int i = 0; i < networkObjects.Count; i++) - { - // Send destroy call - networkObjects[i].Observers.Remove(clientId); - - nonNullContext.NetworkWriter.WriteUInt64Packed(networkObjects[i].NetworkObjectId); - } - } + networkObject.NetworkHide(clientId); } }