Skip to content

Commit a39c4d6

Browse files
fix: Mark Scene dirty when automatically adding a scene to the scene list (#620)
* Fixed NetworkManager / scene now being marked dirty when autoadding scene to scene list * fix: Mark Scene dirty when automatically adding a scene to the scene list
1 parent 8b2e771 commit a39c4d6

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

com.unity.multiplayer.mlapi/Runtime/Core/NetworkManager.cs

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -208,10 +208,19 @@ private void OnValidate()
208208
}
209209
}
210210

211-
if (!NetworkConfig.RegisteredScenes.Contains(SceneManager.GetActiveScene().name))
211+
var activeScene = SceneManager.GetActiveScene();
212+
var activeSceneName = activeScene.name;
213+
if (!NetworkConfig.RegisteredScenes.Contains(activeSceneName))
212214
{
213215
if (NetworkLog.CurrentLogLevel <= LogLevel.Normal) NetworkLog.LogWarning("Active scene is not registered as a network scene. The MLAPI has added it");
214-
NetworkConfig.RegisteredScenes.Add(SceneManager.GetActiveScene().name);
216+
NetworkConfig.RegisteredScenes.Add(activeSceneName);
217+
#if UNITY_EDITOR
218+
UnityEditor.EditorApplication.delayCall += () =>
219+
{
220+
UnityEditor.EditorUtility.SetDirty(this);
221+
UnityEditor.SceneManagement.EditorSceneManager.MarkSceneDirty(activeScene);
222+
};
223+
#endif
215224
}
216225

217226
for (int i = 0; i < NetworkConfig.NetworkPrefabs.Count; i++)

0 commit comments

Comments
 (0)