aboutsummaryrefslogtreecommitdiff
path: root/Packages/com.vrchat.core.vpm-resolver/Editor/PackageMaker/PackageMakerWindowData.cs
diff options
context:
space:
mode:
authorAlex Pooley (@zuedev) <zuedev@gmail.com>2026-06-11 23:50:51 +0100
committerAlex Pooley (@zuedev) <zuedev@gmail.com>2026-06-11 23:50:51 +0100
commit313604645ca43aeed156e19d3d8b7d0e5d394f3d (patch)
treeb675de907eedf1e4f5bce24aff570460017587ae /Packages/com.vrchat.core.vpm-resolver/Editor/PackageMaker/PackageMakerWindowData.cs
parenta08432bcb9f28f06887fbdfac24b5757afeaf89f (diff)
downloadVRCog-313604645ca43aeed156e19d3d8b7d0e5d394f3d.tar
VRCog-313604645ca43aeed156e19d3d8b7d0e5d394f3d.tar.gz
VRCog-313604645ca43aeed156e19d3d8b7d0e5d394f3d.tar.bz2
VRCog-313604645ca43aeed156e19d3d8b7d0e5d394f3d.tar.xz
VRCog-313604645ca43aeed156e19d3d8b7d0e5d394f3d.zip
cleanup
Diffstat (limited to 'Packages/com.vrchat.core.vpm-resolver/Editor/PackageMaker/PackageMakerWindowData.cs')
-rw-r--r--Packages/com.vrchat.core.vpm-resolver/Editor/PackageMaker/PackageMakerWindowData.cs48
1 files changed, 48 insertions, 0 deletions
diff --git a/Packages/com.vrchat.core.vpm-resolver/Editor/PackageMaker/PackageMakerWindowData.cs b/Packages/com.vrchat.core.vpm-resolver/Editor/PackageMaker/PackageMakerWindowData.cs
new file mode 100644
index 0000000..df8eef6
--- /dev/null
+++ b/Packages/com.vrchat.core.vpm-resolver/Editor/PackageMaker/PackageMakerWindowData.cs
@@ -0,0 +1,48 @@
+using System.IO;
+using UnityEditor;
+using UnityEngine;
+using VRC.PackageManagement.PackageMaker;
+
+public class PackageMakerWindowData : ScriptableObject
+{
+ public static string defaultAssetPath = Path.Combine("Assets", "PackageMakerWindowData.asset");
+ public string targetAssetFolder;
+ public string packageID;
+
+ public string authorName;
+ public string authorEmail;
+ public string authorUrl;
+ public PackageMakerWindow.VRCPackageEnum relatedPackage;
+
+ public static PackageMakerWindowData GetOrCreate()
+ {
+ var existingData = AssetDatabase.AssetPathToGUID(defaultAssetPath);
+ if (string.IsNullOrWhiteSpace(existingData))
+ {
+ return Create();
+ }
+ else
+ {
+ var saveData = AssetDatabase.LoadAssetAtPath<PackageMakerWindowData>(defaultAssetPath);
+ if (saveData == null)
+ {
+ Debug.LogError($"Could not load saved data but the save file exists. Resetting.");
+ return Create();
+ }
+ return saveData;
+ }
+ }
+
+ public static PackageMakerWindowData Create()
+ {
+ var saveData = CreateInstance<PackageMakerWindowData>();
+ AssetDatabase.CreateAsset(saveData, defaultAssetPath);
+ AssetDatabase.SaveAssets();
+ return saveData;
+ }
+
+ public void Save()
+ {
+ AssetDatabase.SaveAssets();
+ }
+}