void OnGUI()
        {
            if (EditorApplication.isPlaying)
            {
                DrawPlayMode();
                return;
            }

            DrawHeader();

            if (EditorSceneManager_Loader.currentDefinition == null)
            {
                DrawSceneDefinitionBuilder();
            }
            else
            {
                DrawScenes();
                DragArea();
            }

            if (requiresRefresh)
            {
                requiresRefresh = false;
                EditorSceneManager_Loader.RefreshCurrentSceneDefinition();
            }
        }
 void DrawSceneDefinitionBuilder()
 {
     if (EditorSceneManager.GetActiveScene().name != "" && EditorSceneManager.GetActiveScene().path != SceneDefinition.entryScenePath)
     {
         if (GUILayout.Button("Create Scene Definition for " + EditorSceneManager.GetActiveScene().name, GUILayout.ExpandWidth(true), GUILayout.ExpandHeight(true)))
         {
             SceneDefinition_Editor.CreateFromScene(EditorSceneManager.GetActiveScene());
             EditorSceneManager_Loader.RefreshCurrentSceneDefinition();
         }
     }
     else
     {
         EditorGUILayout.HelpBox("No Saved Scene Loaded", MessageType.Warning);
     }
 }