BeardedManStudios.Network.Unity.Autostart_Editor.Build C# (CSharp) Метод

Build() приватный Метод

private Build ( ) : void
Результат void
		private void Build()
		{
			string path = EditorUtility.SaveFolderPanel("Choose Build Location", "", "");

			if (string.IsNullOrEmpty(path))
			{
				Debug.LogError("Aborted because the path was not specified");
				return;
			}

			string[] levels = new string[2];
			for (int i = 0; i < EditorBuildSettings.scenes.Length; i++)
			{
				if (EditorBuildSettings.scenes[i].path.Contains(EditorApplication.currentScene))
					levels[0] = EditorBuildSettings.scenes[i].path;
				else if (EditorBuildSettings.scenes[i].path.Contains(Target.sceneName))
					levels[1] = EditorBuildSettings.scenes[i].path;
			}

			if (levels[0] == null || levels[1] == null)
			{
				Debug.LogError("Aborted because the current scene and the target scene were not in the build settings");
				return;
			}

			path += "/Autobuild";

			if (System.IO.Directory.Exists(path))
				System.IO.Directory.Delete(path, true);

			System.IO.Directory.CreateDirectory(path);

			BuildTarget target = BuildTarget.StandaloneWindows;
			string extension = ".exe";

			if (platform == Platform.Mac)
			{
				target = BuildTarget.StandaloneOSXIntel;
				extension = ".app";
			}
			else if (platform == Platform.Linux)
			{
				target = BuildTarget.StandaloneLinux;
				extension = ".so";
			}

			Target.executePath = path + "/autobuild" + extension;

			ResolutionDialogSetting resolutionDialog = PlayerSettings.displayResolutionDialog;

			PlayerSettings.runInBackground = true;
			PlayerSettings.displayResolutionDialog = ResolutionDialogSetting.Disabled;

			BuildPipeline.BuildPlayer(levels, Target.executePath, target, BuildOptions.None);

			PlayerSettings.displayResolutionDialog = resolutionDialog;

			EditorApplication.isPlaying = true;
		}
	}
Autostart_Editor