From 0572ab1b1382fea77586859d702ea92a4033f983 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Albin=20Cor=C3=A9n?= <2108U9@gmail.com> Date: Mon, 2 Apr 2018 19:58:12 +0200 Subject: [PATCH] Optimized SyncedVarInit --- MLAPI/MonoBehaviours/Core/NetworkedBehaviour.cs | 2 ++ MLAPI/MonoBehaviours/Core/NetworkedObject.cs | 1 + 2 files changed, 3 insertions(+) diff --git a/MLAPI/MonoBehaviours/Core/NetworkedBehaviour.cs b/MLAPI/MonoBehaviours/Core/NetworkedBehaviour.cs index b0fadac..3c97d4d 100644 --- a/MLAPI/MonoBehaviours/Core/NetworkedBehaviour.cs +++ b/MLAPI/MonoBehaviours/Core/NetworkedBehaviour.cs @@ -211,6 +211,8 @@ namespace MLAPI.MonoBehaviours.Core private bool[] dirtyFields; internal void SyncVarInit() { + if (syncVarInit) + return; syncVarInit = true; FieldInfo[] sortedFields = GetType().GetFields(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.FlattenHierarchy | BindingFlags.Instance).OrderBy(x => x.Name).ToArray(); for (byte i = 0; i < sortedFields.Length; i++) diff --git a/MLAPI/MonoBehaviours/Core/NetworkedObject.cs b/MLAPI/MonoBehaviours/Core/NetworkedObject.cs index 3805691..32a7b13 100644 --- a/MLAPI/MonoBehaviours/Core/NetworkedObject.cs +++ b/MLAPI/MonoBehaviours/Core/NetworkedObject.cs @@ -186,6 +186,7 @@ namespace MLAPI.MonoBehaviours.Core { childNetworkedBehaviours[i].NetworkStart(); childNetworkedBehaviours[i].SyncVarInit(); + childNetworkedBehaviours[i].networkedStartInvoked = true; } } }