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(); } }
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(); } }
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(); } }