@@ -630,10 +630,7 @@ public void PopulateLoadedScenes(ref Dictionary<SceneHandle, Scene> scenesLoaded
630630 Scene = scene
631631 } ;
632632 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 ) ;
637634 }
638635 else
639636 {
@@ -678,10 +675,7 @@ public void UnloadUnassignedScenes(NetworkManager networkManager = null)
678675 {
679676 SceneManager . UnloadSceneAsync ( sceneToUnload . Key ) ;
680677 // 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 ) ;
685679 }
686680 }
687681
@@ -696,11 +690,10 @@ private void SceneManager_SceneUnloaded(Scene scene)
696690 var relativeSceneNameToSceneHandles = SceneNameToSceneHandles [ networkManager ] ;
697691 if ( relativeSceneNameToSceneHandles . ContainsKey ( scene . name ) )
698692 {
699- var scenHandleEntries = relativeSceneNameToSceneHandles [ scene . name ] ;
700- if ( scenHandleEntries . ContainsKey ( scene . handle ) )
693+ var sceneHandleEntries = relativeSceneNameToSceneHandles [ scene . name ] ;
694+ if ( sceneHandleEntries . Remove ( scene . handle ) )
701695 {
702- scenHandleEntries . Remove ( scene . handle ) ;
703- if ( scenHandleEntries . Count == 0 )
696+ if ( sceneHandleEntries . Count == 0 )
704697 {
705698 relativeSceneNameToSceneHandles . Remove ( scene . name ) ;
706699 }
@@ -870,10 +863,9 @@ public void SetClientSynchronizationMode(ref NetworkManager networkManager, Load
870863 }
871864
872865 // 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 ) )
874867 {
875868 StartTrackingScene ( scene , true , networkManager ) ;
876- sceneManager . ScenesLoaded . Add ( scene . handle , scene ) ;
877869 }
878870 }
879871 }
0 commit comments