using System.Text;
using UnityEditor;
using UnityEngine.SceneManagement;
public class Example
{
// adds a menu item which gives a brief summary of currently open Scenes
[MenuItem("SceneExample/Scene Summary")]
public static void ListSceneNames()
{
StringBuilder sb;
if (SceneManager.sceneCount > 0)
{
sb = new StringBuilder();
for (int n = 0; n < SceneManager.sceneCount; ++n)
{
Scene scene = SceneManager.GetSceneAt(n);
sb.Append(scene.name);
sb.Append(scene.isLoaded ? " (Loaded, " : " (Not Loaded, ");
sb.Append(scene.isDirty ? "Dirty, " : "Clean, ");
sb.Append(scene.buildIndex >= 0 ? " in build)\n" : " NOT in build)\n");
}
}
else
{
sb = new StringBuilder("No open Scenes.");
}
EditorUtility.DisplayDialog("Scene Summary", sb.ToString(), "OK");
}
}