public void LoadPrefs()
        {
            if (string.IsNullOrWhiteSpace(_buildFolder))
            {
                _buildFolder = BuildScriptPrefs.GetBuildFolder();
            }

            _buildAndRun = BuildScriptPrefs.GetBuildAndRun();
            _devBuild    = BuildScriptPrefs.GetDevelopmentBuild();
            _buildTarget = BuildScriptPrefs.GetBuildTarget();
        }
        private string SetBuildFolder()
        {
            var fullPath = EditorUtility.OpenFolderPanel("Build Folder", Application.dataPath.Replace("Assets", string.Empty), "bin");

            if (!string.IsNullOrEmpty(fullPath))
            {
                _buildFolder = fullPath;
                BuildScriptPrefs.SetBuildFolder(_buildFolder);
                base.Repaint();
            }

            return(fullPath);
        }
        private void OnGUI_RenderBuildAndRunning()
        {
            EditorGUILayout.LabelField(new GUIContent("Building & Running", "Building and optionally auto-running builds."), EditorStyles.centeredGreyMiniLabel);

            EditorGUI.BeginChangeCheck();

            _buildTarget = (BuildTarget)EditorGUILayout.EnumPopup(new GUIContent("Build Target", "Which platform to build for."), _buildTarget);

            if (EditorGUI.EndChangeCheck())
            {
                BuildScriptPrefs.SetBuildTarget(_buildTarget);
            }

            EditorGUI.BeginChangeCheck();

            _devBuild = EditorGUILayout.Toggle(new GUIContent("Development Build", "Toggle to build as development build."), _devBuild);

            if (EditorGUI.EndChangeCheck())
            {
                BuildScriptPrefs.SetDevelopmentBuild(_devBuild);
            }

            EditorGUI.BeginChangeCheck();
            _buildAndRun = EditorGUILayout.Toggle(new GUIContent("Build and Run?", "Whether to auto-run the game after building, if successful."), _buildAndRun);

            if (EditorGUI.EndChangeCheck())
            {
                BuildScriptPrefs.SetBuildAndRun(_buildAndRun);
            }


            EditorGUILayout.Separator();

            EditorGUILayout.BeginHorizontal();

            if (GUILayout.Button("Build"))
            {
                BuildButton_Singleplayer();
            }

            if (GUILayout.Button("Run"))
            {
                RunAsSingleplayer();
            }

            EditorGUILayout.EndHorizontal();
        }