Exemple #1
0
        private void OnSave()
        {
            ProjectManifest manifest = new ProjectManifest();

            manifest.Read();

            bool refreshAssetDatabase = false;

            EditorSettings.defaultBehaviorMode = (EditorBehaviorMode)_behaviorMode.value;

            PlayerSettings.productName   = _productName.value;
            PlayerSettings.bundleVersion = _productVersion.value;

            refreshAssetDatabase |= manifest.UseSpine != _useSpine.value;
            manifest.UseSpine     = _useSpine.value;

            refreshAssetDatabase |= manifest.UseDOTween != _useDOTween.value;
            manifest.UseDOTween   = _useDOTween.value;

            refreshAssetDatabase  |= manifest.UseNetworking != _useNetworking.value;
            manifest.UseNetworking = _useNetworking.value;

            SetScriptingDefineSymbols(BuildTargetGroup.Standalone);
            SetScriptingDefineSymbols(BuildTargetGroup.Android);
            SetScriptingDefineSymbols(BuildTargetGroup.iOS);
            SetScriptingDefineSymbols(BuildTargetGroup.WebGL);

            manifest.Write();

            if (refreshAssetDatabase)
            {
                AssetDatabase.Refresh();
            }
        }
Exemple #2
0
        protected override void OnEnable()
        {
            base.OnEnable();

            rootVisualElement.styleSheets.Add(Resources.Load <StyleSheet>(MainStyleSheet));

            VisualTreeAsset mainVisualTree = Resources.Load <VisualTreeAsset>(WindowLayout);

            mainVisualTree.CloneTree(rootVisualElement);

            ProjectManifest manifest = new ProjectManifest();

            manifest.Read();

            _behaviorMode = rootVisualElement.Q <EnumField>("enum-behavior-mode");
            _behaviorMode.Init(EditorBehaviorMode.Mode3D);
            _behaviorMode.value = EditorSettings.defaultBehaviorMode;

            _productName       = rootVisualElement.Q <TextField>("text-product-name");
            _productName.value = PlayerSettings.productName;

            _productVersion       = rootVisualElement.Q <TextField>("text-product-version");
            _productVersion.value = PlayerSettings.bundleVersion;

            _useSpine       = rootVisualElement.Q <Toggle>("toggle-feature-spine");
            _useSpine.value = manifest.UseSpine;

            _useDOTween       = rootVisualElement.Q <Toggle>("toggle-feature-dotween");
            _useDOTween.value = manifest.UseDOTween;

            _useNetworking       = rootVisualElement.Q <Toggle>("toggle-feature-networking");
            _useNetworking.value = manifest.UseNetworking;
        }
Exemple #3
0
        private static void InitializeProject()
        {
            EditorApplication.delayCall -= InitializeProject;

            ProjectManifest manifest = new ProjectManifest();

            // TODO: use a try / catch here instead of pre-checking for the file
            if (File.Exists(ProjectManifest.FileName))
            {
                manifest.Read();
            }
            else
            {
                // for whatever reason if we initialize on the first load of a fresh project,
                // something will come along and overwrite it all back to defaults
                // so create a v0 manifest that will get picked up on the second load
                manifest.Version = 0;
                manifest.Write();
                return;
            }

            if (UpdateFromVersion(manifest.Version))
            {
                manifest.Version = Version;
                manifest.Write();
            }
        }
Exemple #4
0
        private static void InitializeProject()
        {
            ProjectManifest manifest = new ProjectManifest();

            if (File.Exists(ProjectManifest.FileName))
            {
                manifest.Read();
            }
            else
            {
                // for whatever reason if we initialize on the first load of a fresh project,
                // something will come along and overwrite it all back to defaults
                // so create a v0 manifest that will get picked up on the second load
                manifest.Version = 0;
                manifest.Write();
                return;
            }

            if (UpdateFromVersion(manifest.Version))
            {
                manifest.Version = Version;
                manifest.Write();
            }
        }