@@ -630,10 +630,7 @@ public void PopulateLoadedScenes(ref Dictionary<SceneHandle, Scene> scenesLoaded
630
630
Scene = scene
631
631
} ;
632
632
SceneNameToSceneHandles [ networkManager ] [ scene . name ] . Add ( scene . handle , sceneEntry ) ;
633
- if ( ! scenesLoaded . ContainsKey ( scene . handle ) )
634
- {
635
- scenesLoaded . Add ( scene . handle , scene ) ;
636
- }
633
+ scenesLoaded . TryAdd ( scene . handle , scene ) ;
637
634
}
638
635
else
639
636
{
@@ -678,10 +675,7 @@ public void UnloadUnassignedScenes(NetworkManager networkManager = null)
678
675
{
679
676
SceneManager . UnloadSceneAsync ( sceneToUnload . Key ) ;
680
677
// Update the ScenesLoaded when we unload scenes
681
- if ( sceneManager . ScenesLoaded . ContainsKey ( sceneToUnload . Key . handle ) )
682
- {
683
- sceneManager . ScenesLoaded . Remove ( sceneToUnload . Key . handle ) ;
684
- }
678
+ sceneManager . ScenesLoaded . Remove ( sceneToUnload . Key . handle ) ;
685
679
}
686
680
}
687
681
@@ -696,11 +690,10 @@ private void SceneManager_SceneUnloaded(Scene scene)
696
690
var relativeSceneNameToSceneHandles = SceneNameToSceneHandles [ networkManager ] ;
697
691
if ( relativeSceneNameToSceneHandles . ContainsKey ( scene . name ) )
698
692
{
699
- var scenHandleEntries = relativeSceneNameToSceneHandles [ scene . name ] ;
700
- if ( scenHandleEntries . ContainsKey ( scene . handle ) )
693
+ var sceneHandleEntries = relativeSceneNameToSceneHandles [ scene . name ] ;
694
+ if ( sceneHandleEntries . Remove ( scene . handle ) )
701
695
{
702
- scenHandleEntries . Remove ( scene . handle ) ;
703
- if ( scenHandleEntries . Count == 0 )
696
+ if ( sceneHandleEntries . Count == 0 )
704
697
{
705
698
relativeSceneNameToSceneHandles . Remove ( scene . name ) ;
706
699
}
@@ -870,10 +863,9 @@ public void SetClientSynchronizationMode(ref NetworkManager networkManager, Load
870
863
}
871
864
872
865
// If the scene is not already in the ScenesLoaded list, then add it
873
- if ( ! sceneManager . ScenesLoaded . ContainsKey ( scene . handle ) )
866
+ if ( sceneManager . ScenesLoaded . TryAdd ( scene . handle , scene ) )
874
867
{
875
868
StartTrackingScene ( scene , true , networkManager ) ;
876
- sceneManager . ScenesLoaded . Add ( scene . handle , scene ) ;
877
869
}
878
870
}
879
871
}
0 commit comments