diff --git a/EditorNotes.meta b/EditorNotes.meta new file mode 100644 index 0000000..68a0823 --- /dev/null +++ b/EditorNotes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b46f5926760e80147ae27026dcffc881 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EditorNotes/EditorNote.cs b/EditorNotes/EditorNote.cs new file mode 100644 index 0000000..8707ec0 --- /dev/null +++ b/EditorNotes/EditorNote.cs @@ -0,0 +1,67 @@ +using UnityEngine; +using VRC.SDKBase; +#if UNITY_EDITOR +using UnityEditor; +#endif + +namespace gay.lilyy.EditorNotes { + +public class EditorNote : MonoBehaviour, IEditorOnly +{ + public enum ValueType { Int, Float, Vector3, String, All, None } + + public ValueType valueType = ValueType.Int; + + public int intValue; + public float floatValue; + public Vector3 vector3Value; + + public string stringValue; + + [TextArea] + public string note; +} + +#if UNITY_EDITOR + +[CustomEditor(typeof(EditorNote))] +public class EditorNoteInspector : Editor +{ + public override void OnInspectorGUI() + { + var script = (EditorNote)target; + + script.valueType = (EditorNote.ValueType)EditorGUILayout.EnumPopup("Type", script.valueType); + + switch (script.valueType) + { + case EditorNote.ValueType.Int: + script.intValue = EditorGUILayout.IntField("Int Value", script.intValue); + break; + case EditorNote.ValueType.Float: + script.floatValue = EditorGUILayout.FloatField("Float Value", script.floatValue); + break; + case EditorNote.ValueType.Vector3: + script.vector3Value = EditorGUILayout.Vector3Field("Vector3 Value", script.vector3Value); + break; + case EditorNote.ValueType.String: + script.stringValue = EditorGUILayout.TextField("String Value", script.stringValue); + break; + } + if (script.valueType == EditorNote.ValueType.All) { + script.intValue = EditorGUILayout.IntField("Int Value", script.intValue); + script.floatValue = EditorGUILayout.FloatField("Float Value", script.floatValue); + script.vector3Value = EditorGUILayout.Vector3Field("Vector3 Value", script.vector3Value); + script.stringValue = EditorGUILayout.TextField("String Value", script.stringValue); + } + + EditorGUILayout.LabelField("Note"); + script.note = EditorGUILayout.TextArea(script.note); + + if (GUI.changed) + EditorUtility.SetDirty(script); + } +} +#endif + +} \ No newline at end of file diff --git a/EditorNotes/EditorNote.cs.meta b/EditorNotes/EditorNote.cs.meta new file mode 100644 index 0000000..88ee037 --- /dev/null +++ b/EditorNotes/EditorNote.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 353cc3d6f30a43a4689be04e919b90f0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EditorNotes/EditorNotes.asmdef b/EditorNotes/EditorNotes.asmdef new file mode 100644 index 0000000..e5715a2 --- /dev/null +++ b/EditorNotes/EditorNotes.asmdef @@ -0,0 +1,16 @@ +{ + "name": "EditorNotes", + "rootNamespace": "", + "references": [ + "GUID:3456780c4fb2d324ab9c633d6f1b0ddb" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [], + "noEngineReferences": false +} \ No newline at end of file diff --git a/EditorNotes/EditorNotes.asmdef.meta b/EditorNotes/EditorNotes.asmdef.meta new file mode 100644 index 0000000..be61f49 --- /dev/null +++ b/EditorNotes/EditorNotes.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a65a5779a3702144986d83fca255f5da +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/EditorNotes/GameObjectReference.cs b/EditorNotes/GameObjectReference.cs new file mode 100644 index 0000000..6adaab1 --- /dev/null +++ b/EditorNotes/GameObjectReference.cs @@ -0,0 +1,10 @@ +using UnityEngine; +using VRC.SDKBase; +namespace gay.lilyy.EditorNotes { +public class GameObjectReference : MonoBehaviour, IEditorOnly +{ + public GameObject gObject; + [TextArea] + public string note; +} +} \ No newline at end of file diff --git a/EditorNotes/GameObjectReference.cs.meta b/EditorNotes/GameObjectReference.cs.meta new file mode 100644 index 0000000..41d4c8a --- /dev/null +++ b/EditorNotes/GameObjectReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 62a8eeb35a66e0f468016f12604da829 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: