Skip to content

Commit d9bd1ab

Browse files
committed
fix: Scene objects destroyed on server will now be destroyed on client
1 parent 2272e58 commit d9bd1ab

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

MLAPI/Messaging/InternalMessageHandler.cs

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -303,6 +303,23 @@ void DelayedSpawnAction(Stream continuationStream)
303303
}
304304
}
305305

306+
307+
// Clean up the diffed scene objects. I.E scene objects that have been destroyed
308+
if (SpawnManager.pendingSoftSyncObjects.Count > 0)
309+
{
310+
List<NetworkedObject> objectsToDestroy = new List<NetworkedObject>();
311+
312+
foreach (KeyValuePair<ulong, NetworkedObject> pair in SpawnManager.pendingSoftSyncObjects)
313+
{
314+
objectsToDestroy.Add(pair.Value);
315+
}
316+
317+
for (int i = 0; i < objectsToDestroy.Count; i++)
318+
{
319+
MonoBehaviour.Destroy(objectsToDestroy[i].gameObject);
320+
}
321+
}
322+
306323
NetworkingManager.Singleton.IsConnectedClient = true;
307324

308325
NetworkingManager.Singleton.InvokeOnClientConnectedCallback(NetworkingManager.Singleton.LocalClientId);

0 commit comments

Comments
 (0)