diff --git a/MLAPI/MLAPI.csproj b/MLAPI/MLAPI.csproj index 86817ba..b429cfa 100644 --- a/MLAPI/MLAPI.csproj +++ b/MLAPI/MLAPI.csproj @@ -36,7 +36,7 @@ true - ..\..\MLAPI-Examples\Assets\MLAPI\ + ..\..\MLAPI-Examples\Assets\MLAPI\Lib\ DEBUG;TRACE full AnyCPU diff --git a/MLAPI/MonoBehaviours/Core/NetworkedBehaviour.cs b/MLAPI/MonoBehaviours/Core/NetworkedBehaviour.cs index 31f37e9..d96ca22 100644 --- a/MLAPI/MonoBehaviours/Core/NetworkedBehaviour.cs +++ b/MLAPI/MonoBehaviours/Core/NetworkedBehaviour.cs @@ -744,6 +744,17 @@ namespace MLAPI.MonoBehaviours.Core InternalMessageHandler.Send(ownerClientId, "MLAPI_SYNC_VAR_UPDATE", "MLAPI_INTERNAL", stream.ToArray()); //Send only to target } + if (nonTargetDirtyCount == 0) + { + //Seems like ONLY targeted syncedVars was changed. Thus we need to remove the dirty tags and return; + for (int i = 0; i < syncedVarFields.Count; i++) + { + syncedVarFields[i].FieldValue = syncedVarFields[i].FieldInfo.GetValue(this); + syncedVarFields[i].Dirty = false; + } + return; + } + //It's sync time. This is the NON target receivers packet. using (MemoryStream stream = new MemoryStream()) {