public static void ResetForScene(List<SimpleNetworkedMonoBehavior> skip)
{
initialSetup = false;
lock (networkedBehaviorsMutex)
{
foreach (SimpleNetworkedMonoBehavior behavior in networkedBehaviors.Values)
{
if (!skip.Contains(behavior))
{
if (behavior.dontDestroyOnLoad)
skip.Add(behavior);
else
behavior.Disconnect();
}
}
networkedBehaviors.Clear();
}
for (int i = skip.Count - 1; i >= 0; --i)
if (skip[i] == null)
skip.RemoveAt(i);
lock (networkedBehaviorsMutex)
{
foreach (SimpleNetworkedMonoBehavior behavior in skip)
networkedBehaviors.Add(behavior.NetworkedId, behavior);
}
}