Beispiel #1
0
        /// <summary>
        ///		Builds the game using Volt Builder's <see cref="GameBuilder.BuildGame"/>
        /// </summary>
        public static void StartVoltBuilder()
        {
            Debug.Log("Build game started...");
            System.Console.WriteLine("Build game started...");

            ParseCommandLineArguments(out Dictionary <string, string> arguments);

            if (!arguments.ContainsKey("buildTarget"))
            {
                EditorApplication.Exit(-1);
            }

            bool currentZipBuild = false;

            if (SettingsManager.Instance.ContainsKey <bool>(ZipBuildKey))
            {
                currentZipBuild = SettingsManager.Instance.Get <bool>(ZipBuildKey);
            }
            SettingsManager.Instance.Set(ZipBuildKey, true);

            BuildTarget target   = (BuildTarget)Enum.Parse(typeof(BuildTarget), arguments["buildTarget"]);
            string      buildDir = $"{GameBuilder.GetBuildDirectory()}{target}-DevOpsBuild/{PlayerSettings.productName}";

            System.Console.WriteLine($"Building TC for {target} platform to {buildDir}");

            GameBuildOptions options = new GameBuildOptions(buildDir, target, BuildActions.GetBuildActions());

            AddressablesBuilder.BuildAddressables();
            GameBuilder.BuildGame(options);

            SettingsManager.Instance.Set(ZipBuildKey, currentZipBuild);
        }