Пример #1
0
        private void DrawConfig(BuildConfig config)
        {
            if (config == null)
            {
                throw new ArgumentNullException(nameof(config));
            }

            var targetSupported = BuildUtil.IsTargetSupported(config.target);

            if (!targetSupported && config.target != 0)
            {
                var message = string.Format(
                    "Build module for {0} is not installed!",
                    config.target
                    );
                EditorGUILayout.HelpBox(message, MessageType.Warning);
            }

            GUI.enabled = targetSupported;
            if (GUILayout.Button(new GUIContent("Build")))
            {
                EditorApplication.delayCall += () =>
                                               BuildUtil.Build((BuildConfig)list.list[list.index]);
            }
            GUI.enabled = true;

            config.folder = EditorGUILayout.TextField("Folder", config.folder);

            EditorGUILayout.Space();

            config.target = (BuildTarget)EditorGUILayout.EnumPopup("Target Platform", config.target);
            EditorGUILayout.BeginHorizontal();
            switch (config.target)
            {
            // Web builds do not have an exe name; Unity will always use the
            // name index.html
            case BuildTarget.WebGL:
                GUI.enabled = false;
                EditorGUILayout.TextField("Exe Name", "index");
                GUILayout.Label(".html", GUILayout.Width(50));
                GUI.enabled = true;
                break;

            default:
                config.exeName = EditorGUILayout.TextField("Exe Name", config.exeName);
                GUILayout.Label(
                    BuildUtil.GetExeFiletype(config.target),
                    GUILayout.Width(50)
                    );
                break;
            }
            EditorGUILayout.EndHorizontal();
            config.defaultBuild = EditorGUILayout.Toggle("Default Build", config.defaultBuild);

            options = EditorGUILayout.Foldout(options, "Build Options");
            if (options)
            {
                DrawBuildOptions(config);
            }
        }
Пример #2
0
        public static void BuildDefaults()
        {
            var configs = BuildUtil.LoadSettings();

            foreach (var config in configs)
            {
                if (config.defaultBuild)
                {
                    BuildUtil.Build(config);
                }
            }
        }