diff --git a/.idea/.idea.HALLUCINATE/.idea/workspace.xml b/.idea/.idea.HALLUCINATE/.idea/workspace.xml
index 93a4b70e..25d919c4 100644
--- a/.idea/.idea.HALLUCINATE/.idea/workspace.xml
+++ b/.idea/.idea.HALLUCINATE/.idea/workspace.xml
@@ -5,14 +5,7 @@
-
-
-
-
-
-
-
@@ -49,27 +42,27 @@
- {
- "keyToString": {
- "ModuleVcsDetector.initialDetectionPerformed": "true",
- "RunOnceActivity.MCP Project settings loaded": "true",
- "RunOnceActivity.ShowReadmeOnStart": "true",
- "RunOnceActivity.TerminalTabsStorage.copyFrom.TerminalArrangementManager.252": "true",
- "RunOnceActivity.git.unshallow": "true",
- "RunOnceActivity.typescript.service.memoryLimit.init": "true",
- "com.intellij.ml.llm.matterhorn.ej.ui.settings.DefaultModelSelectionForGA.v1": "true",
- "git-widget-placeholder": "main",
- "junie.onboarding.icon.badge.shown": "true",
- "node.js.detected.package.eslint": "true",
- "node.js.detected.package.tslint": "true",
- "node.js.selected.package.eslint": "(autodetect)",
- "node.js.selected.package.tslint": "(autodetect)",
- "nodejs_package_manager_path": "npm",
- "settings.editor.selected.configurable": "preferences.pluginManager",
- "to.speed.mode.migration.done": "true",
- "vue.rearranger.settings.migration": "true"
+
+}]]>
diff --git a/Assets/D.A. Assets.meta b/Assets/D.A. Assets.meta
new file mode 100644
index 00000000..79a667cc
--- /dev/null
+++ b/Assets/D.A. Assets.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 3e3813d69bc21164d861ebd09eaf11fc
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared.meta b/Assets/D.A. Assets/DA-Shared.meta
new file mode 100644
index 00000000..2e156e90
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: d4737175c2d3f454fbc956685f7d47c6
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor.meta b/Assets/D.A. Assets/DA-Shared/Editor.meta
new file mode 100644
index 00000000..3ff2a398
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: a55b6e91627f74e4295954501151cdd2
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/CornerRounder.meta b/Assets/D.A. Assets/DA-Shared/Editor/CornerRounder.meta
new file mode 100644
index 00000000..d0d48ad0
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/CornerRounder.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: f038c3b55d129034986d8717f0839c00
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/CornerRounder/CornerRounderEditor.cs b/Assets/D.A. Assets/DA-Shared/Editor/CornerRounder/CornerRounderEditor.cs
new file mode 100644
index 00000000..d13ac6be
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/CornerRounder/CornerRounderEditor.cs
@@ -0,0 +1,105 @@
+using DA_Assets.DAI;
+using UnityEditor;
+using UnityEngine;
+
+namespace DA_Assets.CR
+{
+ [CustomEditor(typeof(CornerRounder)), CanEditMultipleObjects]
+ public class CornerRounderEditor : DAEditor
+ {
+ public override void OnInspectorGUI()
+ {
+ gui.DrawGroup(new Group
+ {
+ GroupType = GroupType.Vertical,
+ Style = gui.ColoredStyle.Background,
+ Body = () =>
+ {
+ monoBeh.independent = gui.CheckBox(new GUIContent("Independent"), monoBeh.independent);
+
+ gui.Space15();
+
+ if (monoBeh.independent)
+ {
+ gui.DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ DrawField(0, true);
+ DrawField(1, false);
+ }
+ });
+
+ gui.Space15();
+
+ gui.DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ DrawField(3, true);
+ DrawField(2, false);
+ }
+ });
+ }
+ else
+ {
+ gui.DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Rect rect = DrawIcon(4);
+
+ int val = (int)monoBeh.radiiSerialized[0];
+ val = gui.IntField(new GUIContent(""), val);
+
+ gui.DragZoneInt(rect, ref val);
+
+ if (val < 0)
+ val = 0;
+
+ monoBeh.radiiSerialized[0] = val;
+ monoBeh.radiiSerialized[1] = val;
+ monoBeh.radiiSerialized[2] = val;
+ monoBeh.radiiSerialized[3] = val;
+ }
+ });
+ }
+
+ monoBeh.Refresh();
+ }
+ });
+ }
+
+ private Rect DrawIcon(int index)
+ {
+ int iconOffset = 4;
+ Rect rect = EditorGUILayout.GetControlRect(false, GUILayout.Width(25), GUILayout.Height(25));
+ rect.y -= iconOffset;
+ EditorGUI.LabelField(rect, new GUIContent(gui.Data.Resources.CornerIcons[index]));
+ return rect;
+ }
+
+ private void DrawField(int index, bool state)
+ {
+ int val = (int)monoBeh.radiiSerialized[index];
+
+ if (!state)
+ val = gui.IntField(new GUIContent(""), val);
+
+ Rect rect = DrawIcon(index);
+
+ if (state)
+ val = gui.IntField(new GUIContent(""), val);
+
+ gui.DragZoneInt(rect, ref val);
+
+ if (val < 0)
+ val = 0;
+
+ monoBeh.radiiSerialized[index] = (float)val;
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/CornerRounder/CornerRounderEditor.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/CornerRounder/CornerRounderEditor.cs.meta
new file mode 100644
index 00000000..3be15cdd
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/CornerRounder/CornerRounderEditor.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 8f349be0d436a654b8e0d89192d80399
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAGradient.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAGradient.meta
new file mode 100644
index 00000000..2b31c6c1
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAGradient.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 706ae57a6adc2884f85295f2bfa1b621
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAGradient/DAGradientEditor.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAGradient/DAGradientEditor.cs
new file mode 100644
index 00000000..ec16ac32
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAGradient/DAGradientEditor.cs
@@ -0,0 +1,40 @@
+using DA_Assets.DAI;
+using UnityEditor;
+using UnityEngine;
+
+namespace DA_Assets.DAG
+{
+ [CustomEditor(typeof(DAGradient)), CanEditMultipleObjects]
+ public class DAGradientEditor : DAEditor
+ {
+ public override void OnInspectorGUI()
+ {
+ gui.DrawGroup(new Group
+ {
+ GroupType = GroupType.Vertical,
+ Style = gui.ColoredStyle.Background,
+ Body = () =>
+ {
+ DrawAssetLogo();
+
+ gui.SerializedPropertyField(serializedObject, x => x.Gradient, false);
+ gui.Space5();
+ gui.SerializedPropertyField(serializedObject, x => x.BlendMode);
+ gui.Space5();
+ gui.SerializedPropertyField(serializedObject, x => x.Intensity);
+ gui.Space5();
+ gui.SerializedPropertyField(serializedObject, x => x.Angle);
+
+ Footer.DrawFooter();
+ }
+ });
+ }
+
+ private void DrawAssetLogo()
+ {
+ GUILayout.BeginVertical(gui.Data.Resources.DAGradientLogo, gui.ColoredStyle.Logo);
+ gui.Space60();
+ GUILayout.EndVertical();
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAGradient/DAGradientEditor.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAGradient/DAGradientEditor.cs.meta
new file mode 100644
index 00000000..ce103fe7
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAGradient/DAGradientEditor.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 4a9e4b50447d5c9448277f6a329d568c
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector.meta
new file mode 100644
index 00000000..933c1470
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 93cc13d79811f4b4fb53adb2ec1bc74a
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/BlackInspector.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/BlackInspector.cs
new file mode 100644
index 00000000..2cdc6ea6
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/BlackInspector.cs
@@ -0,0 +1,10 @@
+using DA_Assets.Constants;
+using DA_Assets.Singleton;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ [CreateAssetMenu(menuName = DAConstants.Publisher + "/" + "Black Inspector")]
+ [ResourcePath("")]
+ public class BlackInspector : CustomInspector, ICustomInspector { }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/BlackInspector.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/BlackInspector.cs.meta
new file mode 100644
index 00000000..af9e1e28
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/BlackInspector.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 1205892b9b42ffd4bb53381356b30589
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/CustomInspector.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/CustomInspector.cs
new file mode 100644
index 00000000..ed3f5dee
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/CustomInspector.cs
@@ -0,0 +1,32 @@
+using DA_Assets.Singleton;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ public class CustomInspector : SingletonScriptableObject where T : ScriptableObject, ICustomInspector
+ {
+ [SerializeField] DAInspector _inspector;
+ public DAInspector Inspector { get => _inspector; set => _inspector = value; }
+
+ [SerializeField] InspectorData _data;
+ public InspectorData Data { get => _data; set => _data = value; }
+
+ [SerializeField] ColorScheme _colorScheme;
+
+ protected override void OnCreateInstance()
+ {
+ Init();
+ }
+
+ protected override void OnExitPlayMode()
+ {
+ Init();
+ }
+
+ public void Init()
+ {
+ _inspector = new DAInspector();
+ _inspector.Init(_data, _colorScheme);
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/CustomInspector.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/CustomInspector.cs.meta
new file mode 100644
index 00000000..d6647b0c
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/CustomInspector.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 1f1626afa1b15104ab58cbe3a9e5d046
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/CustomInspectorEditor.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/CustomInspectorEditor.cs
new file mode 100644
index 00000000..8549c8c8
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/CustomInspectorEditor.cs
@@ -0,0 +1,24 @@
+using UnityEditor;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ [CustomEditor(typeof(CustomInspector<>), editorForChildClasses: true), CanEditMultipleObjects]
+ internal class CustomInspectorEditor : Editor
+ {
+ public override void OnInspectorGUI()
+ {
+ base.OnInspectorGUI();
+
+ if (GUILayout.Button("Reinit"))
+ {
+ var customInspector = target as ICustomInspector;
+
+ if (customInspector != null)
+ {
+ customInspector.Init();
+ }
+ }
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/CustomInspectorEditor.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/CustomInspectorEditor.cs.meta
new file mode 100644
index 00000000..df33e483
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/CustomInspectorEditor.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: d9b7e5f60ef9f2449987b1d94e7b3bfa
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DAEditor.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DAEditor.cs
new file mode 100644
index 00000000..4f73b689
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DAEditor.cs
@@ -0,0 +1,28 @@
+using UnityEditor;
+
+namespace DA_Assets.DAI
+{
+ public class DAEditor : Editor
+ where T1 : DAEditor
+ where T2 : UnityEngine.Object
+ where T4 : CustomInspector, ICustomInspector
+ {
+ public T2 monoBeh;
+ public DAInspector gui => CustomInspector.Instance.Inspector;
+
+ public virtual void OnShow() { }
+
+ private void OnEnable()
+ {
+ monoBeh = (T2)target;
+ OnShow();
+
+ DARunner.update += Repaint;
+ }
+
+ private void OnDisable()
+ {
+ DARunner.update -= Repaint;
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DAEditor.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DAEditor.cs.meta
new file mode 100644
index 00000000..87b1f6dd
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DAEditor.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 0caa70052b449b941b8bdb3228b250f5
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DAInspector.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DAInspector.cs
new file mode 100644
index 00000000..b75a24a7
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DAInspector.cs
@@ -0,0 +1,1930 @@
+using DA_Assets.Extensions;
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Linq;
+using System.Linq.Expressions;
+using System.Reflection;
+using System.Text.RegularExpressions;
+using UnityEditor;
+using UnityEditor.AnimatedValues;
+using UnityEngine;
+using Debug = UnityEngine.Debug;
+using Object = UnityEngine.Object;
+
+#pragma warning disable CS0649
+
+namespace DA_Assets.DAI
+{
+ [Serializable]
+ public class DAInspector
+ {
+ private const int _hamburgerMenuItemsLimit = 100;
+
+ private InspectorData _data;
+ public InspectorData Data => _data;
+
+ [SerializeField] DaiStyle _coloredStyle;
+ private ColorScheme _colorScheme;
+
+ public DaiStyle ColoredStyle => _coloredStyle;
+
+ [SerializeField, HideInInspector] List _cachedTextures = new List();
+ private Dictionary _groupDatas = new Dictionary();
+ private Dictionary _hamburgerItems = new Dictionary();
+
+ public void Init(InspectorData data, ColorScheme colorScheme)
+ {
+ _data = data;
+ _colorScheme = colorScheme;
+ _coloredStyle = new DaiStyle();
+
+ CreateColorScheme(forced: false);
+ FindTypes();
+ }
+
+ public Object ObjectField(GUIContent content, Object value, Type objectType, bool allowSceneObjects)
+ {
+ Object _value = null;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ FlexibleSpace();
+
+ Rect position = GUILayoutUtility.GetRect(_coloredStyle.ObjectField.fixedWidth, _coloredStyle.ObjectField.fixedHeight);
+ Rect dropRect = position;
+ int controlID = GUIUtility.GetControlID(FocusType.Passive);
+
+ _value = (Object)_doObjectFieldMethod.Invoke(null, new object[]
+ {
+ position,
+ dropRect,
+ controlID,
+ value,
+ null,
+ objectType,
+ _validatorDelegate,
+ allowSceneObjects,
+ _coloredStyle.ObjectField
+ });
+ }
+ });
+
+ return _value;
+ }
+
+ private static MethodInfo _doObjectFieldMethod;
+ private static Type _objectFieldValidatorType;
+ private static Type _objectFieldValidatorOptionsType;
+
+ private void FindTypes()
+ {
+ if (_objectFieldValidatorType == null)
+ {
+ Type editorGUIType = typeof(EditorGUI);
+ _objectFieldValidatorType = editorGUIType.GetNestedType("ObjectFieldValidator", BindingFlags.NonPublic);
+ _objectFieldValidatorOptionsType = editorGUIType.GetNestedType("ObjectFieldValidatorOptions", BindingFlags.NonPublic);
+ }
+
+ if (_doObjectFieldMethod == null)
+ {
+ Type editorGUIType = typeof(EditorGUI);
+ _doObjectFieldMethod = editorGUIType.GetMethod(
+ "DoObjectField",
+ BindingFlags.NonPublic | BindingFlags.Static,
+ null,
+ new Type[]
+ {
+ typeof(Rect),
+ typeof(Rect),
+ typeof(int),
+ typeof(UnityEngine.Object),
+ typeof(UnityEngine.Object),
+ typeof(Type),
+ _objectFieldValidatorType,
+ typeof(bool),
+ typeof(GUIStyle)
+ },
+ null);
+ }
+
+ if (_validatorDelegate == null)
+ {
+ MethodInfo myValidatorMethodInfo = typeof(DAInspector).GetMethod(nameof(ObjectFieldValidator), BindingFlags.NonPublic | BindingFlags.Static);
+ _validatorDelegate = Delegate.CreateDelegate(_objectFieldValidatorType, myValidatorMethodInfo);
+ }
+
+ }
+
+ private static Object ObjectFieldValidator(Object[] references, Type objType, SerializedProperty property, object options)
+ {
+ if (references != null)
+ {
+ foreach (Object obj in references)
+ {
+ if (obj != null)
+ {
+ return obj;
+ }
+ }
+ }
+
+ return null;
+ }
+
+ private void RestoreTextures()
+ {
+ if (_coloredStyle.Background.normal.background == null)
+ {
+ CreateColorScheme(forced: true);
+ }
+ }
+
+ private void CreateColorScheme(bool forced)
+ {
+ if (forced || _cachedTextures.IsEmpty())
+ {
+ ProcessTextures();
+ }
+
+ Type daiStyleType = typeof(DaiStyle);
+
+ FieldInfo[] fields = daiStyleType.GetFields(BindingFlags.Public | BindingFlags.Instance);
+
+ foreach (FieldInfo field in fields)
+ {
+ if (field.FieldType == typeof(GUIStyle))
+ {
+ GUIStyle basicStyle = (GUIStyle)field.GetValue(_data.BasicStyle);
+ GUIStyle coloredStyle = CreateColoredStyle(basicStyle);
+ field.SetValueDirect(__makeref(_coloredStyle), coloredStyle);
+ }
+ }
+ }
+
+ private GUIStyle CreateColoredStyle(GUIStyle style)
+ {
+ GUIStyle coloredStyle = new GUIStyle(style);
+
+ coloredStyle.normal.textColor = coloredStyle.normal.textColor == Color.white ? _colorScheme.TextColor : coloredStyle.normal.textColor;
+ coloredStyle.active.textColor = coloredStyle.active.textColor == Color.white ? _colorScheme.TextColor : coloredStyle.active.textColor;
+
+ coloredStyle.normal.background = GetTexture(coloredStyle.normal.background);
+ coloredStyle.normal.scaledBackgrounds = new Texture2D[]
+ {
+ coloredStyle.normal.background as Texture2D
+ };
+
+ coloredStyle.active.background = GetTexture(coloredStyle.active.background);
+ coloredStyle.active.scaledBackgrounds = new Texture2D[]
+ {
+ coloredStyle.active.background as Texture2D
+ };
+
+ return coloredStyle;
+
+ Texture2D GetTexture(Texture2D background)
+ {
+ if (background != null && background.name.StartsWith("box"))
+ {
+ string cacheKey = $"{background.name}_{_colorScheme.BackgroundColor}_{_colorScheme.OutlineColor}";
+ CachedTextureEntry entry = _cachedTextures.Find(e => e.Key == cacheKey);
+ if (!entry.Equals(default(CachedTextureEntry)))
+ {
+ return entry.Texture;
+ }
+ }
+
+ return background;
+ }
+ }
+
+ private void ProcessTextures()
+ {
+ _cachedTextures = new List();
+
+ foreach (Texture2D background in _data.Resources.Backgrounds)
+ {
+ ProcessTexture(background);
+ }
+
+ Texture2D ProcessTexture(Texture2D texture)
+ {
+ string cacheKey = $"{texture.name}_{_colorScheme.BackgroundColor}_{_colorScheme.OutlineColor}";
+ CachedTextureEntry entry = _cachedTextures.Find(e => e.Key == cacheKey);
+
+ if (!entry.Equals(default(CachedTextureEntry)))
+ return entry.Texture;
+
+ Texture2D normalTexture = MultiplyTextureColor(texture);
+
+ _cachedTextures.Add(new CachedTextureEntry { Key = cacheKey, Texture = normalTexture });
+ return normalTexture;
+ }
+ }
+
+ private Texture2D MultiplyTextureColor(Texture2D texture)
+ {
+ int width = texture.width;
+ int height = texture.height;
+
+ Color[] pixels = new Color[width * height];
+ Color[] originalPixels = texture.GetPixels();
+
+ /*float cosTheta = 0f;
+ float sinTheta = 0f;
+ float minDP = 0f;
+ float dpRange = 0f;
+
+ if (_colorScheme.UseGradient)
+ {
+ float angleRad = _colorScheme.GradientAngle * Mathf.Deg2Rad;
+ cosTheta = Mathf.Cos(angleRad);
+ sinTheta = Mathf.Sin(angleRad);
+
+ float dp00 = 0;
+ float dp10 = width * cosTheta;
+ float dp01 = height * sinTheta;
+ float dp11 = width * cosTheta + height * sinTheta;
+
+ minDP = Mathf.Min(dp00, dp10, dp01, dp11);
+
+ float maxDP = Mathf.Max(dp00, dp10, dp01, dp11);
+ dpRange = maxDP - minDP;
+
+ if (dpRange == 0f)
+ dpRange = 1f;
+ }*/
+
+ for (int y = 0; y < height; y++)
+ {
+ for (int x = 0; x < width; x++)
+ {
+ int index = y * width + x;
+ Color pixel = originalPixels[index];
+
+ if (pixel == Color.white)
+ {
+ /*if (_colorScheme.UseGradient)
+ {
+ float dp = x * cosTheta + y * sinTheta;
+ float t = (dp - minDP) / dpRange;
+ t = Mathf.Clamp01(t);
+
+ pixels[index] = _colorScheme.BackgroundGradient.Evaluate(t);
+ }
+ else*/
+ {
+ pixels[index] = _colorScheme.BackgroundColor;
+ }
+ }
+ else if (pixel == Color.black)
+ {
+ pixels[index] = _colorScheme.OutlineColor;
+ }
+ else if (pixel == Color.blue)
+ {
+ pixels[index] = _colorScheme.SelectionColor;
+ }
+ else
+ {
+ pixels[index] = pixel.Multiply(_colorScheme.BackgroundColor, 0.9f);
+ }
+ }
+ }
+
+ Texture2D newTexture = new Texture2D(width, height);
+ newTexture.SetPixels(pixels);
+ newTexture.Apply();
+
+ return newTexture;
+ }
+
+ public void DrawSplitGroup(Group group, Action body1, Action body2)
+ {
+ StackFrame sf = new StackFrame(1, true);
+ string methodPath = GetMethodPath(sf);
+ string unicumId = $"{methodPath}-{group.InstanceId}";
+
+ if (_groupDatas.TryGetValue(unicumId, out GroupData gd) == false)
+ {
+ gd = new GroupData();
+ gd.SplitterPosition = group.SplitterStartPos;
+ _groupDatas.Add(unicumId, gd);
+ }
+
+ group.Body = () =>
+ {
+ DrawGroup(new Group
+ {
+ Options = new GUILayoutOption[]
+ {
+ GUILayout.Width(gd.SplitterPosition),
+ GUILayout.MaxWidth(gd.SplitterPosition),
+ GUILayout.MinWidth(gd.SplitterPosition)
+ },
+ Body = () =>
+ {
+ body1?.Invoke();
+ }
+ });
+
+ GUILayout.Box("",
+ GUILayout.Width(group.SplitterWidth),
+ GUILayout.MaxWidth(group.SplitterWidth),
+ GUILayout.MinWidth(group.SplitterWidth),
+ GUILayout.ExpandHeight(true));
+
+ gd.SplitterRect = GUILayoutUtility.GetLastRect();
+
+ if (group.GroupType == GroupType.Horizontal)
+ {
+ EditorGUIUtility.AddCursorRect(gd.SplitterRect, MouseCursor.ResizeHorizontal);
+ }
+ else if (group.GroupType == GroupType.Vertical)
+ {
+ EditorGUIUtility.AddCursorRect(gd.SplitterRect, MouseCursor.ResizeVertical);
+ }
+
+ DrawGroup(new Group
+ {
+ Options = new GUILayoutOption[]
+ {
+ GUILayout.ExpandWidth(true)
+ },
+ Body = () =>
+ {
+ body2?.Invoke();
+ }
+ });
+ };
+
+ DrawGroup(group);
+
+ if (Event.current != null)
+ {
+ switch (Event.current.rawType)
+ {
+ case EventType.MouseDown:
+ if (gd.SplitterRect.Contains(Event.current.mousePosition))
+ {
+ gd.IsDragging = true;
+ }
+ break;
+ case EventType.MouseDrag:
+ if (gd.IsDragging)
+ {
+ gd.SplitterPosition += Event.current.delta.x;
+ }
+ break;
+ case EventType.MouseUp:
+ if (gd.IsDragging)
+ {
+ gd.IsDragging = false;
+ }
+ break;
+ }
+ }
+ }
+
+ public void DrawGroup(Group group)
+ {
+ RestoreTextures();
+
+ if (group.GroupType == GroupType.Horizontal)
+ {
+ if (group.Style != null)
+ {
+ GUILayout.BeginHorizontal(group.Style, group.Options);
+ }
+ else
+ {
+ GUILayout.BeginHorizontal(group.Options);
+ }
+
+ if (group.Flexible)
+ FlexibleSpace();
+
+ group.Body.Invoke();
+
+ if (group.Flexible)
+ FlexibleSpace();
+
+ GUILayout.EndHorizontal();
+ }
+ else if (group.GroupType == GroupType.Vertical)
+ {
+ if (group.Style != null)
+ {
+ GUILayout.BeginVertical(group.Style, group.Options);
+ }
+ else
+ {
+ GUILayout.BeginVertical(group.Options);
+ }
+
+ if (group.Scroll)
+ {
+ StackFrame sf = new StackFrame(1, true);
+ BeginScroll(group, sf);
+ }
+
+ if (group.Flexible)
+ FlexibleSpace();
+
+ group.Body.Invoke();
+
+ if (group.Flexible)
+ FlexibleSpace();
+
+ if (group.Scroll)
+ {
+ EndScroll();
+ }
+
+ GUILayout.EndVertical();
+ }
+ else if (group.GroupType == GroupType.Fade)
+ {
+ if (EditorGUILayout.BeginFadeGroup(group.Fade.faded))
+ {
+ if (group.Flexible)
+ FlexibleSpace();
+
+ group.Body.Invoke();
+
+ if (group.Flexible)
+ FlexibleSpace();
+ }
+
+ EditorGUILayout.EndFadeGroup();
+ }
+ else
+ {
+ Debug.LogError($"Unknown group type.");
+ }
+ }
+
+ public bool HamburgerButton(Rect position, GUIContent content)
+ {
+ bool _value = GUI.Button(position, content, _coloredStyle.HamburgerButton);
+ return _value;
+ }
+
+ public bool HamburgerToggle(Rect position, bool value)
+ {
+ bool _value = EditorGUI.Toggle(position, value, EditorStyles.toggle);
+ return _value;
+ }
+
+ public bool CheckBox(GUIContent label, bool value, bool rightSide = true, Action onClick = null, Action onValueChange = null)
+ {
+ bool _value = false;
+
+ DrawGroup(new Group
+ {
+ Style = _coloredStyle.CheckBoxField,
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ if (rightSide)
+ {
+ Btn();
+ }
+
+ Rect rect = GUILayoutUtility.GetRect(width: 25, height: 25);
+
+ GUI.backgroundColor = _colorScheme.CheckBoxColor;
+ _value = EditorGUI.Toggle(
+ rect,
+ value,
+ EditorStyles.toggle);
+ GUI.backgroundColor = Color.white;
+
+ if (!rightSide)
+ {
+ Btn();
+ }
+ }
+ });
+
+ void Btn()
+ {
+ if (GUILayout.Button(label, _coloredStyle.CheckBoxLabel))
+ {
+ if (onClick == null)
+ {
+ value = !value;
+ if (onValueChange != null)
+ {
+ onValueChange.Invoke();
+ }
+ }
+ else
+ {
+ onClick.Invoke();
+ }
+ }
+
+ GUILayout.FlexibleSpace();
+ }
+
+ return _value;
+ }
+
+ public void DrawTable(Action[,] actions)
+ {
+ int rows = actions.GetLength(0);
+ int columns = actions.GetLength(1);
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ for (int i = 0; i < columns; i++)
+ {
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Vertical,
+ Body = () =>
+ {
+ for (int j = 0; j < rows; j++)
+ {
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = actions[j, i]
+ });
+ }
+ }
+ });
+ }
+ }
+ });
+ }
+
+ public int ShaderDropdown(GUIContent content, int option, string[] options, Action onChange)
+ {
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ FlexibleSpace();
+
+ EditorGUI.BeginChangeCheck();
+ option = EditorGUILayout.Popup(option, options, _coloredStyle.ObjectField);
+
+ if (EditorGUI.EndChangeCheck())
+ {
+ onChange?.Invoke(option);
+ }
+ DrawDropDownIcon();
+ }
+ });
+
+ return option;
+ }
+
+ public int BigDropdown(int selectedIndex, GUIContent[] displayedOptions, Action onChange, bool expand = true)
+ {
+ GUIStyle customStyle = _coloredStyle.BigDropdown;
+ GUIContent currentSelection = displayedOptions[selectedIndex];
+
+ GUILayoutOption[] options;
+
+ if (expand)
+ {
+ options = new GUILayoutOption[] { GUILayout.Height(customStyle.fixedHeight), GUILayout.ExpandWidth(true) };
+ }
+ else
+ {
+ Vector2 textSize = customStyle.CalcSize(new GUIContent(currentSelection.text));
+ float imageWidth = 0f;
+
+ if (currentSelection.image != null)
+ {
+ imageWidth = customStyle.fixedHeight - 2;
+ imageWidth += 2f;
+ }
+
+ float calculatedWidth = textSize.x + imageWidth + 20f;
+ if (calculatedWidth < 200)
+ {
+ calculatedWidth = 200;
+ }
+ options = new GUILayoutOption[] { GUILayout.Height(customStyle.fixedHeight), GUILayout.Width(calculatedWidth) };
+ }
+
+ Rect dropdownRect = EditorGUILayout.GetControlRect(options);
+
+ EditorGUI.BeginChangeCheck();
+ selectedIndex = EditorGUI.Popup(dropdownRect, selectedIndex, displayedOptions, customStyle);
+ if (EditorGUI.EndChangeCheck())
+ {
+ onChange?.Invoke(selectedIndex);
+ }
+
+ if (currentSelection.image != null)
+ {
+ float imageSize = customStyle.fixedHeight - 2;
+ Rect imageRect = new Rect(dropdownRect.x + 1, dropdownRect.y + 1, imageSize, imageSize);
+ GUI.DrawTexture(imageRect, currentSelection.image, ScaleMode.ScaleToFit);
+ }
+
+ DrawDropDownIcon(-5);
+
+ return selectedIndex;
+ }
+
+ public int Dropdown(GUIContent content, int option, string[] displayedOptions, Action onChange)
+ {
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ FlexibleSpace();
+ EditorGUI.BeginChangeCheck();
+ option = EditorGUILayout.Popup(option, displayedOptions, _coloredStyle.ObjectField, GUILayout.Width(200));
+ if (EditorGUI.EndChangeCheck())
+ {
+ onChange?.Invoke(option);
+ }
+
+ DrawDropDownIcon();
+ }
+ });
+
+ return option;
+ }
+
+ private void DrawDropDownIcon(float paddingX = 5)
+ {
+ Rect popupRect = GUILayoutUtility.GetLastRect();
+
+ float iconSize = popupRect.height * 1f;
+ Rect iconRect = new Rect(
+ popupRect.x + popupRect.width - iconSize - paddingX, // 5 pixels right padding
+ popupRect.y + (popupRect.height - iconSize) / 2 + 1, // Vertical centering
+ iconSize,
+ iconSize
+ );
+
+ GUIContent dropdownIcon = EditorGUIUtility.IconContent("Dropdown");
+ Texture iconTexture = dropdownIcon?.image;
+
+ if (iconTexture != null)
+ {
+ GUI.Label(iconRect, new GUIContent(iconTexture));
+ }
+ else
+ {
+ GUI.Label(iconRect, new GUIContent("V"));
+ }
+ }
+
+ public void GenericMenu(GenericMenu menu, GUIContent content, string selectedItem)
+ {
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ FlexibleSpace();
+ if (Button(new GUIContent(selectedItem), _coloredStyle.ObjectField, true))
+ {
+ menu.ShowAsContext();
+ }
+
+ DrawDropDownIcon();
+ }
+ });
+ }
+
+ public bool Toggle(GUIContent content, bool value)
+ {
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ Space10();
+ FlexibleSpace();
+
+ GUIStyle buttonStyle = value ? _coloredStyle.ActiveToggle : _coloredStyle.ObjectField;
+
+ if (GUILayout.Button(value ? "ENABLED" : "DISABLED", buttonStyle))
+ {
+ value = !value;
+ }
+ }
+ });
+
+ return value;
+ }
+
+ public string BigTextField(string value, GUIContent content, bool password = false/*, string placeholder = "Enter text..."*/)
+ {
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ if (content != null)
+ {
+ Vector2 textSize = _coloredStyle.Label12px.CalcSize(content);
+ GUILayout.Label(content, _coloredStyle.BigFieldLabel12px, GUILayout.Width(textSize.x));
+ Space60();
+ }
+
+ GUIStyle style;
+
+ /*if (value == null || value == placeholder)
+ {
+ style = new GUIStyle(_coloredStyle.BigTextField);
+ style.normal.textColor = Color.gray;
+ value = placeholder;
+ }
+ else*/
+ {
+ style = _coloredStyle.BigTextField;
+ }
+
+ if (password)
+ {
+ value = EditorGUILayout.PasswordField(value, style, GUILayout.ExpandWidth(true));
+ }
+ else
+ {
+ value = EditorGUILayout.TextField(value, style, GUILayout.ExpandWidth(true));
+ }
+ }
+ });
+
+ return value;
+ }
+
+ public string TextAreaPrefs(string prefsKey, GUIContent content, string currentValue, float width)
+ {
+ EditorGUI.BeginChangeCheck();
+ string newValue = TextArea(content, currentValue, width);
+ if (EditorGUI.EndChangeCheck())
+ {
+ EditorPrefs.SetString(prefsKey, newValue);
+ return newValue;
+ }
+ return currentValue;
+ }
+
+ public string TextFieldPrefs(string prefsKey, GUIContent content, string currentValue)
+ {
+ EditorGUI.BeginChangeCheck();
+ string newValue = TextField(content, currentValue);
+ if (EditorGUI.EndChangeCheck())
+ {
+ EditorPrefs.SetString(prefsKey, newValue);
+ return newValue;
+ }
+ return currentValue;
+ }
+
+
+ public string TextArea(GUIContent content, string currentValue, float? width = null)
+ {
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ Space10();
+ FlexibleSpace();
+
+ if (width != null)
+ {
+ currentValue = EditorGUILayout.TextArea(currentValue, GUILayout.Width(width.Value));
+ }
+ else
+ {
+ currentValue = EditorGUILayout.TextArea(currentValue);
+ }
+
+ }
+ });
+
+ return currentValue;
+ }
+
+ public bool SubButtonText(string label, string tooltip = null) =>
+ SubButtonText(new GUIContent(label, tooltip));
+
+ public bool SubButtonText(GUIContent content)
+ {
+ Vector2 size = _coloredStyle.HamburgerTextSubButton.CalcSize(content);
+ size += new Vector2(10, 0);
+ return GUILayout.Button(content, _coloredStyle.HamburgerTextSubButton, GUILayout.Width(size.x));
+ }
+
+ public bool SubButtonIcon(Texture image, string tooltip = null)
+ {
+ return GUILayout.Button(new GUIContent(image, tooltip), _coloredStyle.HamburgerImageSubButton);
+ }
+
+ public string TextField(GUIContent content, string currentValue, GUIContent btnLabel = null, Action buttonClick = null, bool password = false, string placeholder = "Enter text...")
+ {
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ Space10();
+ FlexibleSpace();
+
+ Vector2 textSize = _coloredStyle.TextField.CalcSize(new GUIContent(currentValue));
+
+ float width = textSize.x;
+
+ if (width > 400)
+ {
+ width = 400;
+ }
+ else if (width < 200 && buttonClick != null)
+ {
+ width = 160;
+ }
+ else if (width < 200)
+ {
+ width = 200;
+ }
+ else
+ {
+ width += 10;
+ }
+
+ GUIStyle style;
+
+ if (currentValue == null || currentValue == placeholder)
+ {
+ style = new GUIStyle(_coloredStyle.TextField);
+ style.normal.textColor = Color.gray;
+ currentValue = placeholder;
+ }
+ else
+ {
+ style = _coloredStyle.TextField;
+ }
+
+ if (password)
+ {
+ currentValue = EditorGUILayout.PasswordField(currentValue, style, GUILayout.Width(width));
+ }
+ else
+ {
+ currentValue = EditorGUILayout.TextField(currentValue, style, GUILayout.Width(width));
+ }
+
+ if (buttonClick != null)
+ {
+ Space10();
+
+ if (btnLabel.image == null)
+ {
+ if (SubButtonText(btnLabel))
+ {
+ buttonClick.Invoke();
+ }
+ }
+ else
+ {
+ if (SubButtonIcon(btnLabel.image, btnLabel.tooltip))
+ {
+ buttonClick.Invoke();
+ }
+ }
+ }
+ }
+ });
+
+ return currentValue;
+ }
+
+ public float SliderField(GUIContent content, float value, float minValue, float maxValue)
+ {
+ float _value = 0;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ Space10();
+ FlexibleSpace();
+
+ GUI.backgroundColor = _colorScheme.UnityGuiColor;
+ _value = EditorGUILayout.Slider(value, minValue, maxValue, GUILayout.Width(200));
+ GUI.backgroundColor = Color.white;
+ }
+ });
+
+ return _value;
+ }
+
+ public float FloatField(GUIContent content, float value)
+ {
+ float _value = 0;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ Space10();
+ FlexibleSpace();
+
+ _value = EditorGUILayout.FloatField(value, _coloredStyle.ObjectField, GUILayout.Width(200));
+ }
+ });
+
+ return _value;
+ }
+
+ public int IntField(GUIContent content, int value)
+ {
+ int _value = 0;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ Space10();
+ FlexibleSpace();
+
+ _value = EditorGUILayout.IntField(value, _coloredStyle.ObjectField, GUILayout.Width(200));
+ }
+ });
+
+ return _value;
+ }
+
+ public Vector2 Vector2Field(GUIContent content, Vector2 value)
+ {
+ Vector2 _value = default;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ Space10();
+ FlexibleSpace();
+
+ GUI.backgroundColor = _colorScheme.UnityGuiColor;
+ _value = EditorGUILayout.Vector2Field("", value, GUILayout.Width(200));
+ GUI.backgroundColor = Color.white;
+ }
+ });
+
+ return _value;
+ }
+
+ public Color ColorField(GUIContent content, Color value)
+ {
+ Color _value = default;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ Space10();
+ FlexibleSpace();
+
+ GUI.backgroundColor = _colorScheme.UnityGuiColor;
+ _value = EditorGUILayout.ColorField("", value, GUILayout.Width(200));
+ GUI.backgroundColor = Color.white;
+ }
+ });
+
+ return _value;
+ }
+
+ public Vector2Int Vector2IntField(GUIContent content, Vector2Int value)
+ {
+ Vector2Int _value = default;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ Space10();
+ FlexibleSpace();
+
+ GUI.backgroundColor = _colorScheme.UnityGuiColor;
+ _value = EditorGUILayout.Vector2IntField("", value, GUILayout.Width(200));
+ GUI.backgroundColor = Color.white;
+ }
+ });
+
+ return _value;
+ }
+
+ public Vector4 Vector4Field(GUIContent content, Vector4 value)
+ {
+ Vector4 _value = default;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ Space10();
+ FlexibleSpace();
+
+ GUI.backgroundColor = _colorScheme.UnityGuiColor;
+ _value = EditorGUILayout.Vector4Field("", value, GUILayout.Width(200));
+ GUI.backgroundColor = Color.white;
+ }
+ });
+
+ return _value;
+ }
+
+ public int LayerField(GUIContent content, int layer)
+ {
+ int result = 0;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ Space10();
+ FlexibleSpace();
+
+ Rect r = EditorGUILayout.GetControlRect(false, 20);
+ result = EditorGUI.LayerField(r, layer, _coloredStyle.ObjectField);
+ Space(-5);
+ }
+ });
+
+ return result;
+ }
+
+ public void Line(bool horizontal = true, int lineHeight = 1)
+ {
+ if (horizontal)
+ {
+ Rect rect = EditorGUILayout.GetControlRect(false, lineHeight);
+ rect.height = lineHeight;
+ rect.x -= 3;
+
+ Color lineColor = Color.gray;
+ lineColor.a = 0.25f;
+
+ EditorGUI.DrawRect(rect, lineColor);
+ }
+ else
+ {
+ Rect rect = EditorGUILayout.GetControlRect(false, lineHeight);
+ rect.width = 1;
+ rect.height = lineHeight;
+ rect.x += rect.width / 2;
+
+ Color lineColor = Color.gray;
+ lineColor.a = 0.25f;
+
+ EditorGUI.DrawRect(rect, lineColor);
+ }
+
+ }
+
+ public void TopProgressBar(float value)
+ {
+ Rect position = GUILayoutUtility.GetRect(0, 7, GUILayout.ExpandWidth(true));
+
+ int controlId = GUIUtility.GetControlID(nameof(TopProgressBar).GetHashCode(), FocusType.Keyboard);
+
+ if (Event.current.GetTypeForControl(controlId) == EventType.Repaint)
+ {
+ if (value > 0.0f)
+ {
+ Rect barRect = new Rect(position);
+ barRect.width *= value;
+ _coloredStyle.ProgressBar.Draw(barRect, false, false, false, false);
+ }
+ }
+ }
+
+ public bool LinkLabel(GUIContent label, GUIStyle customStyle, params GUILayoutOption[] options)
+ {
+ bool clicked = false;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Rect btnRect = GUILayoutUtility.GetRect(label, customStyle, options);
+ clicked = GUI.Button(btnRect, label, customStyle);
+ }
+ });
+
+ return clicked;
+ }
+
+ public void HelpBox(string message, MessageType type)
+ {
+ GUI.backgroundColor = _colorScheme.UnityGuiColor;
+ EditorGUILayout.HelpBox(message, type);
+ GUI.backgroundColor = Color.white;
+ }
+
+ public bool SquareButton30x30(GUIContent label)
+ {
+ bool clicked = false;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ GUIStyle style = _coloredStyle.SquareButton30x30;
+ Rect btnRect = GUILayoutUtility.GetRect(label, style, GUILayout.ExpandWidth(true));
+ clicked = GUI.Button(btnRect, label, style);
+ }
+ });
+
+ return clicked;
+ }
+
+ public bool TabButton(UITab tab)
+ {
+ bool clicked = false;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ GUIStyle style = _coloredStyle.TabButton;
+
+ if (tab.Selected)
+ {
+ GUIStyle pbarBody = _coloredStyle.TabSelector;
+ GUILayout.Box(GUIContent.none, pbarBody, GUILayout.Width(4), GUILayout.ExpandHeight(true));
+ }
+
+ Rect btnRect = GUILayoutUtility.GetRect(tab.Label, style, GUILayout.ExpandWidth(true));
+ clicked = GUI.Button(btnRect, tab.Label, style);
+ }
+ });
+
+ return clicked;
+ }
+
+ public void BeginScroll(Group group, StackFrame sf)
+ {
+ string methodPath = GetMethodPath(sf);
+ string unicumId = $"{methodPath}-{group.InstanceId}";
+
+ if (_groupDatas.TryGetValue(unicumId, out GroupData gd) == false)
+ {
+ gd = new GroupData();
+ _groupDatas.Add(unicumId, gd);
+ }
+
+ GUI.backgroundColor = _colorScheme.UnityGuiColor;
+ gd.ScrollPosition = EditorGUILayout.BeginScrollView(gd.ScrollPosition, false, false);
+ GUI.backgroundColor = Color.white;
+ }
+
+ public void EndScroll()
+ {
+ EditorGUILayout.EndScrollView();
+ }
+
+ public string GetMethodPath(StackFrame frame)
+ {
+ var method = frame.GetMethod();
+ string className = method.DeclaringType.Name;
+ int lineNumber = frame.GetFileLineNumber();
+ return $"{className}-{lineNumber}";
+ }
+
+ private List _internalHambBuffer;
+ private Delegate _validatorDelegate;
+
+ public void DrawMenu(HamburgerItem menu)
+ {
+ if (_internalHambBuffer == null)
+ {
+ _internalHambBuffer = new List();
+ }
+
+ DrawMenu(_internalHambBuffer, menu);
+ }
+
+ public void DrawMenu(List buffer, HamburgerItem menu)
+ {
+ if (buffer.Count > _hamburgerMenuItemsLimit)
+ {
+ int itemsToRemove = buffer.Count - _hamburgerMenuItemsLimit;
+ buffer.RemoveRange(0, itemsToRemove);
+ }
+
+ int index = buffer.FindIndex(x => x.Id == menu.Id);
+
+ if (index < 0)
+ {
+ buffer.Add(menu);
+ index = buffer.Count - 1;
+ }
+
+ GUILayout.BeginHorizontal(_coloredStyle.HambugerButtonBg);
+
+ if (buffer[index].Fade == null)
+ {
+ buffer[index].Fade = new AnimBool(false)
+ {
+ speed = 4f
+ };
+ }
+
+ if (menu.Body != null)
+ {
+ Texture2D t2d = buffer[index].Fade.value ? _data.Resources.ImgExpandOpened : _data.Resources.ImgExpandClosed;
+ GUILayout.Button(t2d, _coloredStyle.HamburgerExpandButton);
+ }
+
+ Rect btnRect = GUILayoutUtility.GetRect(menu.GUIContent, _coloredStyle.HamburgerButton, GUILayout.ExpandWidth(true));
+ btnRect.x += 15;
+ btnRect.width -= 46;
+
+ if (HamburgerButton(btnRect, menu.GUIContent))
+ {
+ buffer[index].Fade.target = !buffer[index].Fade.target;
+ }
+
+ Rect smallBtnRect = default;
+
+ if (menu.OnButtonClick != null)
+ {
+ smallBtnRect = GUILayoutUtility.GetRect(new GUIContent(), GUI.skin.box);
+ smallBtnRect.width = 20;
+ smallBtnRect.height = 20;
+ smallBtnRect.x -= 15;
+
+ GUIStyle style = menu.ButtonGuiContent.image == null
+ ? _coloredStyle.HamburgerTextSubButton
+ : _coloredStyle.HamburgerImageSubButton;
+
+ if (GUI.Button(smallBtnRect, menu.ButtonGuiContent, style))
+ menu.OnButtonClick.Invoke();
+ }
+
+ if (menu.CheckBoxValueChanged != null)
+ {
+ Rect cbRect = btnRect;
+ cbRect.x += btnRect.width;
+ cbRect.width = 20;
+
+ if (smallBtnRect == default)
+ cbRect.x += 10;
+ else
+ cbRect.x -= 1;
+
+ GUI.backgroundColor = _colorScheme.CheckBoxColor;
+
+ buffer[index].CheckBoxValue.Value = HamburgerToggle(
+ cbRect,
+ buffer[index].CheckBoxValue.Value);
+
+ GUI.backgroundColor = Color.white;
+
+ if (buffer[index].CheckBoxValue.Value != buffer[index].CheckBoxValue.Temp)
+ {
+ buffer[index].CheckBoxValue.Temp = buffer[index].CheckBoxValue.Value;
+ menu.CheckBoxValueChanged.Invoke(menu.Id, buffer[index].CheckBoxValue.Value);
+ }
+ }
+
+ GUILayout.EndHorizontal();
+
+ if (menu.Body != null)
+ {
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Space15();
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Vertical,
+ Body = () =>
+ {
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Fade,
+ Fade = buffer[index].Fade,
+ Body = () =>
+ {
+ Space(6);
+ menu.Body.Invoke();
+ }
+ });
+ }
+ });
+
+ Space15();
+ }
+ });
+ }
+ }
+
+ public T EnumField(GUIContent content, T @enum, bool uppercase = true, string[] itemNames = null, Action onChange = null)
+ {
+ List enumValues = Enum.GetValues(@enum.GetType()).Cast().ToList();
+
+ if (itemNames == null)
+ {
+ itemNames = Enum.GetNames(@enum.GetType());
+ }
+
+ if (uppercase)
+ {
+ for (int i = 0; i < itemNames.Length; i++)
+ {
+ itemNames[i] = Regex.Replace(itemNames[i], "(\\B[A-Z])", "$1").ToUpper();
+ }
+ }
+
+ int result = 0;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Label12px(content);
+ Space10();
+ FlexibleSpace();
+
+ Rect popupRect = GUILayoutUtility.GetRect(_coloredStyle.ObjectField.fixedWidth, _coloredStyle.ObjectField.fixedHeight);
+ int _result2 = EditorGUI.Popup(popupRect, enumValues.IndexOf(Convert.ToInt32(@enum)), itemNames, _coloredStyle.ObjectField);
+ result = enumValues[_result2];
+ }
+ });
+
+ T _result = (T)(object)result;
+
+ if (_result.Equals(@enum) == false)
+ {
+ onChange?.Invoke(_result);
+ }
+ DrawDropDownIcon();
+ return _result;
+ }
+
+ public void DragZoneInt(Rect dragZone, ref int dragValue)
+ {
+ Event currentEvent = Event.current;
+ int controlID = GUIUtility.GetControlID(FocusType.Passive);
+ switch (currentEvent.type)
+ {
+ case EventType.Repaint:
+ // Change the cursor to the horizontal resize cursor when it's over the drag zone
+ if (dragZone.Contains(currentEvent.mousePosition))
+ {
+ EditorGUIUtility.AddCursorRect(dragZone, MouseCursor.ResizeHorizontal);
+ }
+ break;
+
+ case EventType.MouseDown:
+ // Check if the mouse is within the drag zone
+ if (dragZone.Contains(currentEvent.mousePosition))
+ {
+ GUIUtility.hotControl = controlID;
+ currentEvent.Use();
+ }
+ break;
+
+ case EventType.MouseDrag:
+ // Check if we are dragging the hot control
+ if (GUIUtility.hotControl == controlID)
+ {
+ // Perform drag operation here, for example, adjust the dragValue
+ dragValue += (int)currentEvent.delta.x;
+ currentEvent.Use();
+ }
+ break;
+
+ case EventType.MouseUp:
+ // End the drag operation
+ if (GUIUtility.hotControl == controlID)
+ {
+ GUIUtility.hotControl = 0;
+ currentEvent.Use();
+ }
+ break;
+ }
+ }
+
+ public string FileField(GUIContent content, string selectedPath, GUIContent btnLabel, string folderPanelText)
+ {
+ TextField(
+ content,
+ selectedPath,
+ btnLabel,
+ () =>
+ {
+ string _selectedPath = EditorUtility.OpenFilePanel(folderPanelText, "", "");
+
+ if (string.IsNullOrWhiteSpace(_selectedPath) == false)
+ {
+ if (IsPathInsideAssetsPath(_selectedPath))
+ {
+ selectedPath = _selectedPath;
+ }
+ else
+ {
+ //Console.LogError(FcuLocKey.label_inside_assets_folder.Localize());
+ }
+ }
+ });
+
+ return ToRelativePath(selectedPath);
+ }
+
+ public string FolderField(GUIContent content, string selectedPath, GUIContent btnLabel, string folderPanelText)
+ {
+ TextField(
+ content,
+ selectedPath,
+ btnLabel,
+ () =>
+ {
+ string _selectedPath = EditorUtility.OpenFolderPanel(folderPanelText, "", "");
+
+ if (string.IsNullOrWhiteSpace(_selectedPath) == false)
+ {
+ if (IsPathInsideAssetsPath(_selectedPath))
+ {
+ selectedPath = _selectedPath;
+ }
+ else
+ {
+ //Console.LogError(FcuLocKey.label_inside_assets_folder.Localize());
+ }
+ }
+ });
+
+ return ToRelativePath(selectedPath);
+ }
+
+ private bool IsPathInsideAssetsPath(string path)
+ {
+ if (path.IndexOf(Application.dataPath, System.StringComparison.InvariantCultureIgnoreCase) == -1)
+ {
+ return false;
+ }
+
+ return true;
+ }
+
+ private string ToRelativePath(string absolutePath)
+ {
+ if (absolutePath.StartsWith(Application.dataPath))
+ {
+ return "Assets" + absolutePath.Substring(Application.dataPath.Length);
+ }
+
+ return absolutePath;
+ }
+
+ public void Label10px(string label, string tooltip = null, params GUILayoutOption[] options)
+ {
+ Label10px(new GUIContent(label, tooltip), options);
+ }
+
+ public void Label10px(GUIContent content, params GUILayoutOption[] options)
+ {
+ GUILayout.Label(content, _coloredStyle.Label10px, options);
+ }
+
+ public void Label12px(string label, string tooltip = null, params GUILayoutOption[] options)
+ {
+ Label12px(new GUIContent(label, tooltip), options);
+ }
+
+ public void Label12px(GUIContent content, params GUILayoutOption[] options)
+ {
+ if (content != null)
+ {
+ Vector2 textSize = _coloredStyle.Label12px.CalcSize(content);
+ var combinedOptions = options.Concat(new GUILayoutOption[] { GUILayout.Width(textSize.x) }).ToArray();
+ GUILayout.Label(content, _coloredStyle.Label12px, combinedOptions);
+ }
+ }
+
+ public void RedLinkLabel10px(GUIContent content, params GUILayoutOption[] options)
+ {
+ GUILayout.Label(content, _coloredStyle.RedLabel10px, options);
+ }
+
+ public void BlueLinkLabel10px(GUIContent content, params GUILayoutOption[] options)
+ {
+ GUILayout.Label(content, _coloredStyle.BlueLabel10px, options);
+ }
+
+ public void SectionHeader(string label, string tooltip = null)
+ {
+ GUILayout.Label(new GUIContent(label, tooltip), _coloredStyle.SectionHeader, GUILayout.ExpandWidth(true));
+ }
+
+ public void TabHeader(string label, string tooltip = null, float paddingTop = -9)
+ {
+ RectOffset stylePadding = _coloredStyle.SectionHeader.padding;
+ float totalPaddingTop = paddingTop + stylePadding.top;
+ GUILayout.BeginVertical();
+ GUILayout.Space(totalPaddingTop);
+ GUILayout.Label(new GUIContent(label, tooltip), _coloredStyle.SectionHeader, GUILayout.ExpandWidth(true));
+ GUILayout.EndVertical();
+ }
+
+ public bool Button(GUIContent label, GUIStyle style, bool expand)
+ {
+ bool clicked = false;
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ GUILayoutOption[] options;
+ if (expand)
+ {
+ options = new GUILayoutOption[] { GUILayout.ExpandWidth(true) };
+ }
+ else
+ {
+ Vector2 textSize = _coloredStyle.Label12px.CalcSize(label);
+ options = new GUILayoutOption[] { GUILayout.Width(textSize.x + 20) };
+ }
+
+ clicked = GUILayout.Button(label, style, options);
+ }
+ });
+
+ return clicked;
+ }
+
+
+ public bool OutlineButton(string label, string tooltip = null, bool expand = false) =>
+ OutlineButton(new GUIContent(label, tooltip), expand);
+
+ public bool OutlineButton(GUIContent content, bool expand = false) =>
+ Button(content, _coloredStyle.OutlineButton, expand);
+
+ public bool LinkButton(GUIContent content, bool expand) =>
+ Button(content, _coloredStyle.LinkButton, expand);
+
+ public void Space60() => GUILayout.Space(60);
+ public void Space30() => GUILayout.Space(30);
+ public void Space15() => GUILayout.Space(15);
+ public void Space10() => GUILayout.Space(10);
+ public void Space5() => GUILayout.Space(5);
+ public void Space(float pixels) => GUILayout.Space(pixels);
+ public void FlexibleSpace() => GUILayout.FlexibleSpace();
+
+ private SerializedProperty GetPropertyRecursive(string[] names, int index, SerializedProperty property)
+ {
+ if (index >= names.Length)
+ {
+ return property;
+ }
+ else
+ {
+ string fieldName = names[index];
+ SerializedProperty rprop = property.FindPropertyRelative(fieldName);
+ return GetPropertyRecursive(names, index + 1, rprop);
+ }
+ }
+
+ public IEnumerable GetChildren(SerializedProperty property)
+ {
+ property = property.Copy();
+ var nextElement = property.Copy();
+ bool hasNextElement = nextElement.NextVisible(false);
+ if (!hasNextElement)
+ {
+ nextElement = null;
+ }
+
+ property.NextVisible(true);
+ while (true)
+ {
+ if ((SerializedProperty.EqualContents(property, nextElement)))
+ {
+ yield break;
+ }
+
+ yield return property;
+
+ bool hasNext = property.NextVisible(false);
+ if (!hasNext)
+ {
+ break;
+ }
+ }
+ }
+
+ public void DrawChildProperty(SerializedObject so, SerializedProperty parentElement, Expression> pathExpression)
+ {
+ SerializedProperty targetGraphic = GetChildProperty(parentElement, pathExpression);
+
+ if (targetGraphic == null)
+ {
+ return;
+ }
+
+ DrawProperty(so, targetGraphic);
+ }
+
+ public SerializedProperty GetPropertyFromArray(SerializedProperty arrayProperty, int elementIndex)
+ {
+ if (arrayProperty?.arraySize > 0 && arrayProperty.arraySize >= elementIndex + 1)
+ {
+ return arrayProperty.GetArrayElementAtIndex(elementIndex);
+ }
+
+ return null;
+ }
+
+ public SerializedProperty GetChildProperty(SerializedProperty arrayProperty, Expression> pathExpression)
+ {
+ try
+ {
+ string[] fields = pathExpression.GetFieldsArray();
+ return arrayProperty.FindPropertyRelative(fields[0]);
+ }
+ catch
+ {
+ return null;
+ }
+ }
+
+ public void DrawProperty(SerializedObject so, SerializedProperty property)
+ {
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Space15();
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Vertical,
+ Body = () =>
+ {
+ so.Update();
+
+ try
+ {
+ EditorGUILayout.PropertyField(property, true);
+ }
+ catch (Exception)
+ {
+
+ }
+
+ so.ApplyModifiedProperties();
+ }
+ });
+ }
+ });
+ }
+
+ public static string GetFieldName(Expression> pathExpression)
+ {
+ string[] fields = pathExpression.GetFieldsArray();
+ return fields.Last();
+ }
+
+ public void SerializedPropertyField(SerializedObject so, Expression> pathExpression, bool? isExpanded = null)
+ {
+ string[] fields = pathExpression.GetFieldsArray();
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ Space(14);
+
+ DrawGroup(new Group
+ {
+ GroupType = GroupType.Vertical,
+ Body = () =>
+ {
+ SerializedProperty rootProperty = so.FindProperty(fields[0]);
+ SerializedProperty lastProperty = GetPropertyRecursive(fields, 1, rootProperty);
+
+ if (isExpanded != null)
+ {
+ lastProperty.isExpanded = (bool)isExpanded;
+ }
+
+ so.Update();
+
+ GUI.backgroundColor = _colorScheme.UnityGuiColor;
+ EditorGUI.indentLevel--;
+ EditorGUILayout.PropertyField(lastProperty, true);
+ EditorGUI.indentLevel++;
+ GUI.backgroundColor = Color.white;
+
+ so.ApplyModifiedProperties();
+ }
+ });
+ }
+ });
+ }
+
+ public void Colorize(Action action)
+ {
+ GUI.backgroundColor = _colorScheme.UnityGuiColor;
+ action.Invoke();
+ GUI.backgroundColor = Color.white;
+ }
+
+ public void VerticalSeparator()
+ {
+ GUILayout.Box(GUIContent.none, _coloredStyle.HorizontalSeparator, GUILayout.Width(1), GUILayout.ExpandHeight(true));
+ }
+
+ public bool Button(GUIContent content, GUILayoutOption options)
+ {
+ GUI.backgroundColor = _colorScheme.OutlineColor;
+ bool value = GUILayout.Button(content, options);
+ GUI.backgroundColor = Color.white;
+ return value;
+ }
+
+ public void DrawObjectFields(object target)
+ {
+ Type targetType = target.GetType();
+ PropertyInfo[] properties = targetType.GetProperties(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
+
+ PropertyHeader headerAttribute = targetType.GetCustomAttribute();
+ if (headerAttribute != null)
+ {
+ SectionHeader(headerAttribute.HeaderLabel.text, headerAttribute.HeaderLabel.tooltip);
+ Space10();
+ }
+
+ for (int i = 0; i < properties.Length; i++)
+ {
+ PropertyInfo property = properties[i];
+
+ CustomInspectorProperty attribute = property.GetCustomAttribute();
+ if (attribute == null) continue;
+
+ if (!property.CanRead || !property.CanWrite)
+ continue;
+
+ EditorGUI.BeginChangeCheck();
+ object currentValue = property.GetValue(target);
+ Type valueType = currentValue?.GetType();
+
+ object newValue = null;
+
+ switch (attribute.Type)
+ {
+ case ComponentType.Toggle:
+ newValue = Toggle(attribute.Label, (bool)currentValue);
+ break;
+ case ComponentType.EnumField:
+ newValue = EnumField(attribute.Label, Convert.ChangeType(currentValue, property.PropertyType));
+ break;
+ case ComponentType.FloatField:
+ newValue = FloatField(attribute.Label, (float)currentValue);
+ break;
+ case ComponentType.TextField:
+ newValue = TextField(attribute.Label, (string)currentValue);
+ break;
+ case ComponentType.IntField:
+ newValue = IntField(attribute.Label, (int)currentValue);
+ break;
+ case ComponentType.Vector2Field:
+ newValue = Vector2Field(attribute.Label, (Vector2)currentValue);
+ break;
+ case ComponentType.Vector2IntField:
+ newValue = Vector2IntField(attribute.Label, (Vector2Int)currentValue);
+ break;
+ case ComponentType.Vector4Field:
+ newValue = Vector4Field(attribute.Label, (Vector4)currentValue);
+ break;
+ case ComponentType.ColorField:
+ newValue = ColorField(attribute.Label, (Color)currentValue);
+ break;
+ case ComponentType.SliderField:
+ if (valueType == typeof(int))
+ {
+ newValue = SliderField(attribute.Label, (int)currentValue, attribute.MinValue, attribute.MaxValue);
+ }
+ else if (valueType == typeof(float))
+ {
+ newValue = SliderField(attribute.Label, (float)currentValue, attribute.MinValue, attribute.MaxValue);
+ }
+ else
+ {
+ HelpBox($"Missing '{attribute.Label.text}' field.", MessageType.Warning);
+ }
+ break;
+ default:
+ HelpBox($"Missing '{attribute.Label.text}' field.", MessageType.Warning);
+ break;
+ }
+
+ Space10();
+
+ if (EditorGUI.EndChangeCheck())
+ {
+ Type fieldType = property.PropertyType;
+
+ if (fieldType == typeof(int))
+ {
+ property.SetValue(target, Convert.ToInt32(newValue));
+ }
+ else if (fieldType == typeof(float))
+ {
+ property.SetValue(target, Convert.ToSingle(newValue));
+ }
+ else if (fieldType == typeof(double))
+ {
+ property.SetValue(target, Convert.ToDouble(newValue));
+ }
+ else if (fieldType == typeof(long))
+ {
+ property.SetValue(target, Convert.ToInt64(newValue));
+ }
+ else if (fieldType == typeof(short))
+ {
+ property.SetValue(target, Convert.ToInt16(newValue));
+ }
+ else if (fieldType == typeof(byte))
+ {
+ property.SetValue(target, Convert.ToByte(newValue));
+ }
+ else if (fieldType == typeof(decimal))
+ {
+ property.SetValue(target, Convert.ToDecimal(newValue));
+ }
+ else if (fieldType == typeof(uint))
+ {
+ property.SetValue(target, Convert.ToUInt32(newValue));
+ }
+ else if (fieldType == typeof(ulong))
+ {
+ property.SetValue(target, Convert.ToUInt64(newValue));
+ }
+ else if (fieldType == typeof(ushort))
+ {
+ property.SetValue(target, Convert.ToUInt16(newValue));
+ }
+ else if (fieldType == typeof(sbyte))
+ {
+ property.SetValue(target, Convert.ToSByte(newValue));
+ }
+ else
+ {
+ property.SetValue(target, newValue);
+ }
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DAInspector.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DAInspector.cs.meta
new file mode 100644
index 00000000..b29c79f6
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DAInspector.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: e8942e5df9107ef40bee328e605f7929
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DaiStyle.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DaiStyle.cs
new file mode 100644
index 00000000..167eb77d
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DaiStyle.cs
@@ -0,0 +1,88 @@
+using System;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ [Serializable]
+ public struct DaiStyle
+ {
+ // Labels
+ public GUIStyle Label12px;
+ public GUIStyle RedLabel10px;
+ public GUIStyle BlueLabel10px;
+ public GUIStyle Label10px;
+ public GUIStyle CheckBoxLabel;
+ public GUIStyle LinkLabel10px;
+ public GUIStyle BigFieldLabel12px;
+ public GUIStyle LabelCentered12px;
+
+ [Space]
+
+ // Buttons
+ public GUIStyle OutlineButton;
+ public GUIStyle SquareButton30x30;
+ public GUIStyle TabButton;
+ public GUIStyle LinkButton;
+ public GUIStyle HamburgerButton;
+ public GUIStyle HamburgerImageSubButton;
+ public GUIStyle HamburgerTextSubButton;
+ public GUIStyle HamburgerExpandButton;
+ public GUIStyle HamburgerButtonBg;
+ public GUIStyle Group6Buttons;
+ public GUIStyle Group5Buttons;
+ public GUIStyle TabSelector;
+
+ [Space]
+
+ // Backgrounds
+ public GUIStyle Background;
+ public GUIStyle WindowRootBg;
+ public GUIStyle DAInspectorBackground;
+ public GUIStyle DiffCheckerBackground;
+ public GUIStyle DiffCheckerRightPanel;
+ public GUIStyle DiffCheckerToImportPanel;
+ public GUIStyle DiffCheckerToRemovePanel;
+ public GUIStyle BoxPanel;
+ public GUIStyle HambugerButtonBg;
+ public GUIStyle HamburgerTabsBg;
+
+ [Space]
+
+ // Fields
+ public GUIStyle TextField;
+ public GUIStyle ActiveToggle;
+ public GUIStyle ObjectField;
+ public GUIStyle BigTextField;
+ public GUIStyle BigDropdown;
+ public GUIStyle CheckBoxField;
+
+ [Space]
+
+ // Progress Bars
+ public GUIStyle ProgressBar;
+ public GUIStyle ProgressBarBg;
+
+ [Space]
+
+ // Tabs
+ public GUIStyle TabBg1;
+ public GUIStyle TabBg2;
+
+ [Space]
+
+ // Separators
+ public GUIStyle HorizontalSeparator;
+
+ [Space]
+
+ // Images
+ public GUIStyle ImgStar;
+
+ [Space]
+
+ // Others
+ public GUIStyle None;
+ public GUIStyle Logo;
+ public GUIStyle SectionHeader;
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DaiStyle.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DaiStyle.cs.meta
new file mode 100644
index 00000000..39e78be1
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/DaiStyle.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: d02c3026933d75848881d250d5547161
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Enums.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Enums.cs
new file mode 100644
index 00000000..bc079f38
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Enums.cs
@@ -0,0 +1,9 @@
+namespace DA_Assets.DAI
+{
+ public enum GroupType
+ {
+ Horizontal = 0,
+ Vertical = 1,
+ Fade = 2
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Enums.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Enums.cs.meta
new file mode 100644
index 00000000..616f303a
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Enums.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 74f5470faa246124d8f3d41f700ef32b
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Extensions.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Extensions.cs
new file mode 100644
index 00000000..2cdc5cd6
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Extensions.cs
@@ -0,0 +1,54 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Linq.Expressions;
+using System.Reflection;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ public static class Extensions
+ {
+ public static string[] GetFieldsArray(this Expression> pathExpression)
+ {
+ MemberExpression me;
+
+ switch (pathExpression.Body.NodeType)
+ {
+ case ExpressionType.Convert:
+ case ExpressionType.ConvertChecked:
+ UnaryExpression ue = pathExpression.Body as UnaryExpression;
+ me = ((ue != null) ? ue.Operand : null) as MemberExpression;
+ break;
+ default:
+ me = pathExpression.Body as MemberExpression;
+ break;
+ }
+
+ List fieldNames = new List();
+
+ while (me != null)
+ {
+ var serInfo = me.Member.GetCustomAttributes().ToArray()[0];
+
+ if (serInfo == null)
+ {
+ if (me.Member.Name.Contains("CS$") == false)
+ {
+ fieldNames.Add(me.Member.Name);
+ }
+ }
+ else
+ {
+ fieldNames.Add(serInfo.FieldName);
+ }
+
+ me = me.Expression as MemberExpression;
+ }
+
+ fieldNames.Reverse();
+
+ return fieldNames.ToArray();
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Extensions.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Extensions.cs.meta
new file mode 100644
index 00000000..167b0c90
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Extensions.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 25232d524c949524e8a16ae3f042e3d6
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Footer.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Footer.cs
new file mode 100644
index 00000000..e7e7d637
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Footer.cs
@@ -0,0 +1,28 @@
+using DA_Assets.Constants;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ public class Footer
+ {
+ public static DAInspector gui => BlackInspector.Instance.Inspector;
+
+ public static void DrawFooter()
+ {
+ gui.Space30();
+
+ gui.DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Flexible = true,
+ Body = () =>
+ {
+ if (gui.LinkButton(new GUIContent($"made by\n{DAConstants.Publisher}"), false))
+ {
+ Application.OpenURL(DAConstants.SiteLink);
+ }
+ }
+ });
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Footer.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Footer.cs.meta
new file mode 100644
index 00000000..24cdcb9e
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Footer.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 669ac4ffc496af642a9b57da9b9c74c8
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Group.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Group.cs
new file mode 100644
index 00000000..da58df04
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Group.cs
@@ -0,0 +1,28 @@
+using System;
+using UnityEditor.AnimatedValues;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ public struct Group
+ {
+ public int InstanceId { get; set; }
+ public GroupType GroupType { get; set; }
+ public Action Body { get; set; }
+ public GUIStyle Style { get; set; }
+ public GUILayoutOption[] Options { get; set; }
+ public bool Flexible { get; set; }
+ public AnimBool Fade { get; set; }
+ public bool Scroll { get; set; }
+ public int SplitterWidth { get; set; }
+ public int SplitterStartPos { get; set; }
+ }
+
+ public class GroupData
+ {
+ public Vector2 ScrollPosition { get; set; } = Vector2.zero;
+ public float SplitterPosition { get; set; }
+ public Rect SplitterRect { get; set; }
+ public bool IsDragging { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Group.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Group.cs.meta
new file mode 100644
index 00000000..88ef0535
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Group.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: ac9c5e720e69e584abb36ea2b3ff8223
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/ICustomInspector.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/ICustomInspector.cs
new file mode 100644
index 00000000..83e8bd4f
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/ICustomInspector.cs
@@ -0,0 +1,9 @@
+namespace DA_Assets.DAI
+{
+ public interface ICustomInspector
+ {
+ void Init();
+ DAInspector Inspector { get; set; }
+ InspectorData Data { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/ICustomInspector.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/ICustomInspector.cs.meta
new file mode 100644
index 00000000..9b55479d
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/ICustomInspector.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: f683eab30a2e06b4ab93ad7edec132e7
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons.meta
new file mode 100644
index 00000000..6a391dbd
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 13085dfec801edb43a7c53fdabc3cf3b
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons/dab_script_icon.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons/dab_script_icon.png
new file mode 100644
index 00000000..2b4dcfd0
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons/dab_script_icon.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons/dab_script_icon.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons/dab_script_icon.png.meta
new file mode 100644
index 00000000..af26b435
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons/dab_script_icon.png.meta
@@ -0,0 +1,153 @@
+fileFormatVersion: 2
+guid: 9ec05e34494b90e4bae63760e1783a23
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons/dag_script_icon.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons/dag_script_icon.png
new file mode 100644
index 00000000..6c75fcb8
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons/dag_script_icon.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons/dag_script_icon.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons/dag_script_icon.png.meta
new file mode 100644
index 00000000..42ed1ee9
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Icons/dag_script_icon.png.meta
@@ -0,0 +1,153 @@
+fileFormatVersion: 2
+guid: ee432816e0eb4084cb0d660c935709ae
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/InfinityScrollRectWindow.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/InfinityScrollRectWindow.cs
new file mode 100644
index 00000000..bfcf4591
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/InfinityScrollRectWindow.cs
@@ -0,0 +1,79 @@
+using System.Collections.Generic;
+using System.Linq;
+using UnityEditor;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ public delegate void DrawItem(T item);
+
+ public class InfinityScrollRectWindow where T4 : CustomInspector, ICustomInspector
+ {
+ public DAInspector gui => CustomInspector.Instance.Inspector;
+
+ private T[] _items;
+ private Vector2 _scrollPosition;
+ protected int _visibleItemCount;
+ protected float _itemHeight;
+ private float _totalScrollHeight;
+ private float _visibleAreaHeight;
+ private DrawItem _drawItem;
+
+ public InfinityScrollRectWindow(int visibleItemCount, float itemHeight)
+ {
+ _visibleItemCount = visibleItemCount;
+ _itemHeight = itemHeight;
+ }
+
+ public void SetData(IEnumerable items, DrawItem drawItem)
+ {
+ _drawItem = drawItem;
+ _items = items.ToArray();
+
+ if (_items.Length < _visibleItemCount)
+ {
+ _visibleItemCount = _items.Length;
+ }
+
+ _visibleAreaHeight = _visibleItemCount * _itemHeight;
+ _totalScrollHeight = _items.Length * _itemHeight;
+ }
+
+ public void OnGUI()
+ {
+ if (_items == null || _items.Length < 1)
+ {
+ GUILayout.Label("No data.");
+ return;
+ }
+
+ if (_drawItem == null)
+ {
+ GUILayout.Label("DrawItem is missing.");
+ return;
+ }
+
+ gui.Colorize(() =>
+ {
+ _scrollPosition = EditorGUILayout.BeginScrollView(_scrollPosition, GUILayout.Height(_visibleAreaHeight));
+ });
+
+ float currentScrollPos = _scrollPosition.y;
+ int startIndex = Mathf.Max(0, (int)(currentScrollPos / _itemHeight) - 1);
+ int endIndex = Mathf.Min(_items.Length, startIndex + _visibleItemCount + 2);
+
+ GUILayout.BeginVertical();
+ GUILayout.Space(startIndex * _itemHeight);
+
+ for (int i = startIndex; i < endIndex; i++)
+ {
+ _drawItem(_items[i]);
+ }
+
+ GUILayout.Space(_totalScrollHeight - endIndex * _itemHeight);
+ GUILayout.EndVertical();
+
+ EditorGUILayout.EndScrollView();
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/InfinityScrollRectWindow.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/InfinityScrollRectWindow.cs.meta
new file mode 100644
index 00000000..bcf175f8
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/InfinityScrollRectWindow.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 0d56cc06daae2ba458273dabbda628cd
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/InspectorData.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/InspectorData.cs
new file mode 100644
index 00000000..10aa9d0c
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/InspectorData.cs
@@ -0,0 +1,17 @@
+using DA_Assets.Constants;
+using DA_Assets.Singleton;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ [CreateAssetMenu(menuName = DAConstants.Publisher + "/" + "Inspector Data")]
+ [ResourcePath("")]
+ public class InspectorData : ScriptableObject
+ {
+ [SerializeField] Resources resources;
+ public Resources Resources { get => resources; set => resources = value; }
+
+ [SerializeField] DaiStyle _basicStyle;
+ public DaiStyle BasicStyle { get => _basicStyle; set => _basicStyle = value; }
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/InspectorData.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/InspectorData.cs.meta
new file mode 100644
index 00000000..6552faa4
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/InspectorData.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 652664ac68c64aa41b0cb574785d0e42
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/LinkedEditorWindow.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/LinkedEditorWindow.cs
new file mode 100644
index 00000000..0b33e567
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/LinkedEditorWindow.cs
@@ -0,0 +1,132 @@
+using DA_Assets.Extensions;
+using System.Collections.Generic;
+using UnityEditor;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ public class LinkedEditorWindow : EditorWindow
+ where T1 : LinkedEditorWindow
+ where T2 : Editor
+ where T3 : MonoBehaviour
+ where T4 : CustomInspector, ICustomInspector
+ {
+ private static Dictionary _instances = new Dictionary();
+
+ public static T1 GetInstance(T2 inspector, T3 monoBeh, Vector2 windowSize, bool fixedSize)
+ {
+ T1 result;
+
+ _instances.TryGetValue(monoBeh.GetInstanceID(), out result);
+
+ if (result.IsDefault())
+ {
+ result = ScriptableObject.CreateInstance();
+ _instances[monoBeh.GetInstanceID()] = result;
+ }
+
+ result.Inspector = inspector;
+ result.MonoBeh = monoBeh;
+
+ if (result.SerializedObject == null)
+ {
+ result.SerializedObject = new SerializedObject(monoBeh);
+ }
+
+ result.WindowSize = windowSize;
+ result.FixedSize = fixedSize;
+
+ return result;
+ }
+
+ protected static DAInspector gui => CustomInspector.Instance.Inspector;
+
+ protected T2 inspector;
+ public T2 Inspector { get => inspector; set => inspector = value; }
+
+ protected T3 monoBeh;
+ public T3 MonoBeh { get => monoBeh; set => monoBeh = value; }
+
+ protected SerializedObject serializedObject;
+ public SerializedObject SerializedObject { get => serializedObject; set => serializedObject = value; }
+
+ private Vector2 windowSize = new Vector2(800, 600);
+ public Vector2 WindowSize { get => windowSize; set => windowSize = value; }
+
+ private bool fixedSize = false;
+ public bool FixedSize { get => fixedSize; set => fixedSize = value; }
+
+ private bool onEnable;
+ private bool init;
+
+ public virtual void OnShow() { }
+ public virtual void DrawGUI() { }
+
+ public void OnEnable()
+ {
+ onEnable = true;
+ init = false;
+
+ DARunner.update += Repaint;
+ }
+
+ public void OnDisable()
+ {
+ DARunner.update -= Repaint;
+ }
+
+ public new void Show()
+ {
+ Show(immediateDisplay: false);
+
+ this.position = new Rect(
+ (Screen.currentResolution.width - windowSize.x * 2) / 2,
+ (Screen.currentResolution.height - windowSize.y * 2) / 2,
+ windowSize.x,
+ windowSize.y);
+
+ if (fixedSize)
+ {
+ this.minSize = windowSize;
+ this.maxSize = windowSize;
+ }
+
+ OnShow();
+ }
+
+ void OnGUI()
+ {
+ if (onEnable)
+ {
+ if (monoBeh == null)
+ {
+ this.Close();
+ return;
+ }
+ else
+ {
+ if (serializedObject == null)
+ {
+ serializedObject = new SerializedObject(monoBeh);
+ }
+
+ if (!init)
+ {
+ init = true;
+ OnShow();
+ }
+ }
+ }
+
+ gui.DrawGroup(new Group
+ {
+ GroupType = GroupType.Vertical,
+ Style = gui.ColoredStyle.WindowRootBg,
+ Body = () =>
+ {
+ DrawGUI();
+ }
+ });
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/LinkedEditorWindow.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/LinkedEditorWindow.cs.meta
new file mode 100644
index 00000000..3e6b3cc4
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/LinkedEditorWindow.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: b5383ae9ce4ca6f4fa1a4f0d6b352bf1
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/MonoBehaviourLinkerEditor.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/MonoBehaviourLinkerEditor.cs
new file mode 100644
index 00000000..5fd7e101
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/MonoBehaviourLinkerEditor.cs
@@ -0,0 +1,57 @@
+using System;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ public class MonoBehaviourLinkerEditor : MonoBehaviourLinkerEditorBase
+ where T1 : ScriptableObject
+ where T3 : MonoBehaviour
+ where T4 : CustomInspector, ICustomInspector
+ {
+ public override DAInspector gui => CustomInspector.Instance.Inspector;
+ }
+
+ public abstract class MonoBehaviourLinkerEditorBase : LinkerBase
+ where T1 : ScriptableObject
+ where T3 : MonoBehaviour
+ {
+ public abstract DAInspector gui { get; }
+
+ protected T1 scriptableObject;
+ public T1 ScriptableObject { get => scriptableObject; set => scriptableObject = value; }
+ }
+
+ public static class MonoBehaviourLinkerEditorExtensions
+ {
+ public static T2 Link(this T3 monoBeh, ref T2 linker, T1 scriptableObject)
+ where T1 : ScriptableObject
+ where T2 : MonoBehaviourLinkerEditorBase
+ where T3 : MonoBehaviour
+ {
+ bool needInit = false;
+
+ if (linker == null)
+ {
+ needInit = true;
+ linker = (T2)Activator.CreateInstance(typeof(T2));
+ }
+
+ if (linker.MonoBeh == null)
+ {
+ linker.MonoBeh = monoBeh;
+ }
+
+ if (linker.ScriptableObject == null)
+ {
+ linker.ScriptableObject = scriptableObject;
+ }
+
+ if (needInit)
+ {
+ linker.OnLink();
+ }
+
+ return linker;
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/MonoBehaviourLinkerEditor.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/MonoBehaviourLinkerEditor.cs.meta
new file mode 100644
index 00000000..10aaa85c
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/MonoBehaviourLinkerEditor.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: d5e585cfc6ac2d446ad83c6dcac18fb8
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Resources.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Resources.cs
new file mode 100644
index 00000000..2048f9b1
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Resources.cs
@@ -0,0 +1,90 @@
+using System;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ [Serializable]
+ public struct Resources
+ {
+ [SerializeField] Texture2D[] backgrounds;
+ public Texture2D[] Backgrounds => backgrounds;
+
+ [SerializeField] Texture2D fcuLogo;
+ public Texture2D FcuLogo => fcuLogo;
+
+ [SerializeField] Texture2D daGradientLogo;
+ public Texture2D DAGradientLogo => daGradientLogo;
+
+ [SerializeField] Texture2D daButtonLogo;
+ public Texture2D DAButtonLogo => daButtonLogo;
+
+ [SerializeField] Texture2D dalLogo;
+ public Texture2D DALocalizatorLogo => dalLogo;
+
+ [Space]////////////////////////////////////////
+
+ [SerializeField] Texture2D imgViewRecent;
+ public Texture2D ImgViewRecent => imgViewRecent;
+
+ [SerializeField] Texture2D imgExpandClosed;
+ public Texture2D ImgExpandClosed => imgExpandClosed;
+
+ [SerializeField] Texture2D imgExpandOpened;
+ public Texture2D ImgExpandOpened => imgExpandOpened;
+
+ [SerializeField] Texture2D iconExpandWindow;
+ public Texture2D IconExpandWindow => iconExpandWindow;
+
+ [SerializeField] Texture2D iconMinimizeWindow;
+ public Texture2D IconMinimizeWindow => iconMinimizeWindow;
+
+ [SerializeField] Texture2D iconStop;
+ public Texture2D IconStop => iconStop;
+
+ [SerializeField] Texture2D iconDownload;
+ public Texture2D IconDownload => iconDownload;
+
+ [SerializeField] Texture2D iconImport;
+ public Texture2D IconImport => iconImport;
+
+ [SerializeField] Texture2D[] cornerIcons;
+ ///
+ /// 0 - top left, 1 - top right, 3 - bottom left, 2 - bottom right
+ ///
+ public Texture2D[] CornerIcons => cornerIcons;
+
+ [SerializeField] Texture2D iconSettings;
+ public Texture2D IconSettings => iconSettings;
+
+ [SerializeField] Texture2D iconOpen;
+ public Texture2D IconOpen => iconOpen;
+
+ [SerializeField] Texture2D iconAuth;
+ public Texture2D IconAuth => iconAuth;
+
+ [SerializeField] Texture2D imgComponent;
+ public Texture2D ImgComponent => imgComponent;
+
+ [Space]////////////////////////////////////////
+
+ [SerializeField] Texture2D imgStar;
+ public Texture2D ImgStar => imgStar;
+
+ [SerializeField] Texture2D fcuIcon;
+ public Texture2D FcuIcon => fcuIcon;
+
+ [Space]////////////////////////////////////////
+
+ [SerializeField] Texture2D clickIcon;
+ public Texture2D ClickIcon => clickIcon;
+
+ [SerializeField] Texture2D hoverIcon;
+ public Texture2D HoverIcon => hoverIcon;
+
+ [SerializeField] Texture2D loopIcon;
+ public Texture2D LoopIcon => loopIcon;
+
+ [SerializeField] Texture2D searchIcon;
+ public Texture2D SearchIcon => searchIcon;
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Resources.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Resources.cs.meta
new file mode 100644
index 00000000..c0f17932
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Resources.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 1a79a62ba2cad6e438b6fa824d28b66f
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites.meta
new file mode 100644
index 00000000..1d07c675
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: cbe9c8be09ae4934ab9816b54cf56bd3
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_active_no_frame.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_active_no_frame.png
new file mode 100644
index 00000000..839c37ea
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_active_no_frame.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_active_no_frame.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_active_no_frame.png.meta
new file mode 100644
index 00000000..e149a1f7
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_active_no_frame.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: de641d9d6b90cdc44858895f5386f6b9
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 1
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 0
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 1
+ swizzle: 50462976
+ cookieLightType: 1
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 0
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_black.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_black.png
new file mode 100644
index 00000000..5a1df82c
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_black.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_black.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_black.png.meta
new file mode 100644
index 00000000..19e26113
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_black.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: 961d622499be69849ac12d9c0aeb4016
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 0
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 0
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_blue.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_blue.png
new file mode 100644
index 00000000..c85f8ff0
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_blue.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_blue.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_blue.png.meta
new file mode 100644
index 00000000..227300d9
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_blue.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: 38481486c770d9e4098e7187b94e07fb
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 0
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 0
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_frame.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_frame.png
new file mode 100644
index 00000000..919077e9
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_frame.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_frame.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_frame.png.meta
new file mode 100644
index 00000000..0cf5b7e1
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_frame.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: 0de7d4f08a6ada44cb8f55ec6e85e9f9
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 1
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 1, y: 1, z: 1, w: 1}
+ spriteGenerateFallbackPhysicsShape: 0
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 1
+ swizzle: 50462976
+ cookieLightType: 1
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 0
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 1537655665
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_no_frame.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_no_frame.png
new file mode 100644
index 00000000..621e682a
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_no_frame.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_no_frame.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_no_frame.png.meta
new file mode 100644
index 00000000..021ad1a4
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_no_frame.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: 2c4cbc58ab405e249915c542e4b7f58d
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 0
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 1
+ swizzle: 50462976
+ cookieLightType: 1
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 0
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_tab_button.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_tab_button.png
new file mode 100644
index 00000000..6d85ee36
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_tab_button.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_tab_button.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_tab_button.png.meta
new file mode 100644
index 00000000..48c859fc
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/box_tab_button.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: a86998b73e5177248a089ef62eeb7ee4
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 0
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 0
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_auth.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_auth.png
new file mode 100644
index 00000000..4dbe80e9
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_auth.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_auth.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_auth.png.meta
new file mode 100644
index 00000000..bd0f958a
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_auth.png.meta
@@ -0,0 +1,153 @@
+fileFormatVersion: 2
+guid: 0ac0fed5dd575044897e22ce7321e61f
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_click.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_click.png
new file mode 100644
index 00000000..42a103c5
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_click.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_click.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_click.png.meta
new file mode 100644
index 00000000..e06f7a2f
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_click.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: 5c4670904faa5254cb3b35769ec70b1e
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_component.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_component.png
new file mode 100644
index 00000000..906e5743
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_component.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_component.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_component.png.meta
new file mode 100644
index 00000000..cac78b2c
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_component.png.meta
@@ -0,0 +1,139 @@
+fileFormatVersion: 2
+guid: 5ba475abc1549864cb5ac369605079c8
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 10
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_bottom_left.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_bottom_left.png
new file mode 100644
index 00000000..96139f16
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_bottom_left.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_bottom_left.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_bottom_left.png.meta
new file mode 100644
index 00000000..ff9c52c4
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_bottom_left.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: f18f6f2b2bfbf1146a7b1f9b2ffb0066
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_bottom_right.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_bottom_right.png
new file mode 100644
index 00000000..07745648
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_bottom_right.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_bottom_right.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_bottom_right.png.meta
new file mode 100644
index 00000000..f42bbb85
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_bottom_right.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: d92a99038cd091b44958b6f580de7ef1
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_top_left.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_top_left.png
new file mode 100644
index 00000000..348a5755
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_top_left.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_top_left.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_top_left.png.meta
new file mode 100644
index 00000000..c152492d
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_top_left.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: 81946ec875d4d354cbd68a4a1d935e82
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_top_right.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_top_right.png
new file mode 100644
index 00000000..47319f9d
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_top_right.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_top_right.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_top_right.png.meta
new file mode 100644
index 00000000..eb11ca9e
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corner_top_right.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: 2cd8ce091fb8dce4a85d1578ef706c55
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corners.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corners.png
new file mode 100644
index 00000000..2e983c20
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corners.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corners.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corners.png.meta
new file mode 100644
index 00000000..12eecdcc
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_corners.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: 45e00e0ff17e8d74e83bf51f3556c7c5
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_download.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_download.png
new file mode 100644
index 00000000..129f1065
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_download.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_download.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_download.png.meta
new file mode 100644
index 00000000..1c7e8063
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_download.png.meta
@@ -0,0 +1,139 @@
+fileFormatVersion: 2
+guid: 7293127380304744d89df74cdade597b
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 10
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_closed.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_closed.png
new file mode 100644
index 00000000..799ff294
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_closed.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_closed.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_closed.png.meta
new file mode 100644
index 00000000..82cd3a08
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_closed.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: a19262a26536c554680b25a0ce338e33
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 1
+ swizzle: 50462976
+ cookieLightType: 1
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_opened.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_opened.png
new file mode 100644
index 00000000..73aa23c7
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_opened.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_opened.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_opened.png.meta
new file mode 100644
index 00000000..285a96b4
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_opened.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: e4d932c454c538948b9e4692d56bdbc2
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 1
+ swizzle: 50462976
+ cookieLightType: 1
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_window.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_window.png
new file mode 100644
index 00000000..88330273
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_window.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_window.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_window.png.meta
new file mode 100644
index 00000000..2929e131
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_expand_window.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: 17d4ca1991e396d4abf7d125d68b1a99
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 1
+ swizzle: 50462976
+ cookieLightType: 1
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_hover.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_hover.png
new file mode 100644
index 00000000..8f61b352
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_hover.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_hover.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_hover.png.meta
new file mode 100644
index 00000000..94cdbe2f
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_hover.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: fbe6eb7a4f46d5f4c938393a61959157
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_import.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_import.png
new file mode 100644
index 00000000..ea9bbec5
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_import.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_import.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_import.png.meta
new file mode 100644
index 00000000..7d7259ff
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_import.png.meta
@@ -0,0 +1,139 @@
+fileFormatVersion: 2
+guid: 9d4a17359d253ea4ea2cfde81d124e20
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 10
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_interactable.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_interactable.png
new file mode 100644
index 00000000..fb81a812
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_interactable.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_interactable.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_interactable.png.meta
new file mode 100644
index 00000000..408a410a
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_interactable.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: c936b27c38ea2aa48a89f7fa7d5820ad
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_loop.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_loop.png
new file mode 100644
index 00000000..4cfcdfe4
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_loop.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_loop.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_loop.png.meta
new file mode 100644
index 00000000..55ce1e49
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_loop.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: d58e0bc446ad770499a2f6af7fe04d5d
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_open.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_open.png
new file mode 100644
index 00000000..640daf98
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_open.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_open.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_open.png.meta
new file mode 100644
index 00000000..801cc292
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_open.png.meta
@@ -0,0 +1,139 @@
+fileFormatVersion: 2
+guid: 1322eb06cce7348419199dd60e9f1e08
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 10
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_search.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_search.png
new file mode 100644
index 00000000..d53455bc
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_search.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_search.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_search.png.meta
new file mode 100644
index 00000000..a57ac476
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_search.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: 9c519ff7a76c605449d54377aa8c940f
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_settings.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_settings.png
new file mode 100644
index 00000000..9738a409
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_settings.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_settings.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_settings.png.meta
new file mode 100644
index 00000000..e0685395
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_settings.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: 84c1e5d966ac4a84d97fb7015b30c202
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 1
+ swizzle: 50462976
+ cookieLightType: 1
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_stop.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_stop.png
new file mode 100644
index 00000000..d34718d6
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_stop.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_stop.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_stop.png.meta
new file mode 100644
index 00000000..c295b2d6
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/icon_stop.png.meta
@@ -0,0 +1,139 @@
+fileFormatVersion: 2
+guid: 25e086bd7f666c24c8df55167c4c6234
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 10
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/img_star.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/img_star.png
new file mode 100644
index 00000000..2690804c
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/img_star.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/img_star.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/img_star.png.meta
new file mode 100644
index 00000000..62d34ceb
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/img_star.png.meta
@@ -0,0 +1,139 @@
+fileFormatVersion: 2
+guid: 927c82ee9d3e8484093b5f8a7219f179
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 10
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dab.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dab.png
new file mode 100644
index 00000000..39294b0e
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dab.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dab.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dab.png.meta
new file mode 100644
index 00000000..d215375c
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dab.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: 6135bab8d3d57a642b2158eb4fb11427
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 0
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 1
+ swizzle: 50462976
+ cookieLightType: 1
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 1024
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 1024
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 1024
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dag.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dag.png
new file mode 100644
index 00000000..57b3a6d2
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dag.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dag.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dag.png.meta
new file mode 100644
index 00000000..fcbacf28
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dag.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: d03cbb733b9202a40980196cb50604b7
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 0
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 1
+ swizzle: 50462976
+ cookieLightType: 1
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 1024
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 1024
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 1024
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dal.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dal.png
new file mode 100644
index 00000000..9f5e3acc
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dal.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dal.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dal.png.meta
new file mode 100644
index 00000000..8c027e5a
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_dal.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: fc3143b139660bf4abea1d38742bb994
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 0
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 1024
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_fcu.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_fcu.png
new file mode 100644
index 00000000..1237b626
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_fcu.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_fcu.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_fcu.png.meta
new file mode 100644
index 00000000..15bcb864
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/logo_fcu.png.meta
@@ -0,0 +1,166 @@
+fileFormatVersion: 2
+guid: f8b2c813170af09459fb79312a19a0cc
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 12
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 0
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 1
+ swizzle: 50462976
+ cookieLightType: 1
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 1024
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 1024
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 1024
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/view_recent.png b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/view_recent.png
new file mode 100644
index 00000000..1e791e02
Binary files /dev/null and b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/view_recent.png differ
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/view_recent.png.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/view_recent.png.meta
new file mode 100644
index 00000000..768fde83
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Sprites/view_recent.png.meta
@@ -0,0 +1,139 @@
+fileFormatVersion: 2
+guid: c5969960e1e4115419e4637b3150f937
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 10
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 1
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 2
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 1
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 2
+ compressionQuality: 100
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: iPhone
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Android
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Server
+ maxTextureSize: 32
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Structs.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Structs.cs
new file mode 100644
index 00000000..80da963f
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Structs.cs
@@ -0,0 +1,27 @@
+using System;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ [System.Serializable]
+ public struct CachedTextureEntry
+ {
+ public string Key;
+ public Texture2D Texture;
+ }
+
+ [Serializable]
+ public struct ColorScheme
+ {
+ public Color BackgroundColor;
+ //public bool UseGradient;
+ //public float GradientAngle;
+ //public Gradient BackgroundGradient;
+ public Color OutlineColor;
+ public Color UnityGuiColor;
+ public Color CheckBoxColor;
+ public Color SelectionColor;
+ public Color TextColor;
+
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Structs.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Structs.cs.meta
new file mode 100644
index 00000000..96f217ff
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/Structs.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: e85572c49a4dbea44a9d9fe6ff19b6a4
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/UITab.cs b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/UITab.cs
new file mode 100644
index 00000000..f27877c8
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/UITab.cs
@@ -0,0 +1,21 @@
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ public delegate void UITabContent();
+
+ public class UITab
+ {
+ public UITab(string label, string tooltip, UITabContent content, int? labelWidth = null)
+ {
+ this.Label = new GUIContent(label, BlackInspector.Instance.Data.Resources.IconSettings, tooltip);
+ this.Content = content;
+ this.LabelWidth = labelWidth;
+ }
+
+ public GUIContent Label { get; set; }
+ public UITabContent Content { get; set; }
+ public int? LabelWidth { get; set; }
+ public bool Selected { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/UITab.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/UITab.cs.meta
new file mode 100644
index 00000000..db1684d1
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DAInspector/UITab.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: f5a85742b1380174199f7c19706ebb04
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DA_Assets.Shared.Editor.asmdef b/Assets/D.A. Assets/DA-Shared/Editor/DA_Assets.Shared.Editor.asmdef
new file mode 100644
index 00000000..d35db35c
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DA_Assets.Shared.Editor.asmdef
@@ -0,0 +1,19 @@
+{
+ "name": "DA_Assets.Shared.Editor",
+ "rootNamespace": "",
+ "references": [
+ "GUID:1b74e700d4693d342a6732b0ca624858",
+ "GUID:2c573e6b271651846a79655161004c5b"
+ ],
+ "includePlatforms": [
+ "Editor"
+ ],
+ "excludePlatforms": [],
+ "allowUnsafeCode": false,
+ "overrideReferences": false,
+ "precompiledReferences": [],
+ "autoReferenced": true,
+ "defineConstraints": [],
+ "versionDefines": [],
+ "noEngineReferences": false
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DA_Assets.Shared.Editor.asmdef.meta b/Assets/D.A. Assets/DA-Shared/Editor/DA_Assets.Shared.Editor.asmdef.meta
new file mode 100644
index 00000000..501458ed
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DA_Assets.Shared.Editor.asmdef.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: a6cf5be64ada0d14782980ee615220ef
+AssemblyDefinitionImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager.meta b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager.meta
new file mode 100644
index 00000000..bff4cd75
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: bfa6f3df1d6b12e428c25972ee3243e0
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependenciesWindow.cs b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependenciesWindow.cs
new file mode 100644
index 00000000..7b0e7061
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependenciesWindow.cs
@@ -0,0 +1,53 @@
+using DA_Assets.DAI;
+using UnityEditor;
+using UnityEngine;
+using DA_Assets.Extensions;
+
+namespace DA_Assets.DM
+{
+ internal class DependenciesWindow : EditorWindow
+ {
+ public DAInspector gui => BlackInspector.Instance.Inspector;
+
+ public void OnGUI()
+ {
+ gui.DrawGroup(new Group
+ {
+ GroupType = GroupType.Vertical,
+ Style = gui.ColoredStyle.TabBg2,
+ Scroll = true,
+ Body = () =>
+ {
+ gui.DrawGroup(new Group
+ {
+ GroupType = GroupType.Vertical,
+ Scroll = true,
+ Body = () =>
+ {
+ if (DependencyItems.Instance.Items.IsEmpty())
+ return;
+
+ for (int i = 0; i < DependencyItems.Instance.Items.Count; i++)
+ {
+ DependencyItem ac = DependencyItems.Instance.Items[i];
+ ac.Enabled = gui.Toggle(new GUIContent(ac.Name), ac.Enabled);
+ DependencyItems.Instance.Items[i] = ac;
+ gui.Space10();
+ }
+ }
+ });
+
+ if (!DependencyItems.Instance.Items.IsEmpty())
+ {
+ gui.Space15();
+
+ if (gui.OutlineButton(new GUIContent("Apply"), true))
+ {
+ DefineModifier.Apply();
+ }
+ }
+ }
+ });
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependenciesWindow.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependenciesWindow.cs.meta
new file mode 100644
index 00000000..ab07c387
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependenciesWindow.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 4e12806a9a4594649ac69e4716b7a351
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependencyItems.cs b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependencyItems.cs
new file mode 100644
index 00000000..72d3945e
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependencyItems.cs
@@ -0,0 +1,25 @@
+using DA_Assets.Constants;
+using DA_Assets.Singleton;
+using System;
+using System.Collections.Generic;
+using UnityEngine;
+
+namespace DA_Assets.DM
+{
+ [CreateAssetMenu(menuName = DAConstants.Publisher + "/DependencyItems")]
+ [ResourcePath("")]
+ public class DependencyItems : SingletonScriptableObject
+ {
+ [SerializeField] List items;
+ public List Items => items;
+ }
+
+ [Serializable]
+ public struct DependencyItem
+ {
+ public string Name;
+ public string Type;
+ public string ScriptingDefineName;
+ public bool Enabled { get; set; }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependencyItems.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependencyItems.cs.meta
new file mode 100644
index 00000000..5610dc95
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependencyItems.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: ed3ffb60402c43140bf0a3b0bf0cda9e
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependencyManager.cs b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependencyManager.cs
new file mode 100644
index 00000000..dd21fc77
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependencyManager.cs
@@ -0,0 +1,138 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Reflection;
+using System.Threading.Tasks;
+using UnityEditor;
+using UnityEditor.Callbacks;
+using UnityEngine;
+
+namespace DA_Assets.DM
+{
+ public class DefineModifier
+ {
+ [DidReloadScripts]
+ private static void OnScriptsReload()
+ {
+ _ = SearchAssets();
+ }
+
+ public static void Apply()
+ {
+ List enabled = new List();
+ List disabled = new List();
+
+ foreach (DependencyItem assemblyConfig in DependencyItems.Instance.Items)
+ {
+ if (assemblyConfig.Enabled)
+ {
+ enabled.Add(assemblyConfig.ScriptingDefineName);
+ }
+ else
+ {
+ disabled.Add(assemblyConfig.ScriptingDefineName);
+ }
+ }
+
+ Modify(enabled.ToArray(), disabled.ToArray());
+ }
+
+ internal static async Task SearchAssets()
+ {
+ await Task.Delay(250);
+
+ List l = DependencyItems.Instance.Items;
+
+ for (int i = 0; i < l.Count; i++)
+ {
+ Type t = Type.GetType(l[i].Type);
+
+ if (t == null)
+ continue;
+
+ DependencyItem ac = l[i];
+
+ // Ignore Unity.Plastic.Newtonsoft.Json.dll
+ if (IsUnityPlasticNewtonsoftJson(t.Assembly))
+ {
+ ac.Enabled = false;
+ }
+ else
+ {
+ ac.Enabled = true;
+ }
+
+ l[i] = ac;
+
+ await Task.Yield();
+ }
+
+ Apply();
+ }
+
+ private static bool IsUnityPlasticNewtonsoftJson(Assembly assembly)
+ {
+ string assemblyName = assembly.GetName().Name;
+ string assemblyPath = Path.GetDirectoryName(assembly.Location);
+ string targetPath = Path.Combine("Editor", "Data", "Managed");
+
+ bool endsWith = assemblyPath.EndsWith(targetPath);
+
+ //Debug.Log($"{assemblyName}\n{assemblyPath}\n{endsWith}");
+
+ if (endsWith && assemblyName == "Newtonsoft.Json")
+ {
+ return true;
+ }
+
+ return false;
+ }
+
+ internal static void Modify(string[] addDefines, string[] removeDefines)
+ {
+ List finalDefines = GetDefines();
+
+ finalDefines.AddRange(addDefines);
+ finalDefines.RemoveAll(x => removeDefines.Contains(x));
+ finalDefines = finalDefines.Distinct().ToList();
+
+ SetDefines(finalDefines);
+ }
+
+ internal static List GetDefines()
+ {
+ string rawDefs;
+
+#if UNITY_2022_3_OR_NEWER
+ BuildTarget target = EditorUserBuildSettings.activeBuildTarget;
+ BuildTargetGroup group = BuildPipeline.GetBuildTargetGroup(target);
+ UnityEditor.Build.NamedBuildTarget namedBuildTarget = UnityEditor.Build.NamedBuildTarget.FromBuildTargetGroup(group);
+ rawDefs = PlayerSettings.GetScriptingDefineSymbols(namedBuildTarget);
+#else
+ rawDefs = PlayerSettings.GetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup);
+#endif
+
+ if (string.IsNullOrWhiteSpace(rawDefs) == false)
+ {
+ return rawDefs.Split(';').ToList();
+ }
+
+ return new List();
+ }
+
+ internal static void SetDefines(List defines)
+ {
+ string joinedDefs = string.Join(";", defines);
+
+#if UNITY_2022_3_OR_NEWER
+ BuildTarget target = EditorUserBuildSettings.activeBuildTarget;
+ BuildTargetGroup group = BuildPipeline.GetBuildTargetGroup(target);
+ UnityEditor.Build.NamedBuildTarget namedBuildTarget = UnityEditor.Build.NamedBuildTarget.FromBuildTargetGroup(group);
+ PlayerSettings.SetScriptingDefineSymbols(namedBuildTarget, joinedDefs);
+#else
+ PlayerSettings.SetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup, joinedDefs);
+#endif
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependencyManager.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependencyManager.cs.meta
new file mode 100644
index 00000000..2b4091ce
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/DependencyManager.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 87dca9be47530fa49bac45e5575b2108
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/Resources.meta b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/Resources.meta
new file mode 100644
index 00000000..eae73b97
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/Resources.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 4411dae8bed16164296617ace5f17d9a
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/Resources/DependencyItems.asset b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/Resources/DependencyItems.asset
new file mode 100644
index 00000000..3f38a3ad
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/Resources/DependencyItems.asset
@@ -0,0 +1,72 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: ed3ffb60402c43140bf0a3b0bf0cda9e, type: 3}
+ m_Name: DependencyItems
+ m_EditorClassIdentifier:
+ items:
+ - Name: Figma Converter for Unity
+ Type: DA_Assets.FCU.SyncHelper, DA_Assets.FCU
+ ScriptingDefineName: FCU_EXISTS
+ - Name: Json.NET
+ Type: Newtonsoft.Json.JsonConvert, Newtonsoft.Json
+ ScriptingDefineName: JSONNET_EXISTS
+ - Name: TextMeshPro
+ Type: TMPro.TextMeshPro, Unity.TextMeshPro
+ ScriptingDefineName: TextMeshPro
+ - Name: TrueShadow
+ Type: LeTai.TrueShadow.TrueShadow, LeTai.TrueShadow
+ ScriptingDefineName: TRUESHADOW_EXISTS
+ - Name: Modern Procedural UI Kit
+ Type: MPUIKIT.MPImage, MPUIKit
+ ScriptingDefineName: MPUIKIT_EXISTS
+ - Name: Josh's Procedural UI Image
+ Type: UnityEngine.UI.ProceduralImage.ProceduralImage, Assembly-CSharp
+ ScriptingDefineName: JOSH_PUI_EXISTS
+ - Name: I2Localization
+ Type: I2.Loc.Localize, Assembly-CSharp
+ ScriptingDefineName: I2LOC_EXISTS
+ - Name: Shapes2D
+ Type: Shapes2D.Shape, Assembly-CSharp
+ ScriptingDefineName: SUBC_SHAPES_EXISTS
+ - Name: UI Toolkit
+ Type: UnityEngine.UIElements.UIDocument, UnityEngine.UIElementsModule
+ ScriptingDefineName: UITK_EXISTS
+ - Name: Figma to UITK Converter
+ Type: DA_Assets.FCU.UitkExtensions, DA_Assets.UITK_Converter
+ ScriptingDefineName: FCU_UITK_EXT_EXISTS
+ - Name: DAButton
+ Type: DA_Assets.DAB.DAButton, Assembly-CSharp
+ ScriptingDefineName: DABUTTON_EXISTS
+ - Name: D.A. Localizator
+ Type: DA_Assets.DAL.ILocalizator, DA_Assets.DAL
+ ScriptingDefineName: DALOC_EXISTS
+ - Name: RTL Text Mesh Pro
+ Type: RTLTMPro.RTLTextMeshPro, RTLTMPro
+ ScriptingDefineName: RTLTMP_EXISTS
+ - Name: DTT's Procedural UI
+ Type: DTT.UI.ProceduralUI.RoundedImage, DTT.ProceduralUI.Runtime
+ ScriptingDefineName: PROCEDURAL_UI_ASSET_STORE_RELEASE
+ - Name: UITK Element Linker
+ Type: DA_Assets.UEL.UitkLinkerBase, DA_Assets.UEL
+ ScriptingDefineName: UITK_LINKER_EXISTS
+ - Name: Nova UI
+ Type: Nova.UIBlock2D, Nova
+ ScriptingDefineName: NOVA_UI_EXISTS
+ - Name: Unity UI Extensions
+ Type: UnityEngine.UI.Extensions.FlowLayoutGroup, UnityUIExtensions
+ ScriptingDefineName: UNITY_UI_EXTENSIONS_EXISTS
+ - Name: Vector Graphics
+ Type: Unity.VectorGraphics.SVGImage, Unity.VectorGraphics
+ ScriptingDefineName: VECTOR_GRAPHICS_EXISTS
+ - Name: 2D Sprite
+ Type: UnityEditor.U2D.Sprites.SpriteDataProviderFactories, Unity.2D.Sprite.Editor
+ ScriptingDefineName: U2D_SPRITE_EXISTS
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/Resources/DependencyItems.asset.meta b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/Resources/DependencyItems.asset.meta
new file mode 100644
index 00000000..24903e68
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/DependencyManager/Resources/DependencyItems.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b083f642187875a40a6dcb9020bf0e81
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools.meta b/Assets/D.A. Assets/DA-Shared/Editor/Tools.meta
new file mode 100644
index 00000000..0037ffa6
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 71c665f8352192d479323b4789f0740e
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/ContextMenuItems.cs b/Assets/D.A. Assets/DA-Shared/Editor/Tools/ContextMenuItems.cs
new file mode 100644
index 00000000..62dd9aba
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/ContextMenuItems.cs
@@ -0,0 +1,141 @@
+using DA_Assets.Constants;
+using DA_Assets.DM;
+using DA_Assets.Extensions;
+using System.Collections.Generic;
+using UnityEditor;
+using UnityEngine;
+
+namespace DA_Assets.Tools
+{
+ public class ContextMenuItems
+ {
+ public const string ResetToPrefabState = "Reset to prefab state";
+ public const string ResetAllComponents = "Reset all components to prefab state";
+ public const string DestroyChilds = "Destroy Childs";
+ public const string TryBackupActiveScene = "Try Backup Active Scene";
+ public const string SimplifyHierarchy = "Simplify the hierarchy";
+
+ [MenuItem("Tools/" + DAConstants.Publisher + "/" + nameof(DA_Assets.Tools) + ": " + "Dependency Manager", false, 89)]
+ public static void ShowWindow()
+ {
+ DependenciesWindow window = EditorWindow.GetWindow("Dependency Manager");
+ window.minSize = new Vector2(550, 550);
+ window.maxSize = new Vector2(550, 550);
+ window.Show();
+ }
+
+ [MenuItem("GameObject/Tools/" + DAConstants.Publisher + "/" + nameof(DA_Assets.Tools) + ": " + DestroyChilds, false, 1)]
+ private static void DestroyChilds_OnClick()
+ {
+ bool backuped = SceneBackuper.TryBackupActiveScene();
+
+ if (!backuped)
+ {
+ Debug.LogError("log_cant_execute_because_no_backup");
+ return;
+ }
+
+ if (Selection.activeGameObject != null)
+ {
+ Selection.activeGameObject.DestroyChilds();
+ }
+ else
+ {
+ Debug.LogError($"Selection.activeGameObject is null.");
+ }
+ }
+
+ [MenuItem("Tools/" + DAConstants.Publisher + "/" + nameof(DA_Assets.Tools) + ": " + TryBackupActiveScene, false, 2)]
+ private static void TryBackupActiveScene_OnClick()
+ {
+ SceneBackuper.TryBackupActiveScene();
+ }
+
+ [MenuItem("GameObject/Tools/" + DAConstants.Publisher + "/" + nameof(DA_Assets.Tools) + ": " + SimplifyHierarchy, false, 92)]
+ private static void SetSelectedAsParentForAllChilds_OnClick()
+ {
+ GameObject selectedGameObject = Selection.activeGameObject;
+
+ if (selectedGameObject == null)
+ {
+ Debug.LogError(string.Format(nameof(GameObject), "'{0}' not selected in hierarchy."));
+ return;
+ }
+
+ List childs = new List();
+ SetSelectedAsParentForAllChild(selectedGameObject);
+ foreach (Transform child in childs)
+ {
+ child.SetParent(selectedGameObject.transform);
+ }
+
+ void SetSelectedAsParentForAllChild(GameObject @object)
+ {
+ if (@object == null)
+ return;
+
+ foreach (Transform child in @object.transform)
+ {
+ if (child == null)
+ continue;
+
+ childs.Add(child);
+
+ SetSelectedAsParentForAllChild(child.gameObject);
+ }
+ }
+ }
+
+ [MenuItem("GameObject/Tools/" + DAConstants.Publisher + "/" + nameof(DA_Assets.Tools) + ": " + ResetToPrefabState, false, 93)]
+ private static void ResetToPrefabState_OnClick()
+ {
+ GameObject selectedGameObject = Selection.activeGameObject;
+
+ if (selectedGameObject == null)
+ {
+ Debug.LogError(string.Format(nameof(GameObject), "'{0}' not selected in hierarchy."));
+ return;
+ }
+
+ PrefabUtility.RevertPrefabInstance(Selection.activeGameObject, InteractionMode.AutomatedAction);
+
+ Debug.Log(string.Format(selectedGameObject.name, "'{0}' has been reset to a prefab state."));
+ }
+
+ [MenuItem("GameObject/Tools/" + DAConstants.Publisher + "/" + nameof(DA_Assets.Tools) + ": " + ResetAllComponents, false, 94)]
+ private static void ResetAllComponents_OnClick()
+ {
+ GameObject selectedGameObject = Selection.activeGameObject;
+
+ if (selectedGameObject == null)
+ {
+ Debug.LogError(string.Format(nameof(GameObject), "'{0}' not selected in hierarchy."));
+ return;
+ }
+
+ Component[] components = selectedGameObject.GetComponents();
+
+ if (components.IsEmpty())
+ {
+ Debug.LogError(string.Format(selectedGameObject.name, "No components in '{0}'."));
+ return;
+ }
+
+ int count = 0;
+
+ foreach (var item in components)
+ {
+ SerializedObject serializedObject = new SerializedObject(item);
+ SerializedProperty propertyIterator = serializedObject.GetIterator();
+
+ while (propertyIterator.NextVisible(true))
+ {
+ PrefabUtility.RevertPropertyOverride(propertyIterator, InteractionMode.AutomatedAction);
+ count++;
+ }
+ }
+
+ Debug.Log(string.Format(count.ToString(), "{0} properties reset."));
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/ContextMenuItems.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/Tools/ContextMenuItems.cs.meta
new file mode 100644
index 00000000..37bc6c40
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/ContextMenuItems.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 1e384017edfe3d14398c48665ddbbc58
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/DAWebConfig.cs b/Assets/D.A. Assets/DA-Shared/Editor/Tools/DAWebConfig.cs
new file mode 100644
index 00000000..e30bd39c
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/DAWebConfig.cs
@@ -0,0 +1,114 @@
+using System;
+using System.Collections.Generic;
+using System.Net;
+using System.Threading;
+using System.Threading.Tasks;
+using UnityEngine;
+
+#pragma warning disable CS0649
+
+namespace DA_Assets.Tools
+{
+ public class DAWebConfig
+ {
+ public static WebConfig WebConfig => _webConfig;
+ private static WebConfig _webConfig = default;
+
+ internal static bool IsWebConfigAvailable => _configAvailable;
+ private static bool _configAvailable = false;
+
+#if UNITY_EDITOR
+ [UnityEditor.Callbacks.DidReloadScripts]
+#endif
+ private static void OnScriptsReload()
+ {
+ if (Application.isPlaying)
+ return;
+
+ _ = GetWebConfig();
+ }
+
+ private static async Task GetWebConfig()
+ {
+ await Task.Delay(100);
+ //TODO: ThreadAbortException: Thread was being aborted.
+ try
+ {
+ Thread t = new Thread(() =>
+ {
+ string url = "https://da-assets.github.io/site/files/webConfig.json";
+ string json = new WebClient().DownloadString(url);
+ _webConfig = JsonUtility.FromJson(json);
+ });
+
+ t.Start();
+ }
+ catch (WebException ex)
+ {
+ Debug.LogException(ex);
+ }
+ catch (Exception ex)
+ {
+ Debug.LogException(ex);
+ }
+ finally
+ {
+ _configAvailable = true;
+ }
+ }
+ }
+
+ [Serializable]
+ public struct WebConfig
+ {
+ [SerializeField] List assets;
+ public List Assets => assets;
+ }
+
+ [Serializable]
+ public struct Asset
+ {
+ [SerializeField] string name;
+ [SerializeField] AssetType assetType;
+ [SerializeField] int oldVersionDaysCount;
+ [SerializeField] DeveloperMessage developerMessage;
+ [SerializeField] List versions;
+
+ public string Name => name;
+ public AssetType Type => assetType;
+ public int OldVersionDaysCount => oldVersionDaysCount;
+ public DeveloperMessage DeveloperMessage => developerMessage;
+ public List Versions => versions;
+ }
+
+ [Serializable]
+ public struct AssetVersion
+ {
+ [SerializeField] string version;
+ [SerializeField] VersionType versionType;
+ [SerializeField] string releaseDate;
+ [SerializeField] string description;
+ [SerializeField] DeveloperMessage developerMessage;
+
+ public string Version => version;
+ public VersionType VersionType => versionType;
+ public string ReleaseDate => releaseDate;
+ public string Description => description;
+ public DeveloperMessage DeveloperMessage => developerMessage;
+ }
+
+ public enum AssetType
+ {
+ fcu = 1,
+ dab = 2,
+ uitk = 3,
+ dal = 4,
+ }
+
+ public enum VersionType
+ {
+ stable = 0,
+ beta = 1,
+ buggy = 2
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/DAWebConfig.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/Tools/DAWebConfig.cs.meta
new file mode 100644
index 00000000..14cd62b4
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/DAWebConfig.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 8be56e4cb9dd20843b3708a1e00fc26e
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/GameViewUtils.cs b/Assets/D.A. Assets/DA-Shared/Editor/Tools/GameViewUtils.cs
new file mode 100644
index 00000000..1ada93ee
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/GameViewUtils.cs
@@ -0,0 +1,172 @@
+using System;
+using System.Reflection;
+using UnityEditor;
+using UnityEngine;
+
+namespace DA_Assets.FCU
+{
+ ///
+ /// https://stackoverflow.com/a/71288271
+ ///
+ public static class GameViewUtils
+ {
+ private static readonly object gameViewSizesInstance;
+ private static readonly MethodInfo getGroup;
+ private const string gameViewSizesType = "UnityEditor.GameViewSizes";
+ private const string gameViewType = "UnityEditor.GameView";
+ static GameViewUtils()
+ {
+ Type sizesType = typeof(Editor).Assembly.GetType(gameViewSizesType);
+ Type singleType = typeof(ScriptableSingleton<>).MakeGenericType(sizesType);
+ PropertyInfo instanceProp = singleType.GetProperty("instance");
+ getGroup = sizesType.GetMethod("GetGroup");
+ gameViewSizesInstance = instanceProp.GetValue(null, null);
+ }
+ public static bool SetGameViewSize(Vector2 size)
+ {
+ try
+ {
+ GameViewSizeGroupType groupType = GetCurrentGroup();
+
+ bool exists = SizeExists(groupType, (int)size.x, (int)size.y);
+
+ int index;
+
+ if (exists)
+ {
+ index = FindSize(groupType, (int)size.x, (int)size.y);
+ }
+ else
+ {
+ index = AddCustomSize(
+ GameViewSizeType.FixedResolution,
+ groupType,
+ (int)size.x,
+ (int)size.y,
+ $"{(int)size.x}x{(int)size.y}");
+ }
+
+ SetSize(index);
+
+ return true;
+ }
+ catch
+ {
+ return false;
+ }
+ }
+ ///
+ /// http://answers.unity.com/answers/192818/view.html
+ ///
+ public static bool GetGameViewSize(out Vector2 size)
+ {
+ size = new Vector2(0, 0);
+
+ try
+ {
+ Type gvWndType = typeof(Editor).Assembly.GetType(gameViewType);
+
+ MethodInfo sizeOfMainGameView = gvWndType.GetMethod(
+ "GetSizeOfMainGameView",
+ BindingFlags.NonPublic | BindingFlags.Static);
+
+ size = (Vector2)sizeOfMainGameView.Invoke(null, null);
+ return true;
+ }
+ catch (Exception ex)
+ {
+ Debug.LogError(ex);
+ return false;
+ }
+ }
+ public static GameViewSizeGroupType GetCurrentGroup()
+ {
+ Type sizesType = typeof(Editor).Assembly.GetType(gameViewSizesType);
+
+ PropertyInfo currentGroupType = sizesType.GetProperty(
+ "currentGroupType",
+ BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
+
+ return (GameViewSizeGroupType)currentGroupType.GetValue(null, null);
+ }
+
+ public static int AddCustomSize(GameViewSizeType viewSizeType, GameViewSizeGroupType sizeGroupType, int width, int height, string resolutionName)
+ {
+ object group = GetGroup(sizeGroupType);
+ MethodInfo addCustomSize = getGroup.ReturnType.GetMethod("AddCustomSize");
+
+ Assembly assembly = typeof(Editor).Assembly;
+ Type gameViewSize = assembly.GetType("UnityEditor.GameViewSize");
+ Type gameViewSizeType = assembly.GetType("UnityEditor.GameViewSizeType");
+ ConstructorInfo ctor = gameViewSize.GetConstructor(new[] {
+ gameViewSizeType,
+ typeof(int),
+ typeof(int),
+ typeof(string)
+ });
+ object newSize = ctor.Invoke(new object[] { (int)viewSizeType, width, height, resolutionName });
+ addCustomSize.Invoke(group, new[] { newSize });
+
+ return FindSize(sizeGroupType, width, height);
+ }
+
+ public static void SetSize(int index)
+ {
+ Type gvWndType = typeof(Editor).Assembly.GetType(gameViewType);
+
+ PropertyInfo selectedSizeIndexProp = gvWndType.GetProperty("selectedSizeIndex",
+ BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
+
+ EditorWindow gvWnd = EditorWindow.GetWindow(gvWndType);
+
+ selectedSizeIndexProp.SetValue(gvWnd, index, null);
+ }
+ public static bool SizeExists(GameViewSizeGroupType sizeGroupType, int width, int height)
+ {
+ return FindSize(sizeGroupType, width, height) != -1;
+ }
+ public static int FindSize(GameViewSizeGroupType sizeGroupType, int width, int height)
+ {
+ // GameViewSizes group = gameViewSizesInstance.GetGroup(sizeGroupType);
+ // int sizesCount = group.GetBuiltinCount() + group.GetCustomCount();
+ // iterate through the sizes via group.GetGameViewSize(int index)
+
+ object group = GetGroup(sizeGroupType);
+ Type groupType = group.GetType();
+ MethodInfo getBuiltinCount = groupType.GetMethod("GetBuiltinCount");
+ MethodInfo getCustomCount = groupType.GetMethod("GetCustomCount");
+ int sizesCount = (int)getBuiltinCount.Invoke(group, null) + (int)getCustomCount.Invoke(group, null);
+ MethodInfo getGameViewSize = groupType.GetMethod("GetGameViewSize");
+ Type gvsType = getGameViewSize.ReturnType;
+ PropertyInfo widthProp = gvsType.GetProperty("width");
+ PropertyInfo heightProp = gvsType.GetProperty("height");
+ object[] indexValue = new object[1];
+
+ for (int i = 0; i < sizesCount; i++)
+ {
+ indexValue[0] = i;
+
+ object size = getGameViewSize.Invoke(group, indexValue);
+ int sizeWidth = (int)widthProp.GetValue(size, null);
+ int sizeHeight = (int)heightProp.GetValue(size, null);
+
+ if (sizeWidth == width && sizeHeight == height)
+ {
+ return i;
+ }
+ }
+
+ return -1;
+ }
+
+ private static object GetGroup(GameViewSizeGroupType type)
+ {
+ return getGroup.Invoke(gameViewSizesInstance, new object[] { (int)type });
+ }
+ }
+ public enum GameViewSizeType
+ {
+ AspectRatio,
+ FixedResolution
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/GameViewUtils.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/Tools/GameViewUtils.cs.meta
new file mode 100644
index 00000000..26b43f4f
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/GameViewUtils.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: c0571a47f8751b1438ac9a375ac8e85a
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/SerializedFieldSorter.cs b/Assets/D.A. Assets/DA-Shared/Editor/Tools/SerializedFieldSorter.cs
new file mode 100644
index 00000000..4dbf17ae
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/SerializedFieldSorter.cs
@@ -0,0 +1,81 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using UnityEditor;
+
+namespace DA_Assets.Tools
+{
+ public class SerializedFieldSorter
+ {
+ public static void DrawSorted(SerializedObject serializedObject, Dictionary foldoutStates)
+ {
+ serializedObject.Update();
+
+ // Dictionary to group properties by their component type names
+ Dictionary> groupedProperties = new Dictionary>();
+
+ // Iterate through all serialized properties
+ SerializedProperty property = serializedObject.GetIterator();
+ bool enterChildren = true;
+ while (property.NextVisible(enterChildren))
+ {
+ enterChildren = false; // Only iterate through properties, not their children
+
+ // Skip the script reference property
+ if (property.propertyPath == "m_Script")
+ continue;
+
+ // Check if the property is an ObjectReference
+ if (property.propertyType == SerializedPropertyType.ObjectReference && property.objectReferenceValue != null)
+ {
+ Type propType = property.objectReferenceValue.GetType();
+ string typeName = propType.Name;
+
+ // Initialize the list if the type is encountered for the first time
+ if (!groupedProperties.ContainsKey(typeName))
+ {
+ groupedProperties[typeName] = new List();
+ }
+
+ groupedProperties[typeName].Add(property.Copy());
+ }
+ }
+
+ // Iterate through each group and display properties
+ foreach (var group in groupedProperties.OrderBy(g => g.Key))
+ {
+ string typeName = group.Key;
+ List properties = group.Value;
+
+ if (properties.Count > 1)
+ {
+ // If the group has multiple properties, display them under a foldout
+ if (!foldoutStates.ContainsKey(typeName))
+ {
+ foldoutStates[typeName] = false;
+ }
+
+ foldoutStates[typeName] = EditorGUILayout.Foldout(foldoutStates[typeName], $"{typeName}s");
+
+ if (foldoutStates[typeName])
+ {
+ EditorGUI.indentLevel++;
+ foreach (var prop in properties)
+ {
+ EditorGUILayout.PropertyField(prop, true);
+ }
+ EditorGUI.indentLevel--;
+ }
+ }
+ else
+ {
+ // If the group has only one property, display it directly
+ SerializedProperty singleProp = properties.First();
+ EditorGUILayout.PropertyField(singleProp, true);
+ }
+ }
+
+ serializedObject.ApplyModifiedProperties();
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/SerializedFieldSorter.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/Tools/SerializedFieldSorter.cs.meta
new file mode 100644
index 00000000..b90ef1cc
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/SerializedFieldSorter.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: e69a84288a3f387419efa96e49ed345a
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/SpriteEditorUtility.cs b/Assets/D.A. Assets/DA-Shared/Editor/Tools/SpriteEditorUtility.cs
new file mode 100644
index 00000000..d6b64545
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/SpriteEditorUtility.cs
@@ -0,0 +1,54 @@
+using UnityEditor;
+using UnityEngine;
+
+#if U2D_SPRITE_EXISTS
+using UnityEditor.U2D;
+using UnityEditor.U2D.Sprites;
+#endif
+
+public class SpriteEditorUtility
+{
+ ///
+ /// com.unity.2d.sprite@1.0.0\Documentation~\DataProvider.md
+ ///
+ public static void SetSpriteRects(Sprite sprite, int left, int top, int right, int bottom)
+ {
+#if U2D_SPRITE_EXISTS
+ SpriteDataProviderFactories factory = new SpriteDataProviderFactories();
+ factory.Init();
+
+ ISpriteEditorDataProvider dataProvider = factory.GetSpriteEditorDataProviderFromObject(sprite);
+ if (dataProvider == null)
+ {
+ Debug.LogError("Failed to get ISpriteEditorDataProvider");
+ return;
+ }
+
+ dataProvider.InitSpriteEditorDataProvider();
+ SpriteRect[] spriteRects = dataProvider.GetSpriteRects();
+
+ foreach (SpriteRect rect in spriteRects)
+ {
+ if (rect.spriteID == sprite.GetSpriteID())
+ {
+ rect.border = new Vector4(left, bottom, right, top);
+ Debug.Log($"Updated border to: {rect.border}");
+ }
+ }
+
+ dataProvider.SetSpriteRects(spriteRects);
+ dataProvider.Apply();
+
+ AssetImporter assetImporter = dataProvider.targetObject as AssetImporter;
+ if (assetImporter != null)
+ {
+ assetImporter.SaveAndReimport();
+ Debug.Log("Asset reimported successfully");
+ }
+ else
+ {
+ Debug.LogError("Failed to reimport the asset");
+ }
+#endif
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/SpriteEditorUtility.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/Tools/SpriteEditorUtility.cs.meta
new file mode 100644
index 00000000..eed5b54c
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/SpriteEditorUtility.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 1c44243a942ec494ab54526f2ff86425
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/SpriteRemoverWindow.cs b/Assets/D.A. Assets/DA-Shared/Editor/Tools/SpriteRemoverWindow.cs
new file mode 100644
index 00000000..e865dbd0
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/SpriteRemoverWindow.cs
@@ -0,0 +1,96 @@
+using DA_Assets.Constants;
+using DA_Assets.DAI;
+using DA_Assets.Extensions;
+using System.IO;
+using System.Linq;
+using UnityEditor;
+using UnityEngine;
+using UnityEngine.UI;
+
+namespace DA_Assets.Tools
+{
+ internal class SpriteRemoverWindow : EditorWindow
+ {
+ public const string RemoveUnusedSprites = "Remove unused sprites";
+
+ [SerializeField] string spritesPath = Path.Combine("Assets", "Sprites");
+ private static Vector2 windowSize = new Vector2(500, 150);
+ private DAInspector gui => BlackInspector.Instance.Inspector;
+
+ [MenuItem("Tools/" + DAConstants.Publisher + "/" + nameof(DA_Assets.Tools) + ": " + RemoveUnusedSprites, false, 90)]
+ public static void ShowWindow()
+ {
+ SpriteRemoverWindow win = GetWindow(RemoveUnusedSprites);
+ win.maxSize = windowSize;
+ win.minSize = windowSize;
+
+ win.position = new Rect(
+ (Screen.currentResolution.width - windowSize.x * 2) / 2,
+ (Screen.currentResolution.height - windowSize.y * 2) / 2,
+ windowSize.x,
+ windowSize.y);
+ }
+
+ private void OnGUI()
+ {
+ gui.DrawGroup(new Group
+ {
+ GroupType = GroupType.Vertical,
+ Style = gui.ColoredStyle.TabBg2,
+ Body = () =>
+ {
+ gui.Label12px(new GUIContent($@"Remove sprites from the selected folder that are not used by
+Image components in the current open scene."));
+
+ gui.Space15();
+
+ spritesPath = gui.FolderField(
+ new GUIContent($"Sprites Path"),
+ spritesPath,
+ new GUIContent($"…"),
+ $"Select folder");
+
+ gui.Space15();
+
+ if (gui.OutlineButton(new GUIContent("Remove"), true))
+ {
+ RemoveCurrentSceneUnusedSprites();
+ }
+ }
+ });
+ }
+
+ public void RemoveCurrentSceneUnusedSprites()
+ {
+#if UNITY_EDITOR
+ Image[] images;
+
+#if UNITY_2023_3_OR_NEWER
+ images = MonoBehaviour.FindObjectsByType(FindObjectsSortMode.None);
+#else
+ images = MonoBehaviour.FindObjectsOfType();
+#endif
+
+ var sceneSpritePathes = images
+ .Where(x => x.sprite != null)
+ .Select(x => AssetDatabase.GetAssetPath(x.sprite));
+
+ var assetSpritePathes = AssetDatabase.FindAssets($"t:{typeof(Sprite).Name}", new string[]
+ {
+ spritesPath
+ }).Select(x => AssetDatabase.GUIDToAssetPath(x));
+
+ var result = assetSpritePathes.Where(x1 => sceneSpritePathes.All(x2 => x2 != x1));
+
+ foreach (var filePath in result)
+ {
+ File.Delete(filePath.GetFullAssetPath());
+ }
+
+ Debug.Log($"{result.Count()} sprites removed.");
+
+ AssetDatabase.Refresh();
+#endif
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/SpriteRemoverWindow.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/Tools/SpriteRemoverWindow.cs.meta
new file mode 100644
index 00000000..552e1f9a
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/SpriteRemoverWindow.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: a4a37961f301a504ab7f4e37d251e67e
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/UpdateChecker.cs b/Assets/D.A. Assets/DA-Shared/Editor/Tools/UpdateChecker.cs
new file mode 100644
index 00000000..8ab7bc6a
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/UpdateChecker.cs
@@ -0,0 +1,295 @@
+using DA_Assets.DAI;
+using DA_Assets.Extensions;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using UnityEditor;
+using UnityEngine;
+
+namespace DA_Assets.Tools
+{
+ public class UpdateChecker
+ {
+ private static Dictionary _cachedVersionData = new Dictionary();
+ private static DAInspector gui => BlackInspector.Instance.Inspector;
+
+ public static AssetVersion GetCurrentVersionInfo(AssetType assetType, string currentVersion)
+ {
+ foreach (var item in _cachedVersionData)
+ {
+ if (assetType == item.Key)
+ {
+ if (item.Value.CurrentVersion.Version == currentVersion)
+ {
+ return item.Value.CurrentVersion;
+ }
+ }
+ }
+
+ return default;
+ }
+
+ public static void DrawVersionLine(AssetType assetType, string currentVersion)
+ {
+ if (!DAWebConfig.IsWebConfigAvailable)
+ return;
+
+ if (!_cachedVersionData.TryGetValue(assetType, out var vc))
+ {
+ WriteVersionData(assetType, Version.Parse(currentVersion));
+ }
+
+ VersionCache cache = _cachedVersionData[assetType];
+
+ gui.DrawGroup(new Group
+ {
+ GroupType = GroupType.Horizontal,
+ Body = () =>
+ {
+ gui.FlexibleSpace();
+
+ if (gui.LinkLabel(
+ new GUIContent(cache.CurrentVersionText, cache.CurrentVersionTooltip),
+ cache.CurrentVersionStyle))
+ {
+ UnityEditor.PackageManager.UI.Window.Open(cache.Asset.Name);
+ }
+
+ if (cache.IsLatestVersion == false)
+ {
+ gui.Space5();
+ gui.Label10px(new GUIContent("—"));
+ gui.Space5();
+
+ if (gui.LinkLabel(
+ new GUIContent(cache.LatestVersionText, cache.LatestVersionTooltip),
+ cache.LatestVersionStyle))
+ {
+ UnityEditor.PackageManager.UI.Window.Open(cache.Asset.Name);
+ }
+ }
+ }
+ });
+ }
+
+ private static void WriteVersionData(AssetType assetType, Version currentVersion)
+ {
+ try
+ {
+ if (DAWebConfig.WebConfig.IsDefault())
+ {
+ throw new NullReferenceException("WebConfig is empty.");
+ }
+
+ Asset assetInfo = DAWebConfig.WebConfig.Assets.FirstOrDefault(x => x.Type == assetType);
+
+ if (assetInfo.IsDefault())
+ {
+ throw new NullReferenceException($"AssetInfo is empty for {assetType}");
+ }
+
+ VersionCache cache = new VersionCache
+ {
+ Asset = assetInfo
+ };
+
+ AssetVersion? current = null;
+ AssetVersion? last = null;
+
+ try
+ {
+ current = GetVersion(assetType, currentVersion);
+
+ if (!current.HasValue)
+ {
+ throw new NullReferenceException();
+ }
+
+ cache.CurrentVersion = current.Value;
+
+ if (current.Value.VersionType == VersionType.buggy)
+ {
+ cache.CurrentVersionStyle = gui.ColoredStyle.RedLabel10px;
+ }
+ else
+ {
+ cache.CurrentVersionStyle = gui.ColoredStyle.Label10px;
+ }
+
+ cache.CurrentVersionText = $"{currentVersion} [current, {current.Value.VersionType}]";
+ cache.CurrentVersionTooltip = current.Value.Description;
+ }
+ catch
+ {
+ SetDefaultCurrentVersionData(ref cache, currentVersion);
+ }
+
+ try
+ {
+ last = assetInfo.Versions.Last();
+
+ if (!last.HasValue)
+ {
+ throw new NullReferenceException();
+ }
+
+ cache.LastVersion = last.Value;
+
+ Version version2 = new Version(last.Value.Version);
+
+ int comparisonResult = currentVersion.CompareTo(version2);
+
+ if (comparisonResult > 0)//Version 1 is greater than Version 2
+ {
+ cache.IsLatestVersion = true;
+ }
+ else if (comparisonResult < 0)//Version 1 is less than Version 2
+ {
+ cache.IsLatestVersion = false;
+ }
+ else//Both versions are equal
+ {
+ cache.IsLatestVersion = true;
+ }
+
+ DateTime lastDt = DateTime.ParseExact(last.Value.ReleaseDate, "MMM d, yyyy", new System.Globalization.CultureInfo("en-US"));
+ DateTime nowDt = DateTime.Now;
+
+ TimeSpan timeDifference = nowDt - lastDt;
+ int differenceInDays = (int)timeDifference.TotalDays;
+ int differenceInHours = (int)timeDifference.TotalHours;
+ int differenceInMinutes = (int)timeDifference.TotalMinutes;
+
+ string dateStr = "";
+
+ if (differenceInMinutes < 0)
+ {
+ dateStr = $"near future";
+ }
+ else if (differenceInMinutes == 0)
+ {
+ dateStr = "just now";
+ }
+ else if (differenceInHours == 0)
+ {
+ dateStr = $"{differenceInMinutes} {Pluralize("minute", differenceInMinutes)} ago";
+ }
+ else if (differenceInDays == 0)
+ {
+ dateStr = $"{differenceInHours} {Pluralize("hour", differenceInHours)} ago";
+ }
+ else
+ {
+ dateStr = $"{differenceInDays} {Pluralize("day", differenceInDays)} ago";
+ }
+
+ cache.LatestVersionText = $"{last.Value.Version} [latest, {dateStr}, {last.Value.VersionType}]";
+
+ if (last.Value.VersionType == VersionType.buggy)
+ {
+ cache.LatestVersionStyle = gui.ColoredStyle.RedLabel10px;
+ }
+ else if (differenceInDays >= assetInfo.OldVersionDaysCount)
+ {
+ cache.LatestVersionStyle = gui.ColoredStyle.BlueLabel10px;
+ }
+ else
+ {
+ cache.LatestVersionStyle = gui.ColoredStyle.Label10px;
+ }
+
+ cache.LatestVersionTooltip = last.Value.Description;
+ }
+ catch
+ {
+ SetDefaultLatestData(ref cache);
+ }
+
+ _cachedVersionData[assetType] = cache;
+ }
+ catch (Exception)
+ {
+ VersionCache newCache = new VersionCache();
+ SetDefaultCurrentVersionData(ref newCache, currentVersion);
+ SetDefaultLatestData(ref newCache);
+ _cachedVersionData[assetType] = newCache;
+ }
+ }
+
+ private static void SetDefaultCurrentVersionData(ref VersionCache cache, Version currentVersion)
+ {
+ cache.CurrentVersionText = $"{currentVersion} [current]";
+ cache.CurrentVersionStyle = gui.ColoredStyle.LinkLabel10px;
+ cache.CurrentVersionTooltip = "No description.";
+ }
+
+ private static void SetDefaultLatestData(ref VersionCache cache)
+ {
+ cache.LatestVersionText = $"no data [latest]";
+ cache.LatestVersionStyle = gui.ColoredStyle.LinkLabel10px;
+ cache.LatestVersionTooltip = "No description.";
+ }
+
+ private static AssetVersion? GetVersion(AssetType assetType, Version currentVersion)
+ {
+ try
+ {
+ Asset assetInfo = DAWebConfig.WebConfig.Assets.First(x => x.Type == assetType);
+
+ foreach (AssetVersion assetVersion in assetInfo.Versions)
+ {
+ Version ver = Version.Parse(assetVersion.Version);
+ int res = currentVersion.CompareTo(ver);
+
+ if (res == 0)
+ {
+ return assetVersion;
+ }
+ }
+ }
+ catch
+ {
+
+ }
+
+ return null;
+ }
+
+ private static string Pluralize(string source, int count)
+ {
+ if (count == 1)
+ {
+ return source;
+ }
+ else
+ {
+ return source + "s";
+ }
+ }
+ }
+
+ internal struct VersionCache
+ {
+ internal AssetVersion CurrentVersion { get; set; }
+ internal AssetVersion LastVersion { get; set; }
+
+ internal Asset Asset { get; set; }
+ internal string CurrentVersionText { get; set; }
+ internal string CurrentVersionTooltip { get; set; }
+ internal string LatestVersionText { get; set; }
+ internal string LatestVersionTooltip { get; set; }
+ internal GUIStyle CurrentVersionStyle { get; set; }
+ internal GUIStyle LatestVersionStyle { get; set; }
+ internal bool IsLatestVersion { get; set; }
+ }
+
+ [Serializable]
+ public struct DeveloperMessage
+ {
+ [SerializeField] string text;
+ [SerializeField] MessageType type;
+
+ public string Text => text;
+ public MessageType Type => type;
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Editor/Tools/UpdateChecker.cs.meta b/Assets/D.A. Assets/DA-Shared/Editor/Tools/UpdateChecker.cs.meta
new file mode 100644
index 00000000..500ad94d
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Editor/Tools/UpdateChecker.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 733b2f32cf07e1f48bd623377bad358a
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime.meta b/Assets/D.A. Assets/DA-Shared/Runtime.meta
new file mode 100644
index 00000000..3a043473
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 87057685f8eda0f449d5972654136839
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/Constants.meta b/Assets/D.A. Assets/DA-Shared/Runtime/Constants.meta
new file mode 100644
index 00000000..2276eced
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/Constants.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: ceb96a65120ee024b9987567a20fb924
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/Constants/CsSharpKeywords.cs b/Assets/D.A. Assets/DA-Shared/Runtime/Constants/CsSharpKeywords.cs
new file mode 100644
index 00000000..0c43ac61
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/Constants/CsSharpKeywords.cs
@@ -0,0 +1,133 @@
+namespace DA_Assets.Constants
+{
+ public class CsSharpKeywords
+ {
+ ///
+ /// https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/
+ ///
+ public static string[] Keywords { get; } = new string[]
+ {
+ "abstract",
+ "as",
+ "base",
+ "bool",
+ "break",
+ "byte",
+ "case",
+ "catch",
+ "char",
+ "checked",
+ "class",
+ "const",
+ "continue",
+ "decimal",
+ "default",
+ "delegate",
+ "do",
+ "double",
+ "else",
+ "enum",
+ "event",
+ "explicit",
+ "extern",
+ "false",
+ "finally",
+ "fixed",
+ "float",
+ "for",
+ "foreach",
+ "goto",
+ "if",
+ "implicit",
+ "in",
+ "int",
+ "interface",
+ "internal",
+ "is",
+ "lock",
+ "long",
+ "namespace",
+ "new",
+ "null",
+ "object",
+ "operator",
+ "out",
+ "override",
+ "params",
+ "private",
+ "protected",
+ "public",
+ "readonly",
+ "ref",
+ "return",
+ "sbyte",
+ "sealed",
+ "short",
+ "sizeof",
+ "stackalloc",
+ "static",
+ "string",
+ "struct",
+ "switch",
+ "this",
+ "throw",
+ "true",
+ "try",
+ "typeof",
+ "uint",
+ "ulong",
+ "unchecked",
+ "unsafe",
+ "ushort",
+ "using",
+ "virtual",
+ "void",
+ "volatile",
+ "while",
+ "add",
+ "and",
+ "alias",
+ "ascending",
+ "args",
+ "async",
+ "await",
+ "by",
+ "descending",
+ "dynamic",
+ "equals",
+ "file",
+ "from",
+ "get",
+ "global",
+ "group",
+ "init",
+ "into",
+ "join",
+ "let",
+ "managed",
+ "nameof",
+ "nint",
+ "not",
+ "notnull",
+ "nuint",
+ "on",
+ "or",
+ "orderby",
+ "partial",
+ "record",
+ "remove",
+ "required",
+ "scoped",
+ "select",
+ "set",
+ "unmanaged",
+ "value",
+ "var",
+ "when",
+ "where",
+ "with",
+ "yield"
+ };
+ }
+}
+
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/Constants/CsSharpKeywords.cs.meta b/Assets/D.A. Assets/DA-Shared/Runtime/Constants/CsSharpKeywords.cs.meta
new file mode 100644
index 00000000..d6b1a604
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/Constants/CsSharpKeywords.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 03303b5211593d54793bd589abef0154
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/Constants/DAConstants.cs b/Assets/D.A. Assets/DA-Shared/Runtime/Constants/DAConstants.cs
new file mode 100644
index 00000000..a4d499eb
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/Constants/DAConstants.cs
@@ -0,0 +1,9 @@
+namespace DA_Assets.Constants
+{
+ public class DAConstants
+ {
+ public const string JsonNetPackageName = "com.unity.nuget.newtonsoft-json";
+ public const string Publisher = "D.A. Assets";
+ public const string SiteLink = "https://da-assets.github.io/site/";
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/Constants/DAConstants.cs.meta b/Assets/D.A. Assets/DA-Shared/Runtime/Constants/DAConstants.cs.meta
new file mode 100644
index 00000000..f1954948
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/Constants/DAConstants.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: d7dc8f33c4ffa2c4788402c5b2df1530
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/Constants/NetKnownColors.cs b/Assets/D.A. Assets/DA-Shared/Runtime/Constants/NetKnownColors.cs
new file mode 100644
index 00000000..c32bfabd
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/Constants/NetKnownColors.cs
@@ -0,0 +1,475 @@
+using System.Collections.Generic;
+using UnityEngine;
+
+namespace DA_Assets.Constants
+{
+ public class NetKnownColors
+ {
+ private static Dictionary knownColors;
+ public static Dictionary KnownColors => knownColors;
+
+ static NetKnownColors()
+ {
+ knownColors = new Dictionary
+ {
+ { NetKnownColor.AliceBlue, AliceBlue },
+ { NetKnownColor.AntiqueWhite, AntiqueWhite },
+ { NetKnownColor.Aqua, Aqua },
+ { NetKnownColor.Aquamarine, Aquamarine },
+ { NetKnownColor.Azure, Azure },
+ { NetKnownColor.Beige, Beige },
+ { NetKnownColor.Bisque, Bisque },
+ { NetKnownColor.Black, Black },
+ { NetKnownColor.BlanchedAlmond, BlanchedAlmond },
+ { NetKnownColor.Blue, Blue },
+ { NetKnownColor.BlueViolet, BlueViolet },
+ { NetKnownColor.Brown, Brown },
+ { NetKnownColor.BurlyWood, BurlyWood },
+ { NetKnownColor.CadetBlue, CadetBlue },
+ { NetKnownColor.Chartreuse, Chartreuse },
+ { NetKnownColor.Chocolate, Chocolate },
+ { NetKnownColor.Coral, Coral },
+ { NetKnownColor.CornflowerBlue, CornflowerBlue },
+ { NetKnownColor.Cornsilk, Cornsilk },
+ { NetKnownColor.Crimson, Crimson },
+ { NetKnownColor.Cyan, Cyan },
+ { NetKnownColor.DarkBlue, DarkBlue },
+ { NetKnownColor.DarkCyan, DarkCyan },
+ { NetKnownColor.DarkGoldenrod, DarkGoldenrod },
+ { NetKnownColor.DarkGray, DarkGray },
+ { NetKnownColor.DarkGreen, DarkGreen },
+ { NetKnownColor.DarkKhaki, DarkKhaki },
+ { NetKnownColor.DarkMagenta, DarkMagenta },
+ { NetKnownColor.DarkOliveGreen, DarkOliveGreen },
+ { NetKnownColor.DarkOrange, DarkOrange },
+ { NetKnownColor.DarkOrchid, DarkOrchid },
+ { NetKnownColor.DarkRed, DarkRed },
+ { NetKnownColor.DarkSalmon, DarkSalmon },
+ { NetKnownColor.DarkSeaGreen, DarkSeaGreen },
+ { NetKnownColor.DarkSlateBlue, DarkSlateBlue },
+ { NetKnownColor.DarkSlateGray, DarkSlateGray },
+ { NetKnownColor.DarkTurquoise, DarkTurquoise },
+ { NetKnownColor.DarkViolet, DarkViolet },
+ { NetKnownColor.DeepPink, DeepPink },
+ { NetKnownColor.DeepSkyBlue, DeepSkyBlue },
+ { NetKnownColor.DimGray, DimGray },
+ { NetKnownColor.DodgerBlue, DodgerBlue },
+ { NetKnownColor.Firebrick, Firebrick },
+ { NetKnownColor.FloralWhite, FloralWhite },
+ { NetKnownColor.ForestGreen, ForestGreen },
+ { NetKnownColor.Fuchsia, Fuchsia },
+ { NetKnownColor.Gainsboro, Gainsboro },
+ { NetKnownColor.GhostWhite, GhostWhite },
+ { NetKnownColor.Gold, Gold },
+ { NetKnownColor.Goldenrod, Goldenrod },
+ { NetKnownColor.Gray, Gray },
+ { NetKnownColor.Green, Green },
+ { NetKnownColor.GreenYellow, GreenYellow },
+ { NetKnownColor.Honeydew, Honeydew },
+ { NetKnownColor.HotPink, HotPink },
+ { NetKnownColor.IndianRed, IndianRed },
+ { NetKnownColor.Indigo, Indigo },
+ { NetKnownColor.Ivory, Ivory },
+ { NetKnownColor.Khaki, Khaki },
+ { NetKnownColor.Lavender, Lavender },
+ { NetKnownColor.LavenderBlush, LavenderBlush },
+ { NetKnownColor.LawnGreen, LawnGreen },
+ { NetKnownColor.LemonChiffon, LemonChiffon },
+ { NetKnownColor.LightBlue, LightBlue },
+ { NetKnownColor.LightCoral, LightCoral },
+ { NetKnownColor.LightCyan, LightCyan },
+ { NetKnownColor.LightGoldenrodYellow, LightGoldenrodYellow },
+ { NetKnownColor.LightGray, LightGray },
+ { NetKnownColor.LightGreen, LightGreen },
+ { NetKnownColor.LightPink, LightPink },
+ { NetKnownColor.LightSalmon, LightSalmon },
+ { NetKnownColor.LightSeaGreen, LightSeaGreen },
+ { NetKnownColor.LightSkyBlue, LightSkyBlue },
+ { NetKnownColor.LightSlateGray, LightSlateGray },
+ { NetKnownColor.LightSteelBlue, LightSteelBlue },
+ { NetKnownColor.LightYellow, LightYellow },
+ { NetKnownColor.Lime, Lime },
+ { NetKnownColor.LimeGreen, LimeGreen },
+ { NetKnownColor.Linen, Linen },
+ { NetKnownColor.Magenta, Magenta },
+ { NetKnownColor.Maroon, Maroon },
+ { NetKnownColor.MediumAquamarine, MediumAquamarine },
+ { NetKnownColor.MediumBlue, MediumBlue },
+ { NetKnownColor.MediumOrchid, MediumOrchid },
+ { NetKnownColor.MediumPurple, MediumPurple },
+ { NetKnownColor.MediumSeaGreen, MediumSeaGreen },
+ { NetKnownColor.MediumSlateBlue, MediumSlateBlue },
+ { NetKnownColor.MediumSpringGreen, MediumSpringGreen },
+ { NetKnownColor.MediumTurquoise, MediumTurquoise },
+ { NetKnownColor.MediumVioletRed, MediumVioletRed },
+ { NetKnownColor.MidnightBlue, MidnightBlue },
+ { NetKnownColor.MintCream, MintCream },
+ { NetKnownColor.MistyRose, MistyRose },
+ { NetKnownColor.Moccasin, Moccasin },
+ { NetKnownColor.NavajoWhite, NavajoWhite },
+ { NetKnownColor.Navy, Navy },
+ { NetKnownColor.OldLace, OldLace },
+ { NetKnownColor.Olive, Olive },
+ { NetKnownColor.OliveDrab, OliveDrab },
+ { NetKnownColor.Orange, Orange },
+ { NetKnownColor.OrangeRed, OrangeRed },
+ { NetKnownColor.Orchid, Orchid },
+ { NetKnownColor.PaleGoldenrod, PaleGoldenrod },
+ { NetKnownColor.PaleGreen, PaleGreen },
+ { NetKnownColor.PaleTurquoise, PaleTurquoise },
+ { NetKnownColor.PaleVioletRed, PaleVioletRed },
+ { NetKnownColor.PapayaWhip, PapayaWhip },
+ { NetKnownColor.PeachPuff, PeachPuff },
+ { NetKnownColor.Peru, Peru },
+ { NetKnownColor.Pink, Pink },
+ { NetKnownColor.Plum, Plum },
+ { NetKnownColor.PowderBlue, PowderBlue },
+ { NetKnownColor.Purple, Purple },
+ { NetKnownColor.Red, Red },
+ { NetKnownColor.RosyBrown, RosyBrown },
+ { NetKnownColor.RoyalBlue, RoyalBlue },
+ { NetKnownColor.SaddleBrown, SaddleBrown },
+ { NetKnownColor.Salmon, Salmon },
+ { NetKnownColor.SandyBrown, SandyBrown },
+ { NetKnownColor.SeaGreen, SeaGreen },
+ { NetKnownColor.SeaShell, SeaShell },
+ { NetKnownColor.Sienna, Sienna },
+ { NetKnownColor.Silver, Silver },
+ { NetKnownColor.SkyBlue, SkyBlue },
+ { NetKnownColor.SlateBlue, SlateBlue },
+ { NetKnownColor.SlateGray, SlateGray },
+ { NetKnownColor.Snow, Snow },
+ { NetKnownColor.SpringGreen, SpringGreen },
+ { NetKnownColor.SteelBlue, SteelBlue },
+ { NetKnownColor.Tan, Tan },
+ { NetKnownColor.Teal, Teal },
+ { NetKnownColor.Thistle, Thistle },
+ { NetKnownColor.Tomato, Tomato },
+ { NetKnownColor.Turquoise, Turquoise },
+ { NetKnownColor.Violet, Violet },
+ { NetKnownColor.Wheat, Wheat },
+ { NetKnownColor.White, White },
+ { NetKnownColor.WhiteSmoke, WhiteSmoke },
+ { NetKnownColor.Yellow, Yellow },
+ { NetKnownColor.YellowGreen, YellowGreen },
+ };
+ }
+
+ public static Color32 AliceBlue = new Color32(240, 248, 255, 255);
+ public static Color32 AntiqueWhite = new Color32(250, 235, 215, 255);
+ public static Color32 Aqua = new Color32(0, 255, 255, 255);
+ public static Color32 Aquamarine = new Color32(127, 255, 212, 255);
+ public static Color32 Azure = new Color32(240, 255, 255, 255);
+ public static Color32 Beige = new Color32(245, 245, 220, 255);
+ public static Color32 Bisque = new Color32(255, 228, 196, 255);
+ public static Color32 Black = new Color32(0, 0, 0, 255);
+ public static Color32 BlanchedAlmond = new Color32(255, 235, 205, 255);
+ public static Color32 Blue = new Color32(0, 0, 255, 255);
+ public static Color32 BlueViolet = new Color32(138, 43, 226, 255);
+ public static Color32 Brown = new Color32(165, 42, 42, 255);
+ public static Color32 BurlyWood = new Color32(222, 184, 135, 255);
+ public static Color32 CadetBlue = new Color32(95, 158, 160, 255);
+ public static Color32 Chartreuse = new Color32(127, 255, 0, 255);
+ public static Color32 Chocolate = new Color32(210, 105, 30, 255);
+ public static Color32 Coral = new Color32(255, 127, 80, 255);
+ public static Color32 CornflowerBlue = new Color32(100, 149, 237, 255);
+ public static Color32 Cornsilk = new Color32(255, 248, 220, 255);
+ public static Color32 Crimson = new Color32(220, 20, 60, 255);
+ public static Color32 Cyan = new Color32(0, 255, 255, 255);
+ public static Color32 DarkBlue = new Color32(0, 0, 139, 255);
+ public static Color32 DarkCyan = new Color32(0, 139, 139, 255);
+ public static Color32 DarkGoldenrod = new Color32(184, 134, 11, 255);
+ public static Color32 DarkGray = new Color32(169, 169, 169, 255);
+ public static Color32 DarkGreen = new Color32(0, 100, 0, 255);
+ public static Color32 DarkKhaki = new Color32(189, 183, 107, 255);
+ public static Color32 DarkMagenta = new Color32(139, 0, 139, 255);
+ public static Color32 DarkOliveGreen = new Color32(85, 107, 47, 255);
+ public static Color32 DarkOrange = new Color32(255, 140, 0, 255);
+ public static Color32 DarkOrchid = new Color32(153, 50, 204, 255);
+ public static Color32 DarkRed = new Color32(139, 0, 0, 255);
+ public static Color32 DarkSalmon = new Color32(233, 150, 122, 255);
+ public static Color32 DarkSeaGreen = new Color32(143, 188, 139, 255);
+ public static Color32 DarkSlateBlue = new Color32(72, 61, 139, 255);
+ public static Color32 DarkSlateGray = new Color32(47, 79, 79, 255);
+ public static Color32 DarkTurquoise = new Color32(0, 206, 209, 255);
+ public static Color32 DarkViolet = new Color32(148, 0, 211, 255);
+ public static Color32 DeepPink = new Color32(255, 20, 147, 255);
+ public static Color32 DeepSkyBlue = new Color32(0, 191, 255, 255);
+ public static Color32 DimGray = new Color32(105, 105, 105, 255);
+ public static Color32 DodgerBlue = new Color32(30, 144, 255, 255);
+ public static Color32 Firebrick = new Color32(178, 34, 34, 255);
+ public static Color32 FloralWhite = new Color32(255, 250, 240, 255);
+ public static Color32 ForestGreen = new Color32(34, 139, 34, 255);
+ public static Color32 Fuchsia = new Color32(255, 0, 255, 255);
+ public static Color32 Gainsboro = new Color32(220, 220, 220, 255);
+ public static Color32 GhostWhite = new Color32(248, 248, 255, 255);
+ public static Color32 Gold = new Color32(255, 215, 0, 255);
+ public static Color32 Goldenrod = new Color32(218, 165, 32, 255);
+ public static Color32 Gray = new Color32(128, 128, 128, 255);
+ public static Color32 Green = new Color32(0, 128, 0, 255);
+ public static Color32 GreenYellow = new Color32(173, 255, 47, 255);
+ public static Color32 Honeydew = new Color32(240, 255, 240, 255);
+ public static Color32 HotPink = new Color32(255, 105, 180, 255);
+ public static Color32 IndianRed = new Color32(205, 92, 92, 255);
+ public static Color32 Indigo = new Color32(75, 0, 130, 255);
+ public static Color32 Ivory = new Color32(255, 255, 240, 255);
+ public static Color32 Khaki = new Color32(240, 230, 140, 255);
+ public static Color32 Lavender = new Color32(230, 230, 250, 255);
+ public static Color32 LavenderBlush = new Color32(255, 240, 245, 255);
+ public static Color32 LawnGreen = new Color32(124, 252, 0, 255);
+ public static Color32 LemonChiffon = new Color32(255, 250, 205, 255);
+ public static Color32 LightBlue = new Color32(173, 216, 230, 255);
+ public static Color32 LightCoral = new Color32(240, 128, 128, 255);
+ public static Color32 LightCyan = new Color32(224, 255, 255, 255);
+ public static Color32 LightGoldenrodYellow = new Color32(250, 250, 210, 255);
+ public static Color32 LightGray = new Color32(211, 211, 211, 255);
+ public static Color32 LightGreen = new Color32(144, 238, 144, 255);
+ public static Color32 LightPink = new Color32(255, 182, 193, 255);
+ public static Color32 LightSalmon = new Color32(255, 160, 122, 255);
+ public static Color32 LightSeaGreen = new Color32(32, 178, 170, 255);
+ public static Color32 LightSkyBlue = new Color32(135, 206, 250, 255);
+ public static Color32 LightSlateGray = new Color32(119, 136, 153, 255);
+ public static Color32 LightSteelBlue = new Color32(176, 196, 222, 255);
+ public static Color32 LightYellow = new Color32(255, 255, 224, 255);
+ public static Color32 Lime = new Color32(0, 255, 0, 255);
+ public static Color32 LimeGreen = new Color32(50, 205, 50, 255);
+ public static Color32 Linen = new Color32(250, 240, 230, 255);
+ public static Color32 Magenta = new Color32(255, 0, 255, 255);
+ public static Color32 Maroon = new Color32(128, 0, 0, 255);
+ public static Color32 MediumAquamarine = new Color32(102, 205, 170, 255);
+ public static Color32 MediumBlue = new Color32(0, 0, 205, 255);
+ public static Color32 MediumOrchid = new Color32(186, 85, 211, 255);
+ public static Color32 MediumPurple = new Color32(147, 112, 219, 255);
+ public static Color32 MediumSeaGreen = new Color32(60, 179, 113, 255);
+ public static Color32 MediumSlateBlue = new Color32(123, 104, 238, 255);
+ public static Color32 MediumSpringGreen = new Color32(0, 250, 154, 255);
+ public static Color32 MediumTurquoise = new Color32(72, 209, 204, 255);
+ public static Color32 MediumVioletRed = new Color32(199, 21, 133, 255);
+ public static Color32 MidnightBlue = new Color32(25, 25, 112, 255);
+ public static Color32 MintCream = new Color32(245, 255, 250, 255);
+ public static Color32 MistyRose = new Color32(255, 228, 225, 255);
+ public static Color32 Moccasin = new Color32(255, 228, 181, 255);
+ public static Color32 NavajoWhite = new Color32(255, 222, 173, 255);
+ public static Color32 Navy = new Color32(0, 0, 128, 255);
+ public static Color32 OldLace = new Color32(253, 245, 230, 255);
+ public static Color32 Olive = new Color32(128, 128, 0, 255);
+ public static Color32 OliveDrab = new Color32(107, 142, 35, 255);
+ public static Color32 Orange = new Color32(255, 165, 0, 255);
+ public static Color32 OrangeRed = new Color32(255, 69, 0, 255);
+ public static Color32 Orchid = new Color32(218, 112, 214, 255);
+ public static Color32 PaleGoldenrod = new Color32(238, 232, 170, 255);
+ public static Color32 PaleGreen = new Color32(152, 251, 152, 255);
+ public static Color32 PaleTurquoise = new Color32(175, 238, 238, 255);
+ public static Color32 PaleVioletRed = new Color32(219, 112, 147, 255);
+ public static Color32 PapayaWhip = new Color32(255, 239, 213, 255);
+ public static Color32 PeachPuff = new Color32(255, 218, 185, 255);
+ public static Color32 Peru = new Color32(205, 133, 63, 255);
+ public static Color32 Pink = new Color32(255, 192, 203, 255);
+ public static Color32 Plum = new Color32(221, 160, 221, 255);
+ public static Color32 PowderBlue = new Color32(176, 224, 230, 255);
+ public static Color32 Purple = new Color32(128, 0, 128, 255);
+ public static Color32 Red = new Color32(255, 0, 0, 255);
+ public static Color32 RosyBrown = new Color32(188, 143, 143, 255);
+ public static Color32 RoyalBlue = new Color32(65, 105, 225, 255);
+ public static Color32 SaddleBrown = new Color32(139, 69, 19, 255);
+ public static Color32 Salmon = new Color32(250, 128, 114, 255);
+ public static Color32 SandyBrown = new Color32(244, 164, 96, 255);
+ public static Color32 SeaGreen = new Color32(46, 139, 87, 255);
+ public static Color32 SeaShell = new Color32(255, 245, 238, 255);
+ public static Color32 Sienna = new Color32(160, 82, 45, 255);
+ public static Color32 Silver = new Color32(192, 192, 192, 255);
+ public static Color32 SkyBlue = new Color32(135, 206, 235, 255);
+ public static Color32 SlateBlue = new Color32(106, 90, 205, 255);
+ public static Color32 SlateGray = new Color32(112, 128, 144, 255);
+ public static Color32 Snow = new Color32(255, 250, 250, 255);
+ public static Color32 SpringGreen = new Color32(0, 255, 127, 255);
+ public static Color32 SteelBlue = new Color32(70, 130, 180, 255);
+ public static Color32 Tan = new Color32(210, 180, 140, 255);
+ public static Color32 Teal = new Color32(0, 128, 128, 255);
+ public static Color32 Thistle = new Color32(216, 191, 216, 255);
+ public static Color32 Tomato = new Color32(255, 99, 71, 255);
+ public static Color32 Turquoise = new Color32(64, 224, 208, 255);
+ public static Color32 Violet = new Color32(238, 130, 238, 255);
+ public static Color32 Wheat = new Color32(245, 222, 179, 255);
+ public static Color32 White = new Color32(255, 255, 255, 255);
+ public static Color32 WhiteSmoke = new Color32(245, 245, 245, 255);
+ public static Color32 Yellow = new Color32(255, 255, 0, 255);
+ public static Color32 YellowGreen = new Color32(154, 205, 50, 255);
+
+#if false
+ public static void PrintKnownColors()
+ {
+ Dictionary knownC = new Dictionary();
+
+ System.Drawing.KnownColor[] colors = (System.Drawing.KnownColor[])Enum.GetValues(typeof(System.Drawing.KnownColor));
+
+ foreach (System.Drawing.KnownColor knownColor in colors)
+ {
+ if (knownColor < System.Drawing.KnownColor.AliceBlue)
+ continue;
+ if (knownColor > System.Drawing.KnownColor.YellowGreen)
+ continue;
+
+ System.Drawing.Color sdColor = System.Drawing.Color.FromKnownColor(knownColor);
+
+ Color32 unityColor = new Color32(sdColor.R, sdColor.G, sdColor.B, sdColor.A);
+ knownC.Add(knownColor, unityColor);
+ }
+
+ string f = "";
+
+ foreach (var item in knownC)
+ {
+ f += Environment.NewLine;
+ f += $"{{ NetKnownColor.{item.Key}, {item.Key}}},";
+ }
+
+ Debug.Log(f);
+ }
+#endif
+ }
+
+ public enum NetKnownColor
+ {
+ AliceBlue = 28,
+ AntiqueWhite = 29,
+ Aqua = 30,
+ Aquamarine = 31,
+ Azure = 32,
+ Beige = 33,
+ Bisque = 34,
+ Black = 35,
+ BlanchedAlmond = 36,
+ Blue = 37,
+ BlueViolet = 38,
+ Brown = 39,
+ BurlyWood = 40,
+ CadetBlue = 41,
+ Chartreuse = 42,
+ Chocolate = 43,
+ Coral = 44,
+ CornflowerBlue = 45,
+ Cornsilk = 46,
+ Crimson = 47,
+ Cyan = 48,
+ DarkBlue = 49,
+ DarkCyan = 50,
+ DarkGoldenrod = 51,
+ DarkGray = 52,
+ DarkGreen = 53,
+ DarkKhaki = 54,
+ DarkMagenta = 55,
+ DarkOliveGreen = 56,
+ DarkOrange = 57,
+ DarkOrchid = 58,
+ DarkRed = 59,
+ DarkSalmon = 60,
+ DarkSeaGreen = 61,
+ DarkSlateBlue = 62,
+ DarkSlateGray = 63,
+ DarkTurquoise = 64,
+ DarkViolet = 65,
+ DeepPink = 66,
+ DeepSkyBlue = 67,
+ DimGray = 68,
+ DodgerBlue = 69,
+ Firebrick = 70,
+ FloralWhite = 71,
+ ForestGreen = 72,
+ Fuchsia = 73,
+ Gainsboro = 74,
+ GhostWhite = 75,
+ Gold = 76,
+ Goldenrod = 77,
+ Gray = 78,
+ Green = 79,
+ GreenYellow = 80,
+ Honeydew = 81,
+ HotPink = 82,
+ IndianRed = 83,
+ Indigo = 84,
+ Ivory = 85,
+ Khaki = 86,
+ Lavender = 87,
+ LavenderBlush = 88,
+ LawnGreen = 89,
+ LemonChiffon = 90,
+ LightBlue = 91,
+ LightCoral = 92,
+ LightCyan = 93,
+ LightGoldenrodYellow = 94,
+ LightGray = 95,
+ LightGreen = 96,
+ LightPink = 97,
+ LightSalmon = 98,
+ LightSeaGreen = 99,
+ LightSkyBlue = 100,
+ LightSlateGray = 101,
+ LightSteelBlue = 102,
+ LightYellow = 103,
+ Lime = 104,
+ LimeGreen = 105,
+ Linen = 106,
+ Magenta = 107,
+ Maroon = 108,
+ MediumAquamarine = 109,
+ MediumBlue = 110,
+ MediumOrchid = 111,
+ MediumPurple = 112,
+ MediumSeaGreen = 113,
+ MediumSlateBlue = 114,
+ MediumSpringGreen = 115,
+ MediumTurquoise = 116,
+ MediumVioletRed = 117,
+ MidnightBlue = 118,
+ MintCream = 119,
+ MistyRose = 120,
+ Moccasin = 121,
+ NavajoWhite = 122,
+ Navy = 123,
+ OldLace = 124,
+ Olive = 125,
+ OliveDrab = 126,
+ Orange = 127,
+ OrangeRed = 128,
+ Orchid = 129,
+ PaleGoldenrod = 130,
+ PaleGreen = 131,
+ PaleTurquoise = 132,
+ PaleVioletRed = 133,
+ PapayaWhip = 134,
+ PeachPuff = 135,
+ Peru = 136,
+ Pink = 137,
+ Plum = 138,
+ PowderBlue = 139,
+ Purple = 140,
+ Red = 141,
+ RosyBrown = 142,
+ RoyalBlue = 143,
+ SaddleBrown = 144,
+ Salmon = 145,
+ SandyBrown = 146,
+ SeaGreen = 147,
+ SeaShell = 148,
+ Sienna = 149,
+ Silver = 150,
+ SkyBlue = 151,
+ SlateBlue = 152,
+ SlateGray = 153,
+ Snow = 154,
+ SpringGreen = 155,
+ SteelBlue = 156,
+ Tan = 157,
+ Teal = 158,
+ Thistle = 159,
+ Tomato = 160,
+ Turquoise = 161,
+ Violet = 162,
+ Wheat = 163,
+ White = 164,
+ WhiteSmoke = 165,
+ Yellow = 166,
+ YellowGreen = 167
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/Constants/NetKnownColors.cs.meta b/Assets/D.A. Assets/DA-Shared/Runtime/Constants/NetKnownColors.cs.meta
new file mode 100644
index 00000000..3e3d4575
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/Constants/NetKnownColors.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 748fbd32475461c4dad150749864b01e
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder.meta b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder.meta
new file mode 100644
index 00000000..d13cce34
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 8f13328ba504b9546861fc465a6ccfbf
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Scripts.meta b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Scripts.meta
new file mode 100644
index 00000000..8501d1d5
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Scripts.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: e233ca4a4b4749449801cf0cfb057494
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Scripts/CornerRounder.cs b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Scripts/CornerRounder.cs
new file mode 100644
index 00000000..7083a509
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Scripts/CornerRounder.cs
@@ -0,0 +1,184 @@
+/*MIT License
+
+Copyright (c) 2019 Kirill Evdokimov
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.*/
+
+using DA_Assets.Extensions;
+using UnityEngine;
+using UnityEngine.UI;
+
+namespace DA_Assets.CR
+{
+ public class CornerRounder : MonoBehaviour
+ {
+ private static readonly int prop_halfSize = Shader.PropertyToID("_halfSize");
+ private static readonly int prop_radiuses = Shader.PropertyToID("_r");
+ private static readonly int prop_rect2props = Shader.PropertyToID("_rect2props");
+
+ // Vector2.right rotated clockwise by 45 degrees
+ private static readonly Vector2 wNorm = new Vector2(.7071068f, -.7071068f);
+ // Vector2.right rotated counter-clockwise by 45 degrees
+ private static readonly Vector2 hNorm = new Vector2(.7071068f, .7071068f);
+
+ public bool independent = false;
+
+ public Vector4 radiiSerialized = new Vector4(40f, 40f, 40f, 40f);
+ private Vector4 _radii => GetNormalizedRadii();
+
+ private Vector4 GetNormalizedRadii()
+ {
+ float width = GetComponent().GetWidth();
+ float height = GetComponent().GetHeight();
+
+ Vector4 r = new Vector4();
+ r.x = radiiSerialized.x.NormalizeAngleToSize(width, height);
+ r.y = radiiSerialized.y.NormalizeAngleToSize(width, height);
+ r.z = radiiSerialized.z.NormalizeAngleToSize(width, height);
+ r.w = radiiSerialized.w.NormalizeAngleToSize(width, height);
+ return r;
+ }
+
+ private Material material;
+
+ // xy - position,
+ // zw - halfSize
+ [HideInInspector, SerializeField] private Vector4 rect2props;
+ [HideInInspector, SerializeField] private MaskableGraphic image;
+
+ public void SetRadii(Vector4 r)
+ {
+ if (r.x == r.y &&
+ r.x == r.z &&
+ r.x == r.w)
+ {
+ independent = false;
+ }
+ else
+ {
+ independent = true;
+ }
+
+ radiiSerialized = r;
+ Refresh();
+ }
+
+ private void OnValidate()
+ {
+ Validate();
+ Refresh();
+ }
+
+ private void OnEnable()
+ {
+ Validate();
+ Refresh();
+ }
+
+ private void OnRectTransformDimensionsChange()
+ {
+ if (enabled && material != null)
+ {
+ Refresh();
+ }
+ }
+
+ private void OnDestroy()
+ {
+ image.material = null; //This makes so that when the component is removed, the UI material returns to null
+
+ material.Destroy();
+ image = null;
+ material = null;
+ }
+
+ public void Validate()
+ {
+ if (material == null)
+ {
+ try
+ {
+ material = new Material(Shader.Find("UI/RoundedCorners/CornerRounder"));
+ }
+ catch (System.Exception ex)
+ {
+ Debug.LogException(ex);
+ }
+ }
+
+ if (image == null)
+ {
+ TryGetComponent(out image);
+ }
+
+ if (image != null)
+ {
+ image.material = material;
+ }
+ }
+
+ public void Refresh()
+ {
+ Rect rect = ((RectTransform)transform).rect;
+ RecalculateProps(rect.size);
+
+ if (material != null)
+ {
+ material.SetVector(prop_rect2props, rect2props);
+ material.SetVector(prop_halfSize, rect.size * 0.5f);
+ material.SetVector(prop_radiuses, _radii);
+ }
+ }
+
+ private void RecalculateProps(Vector2 size)
+ {
+ // Vector that goes from left to right sides of rect2
+ Vector2 aVec = new Vector2(size.x, -size.y + _radii.x + _radii.z);
+
+ // Project vector aVec to wNorm to get magnitude of rect2 width vector
+ float halfWidth = Vector2.Dot(aVec, wNorm) * .5f;
+ rect2props.z = halfWidth;
+
+
+ // Vector that goes from bottom to top sides of rect2
+ Vector2 bVec = new Vector2(size.x, size.y - _radii.w - _radii.y);
+
+ // Project vector bVec to hNorm to get magnitude of rect2 height vector
+ float halfHeight = Vector2.Dot(bVec, hNorm) * .5f;
+ rect2props.w = halfHeight;
+
+
+ // Vector that goes from left to top sides of rect2
+ Vector2 efVec = new Vector2(size.x - _radii.x - _radii.y, 0);
+
+ // Vector that goes from point E to point G, which is top-left of rect2
+ Vector2 egVec = hNorm * Vector2.Dot(efVec, hNorm);
+
+ // Position of point E relative to center of coord system
+ Vector2 ePoint = new Vector2(_radii.x - (size.x / 2), size.y / 2);
+
+ // Origin of rect2 relative to center of coord system
+ // ePoint + egVec == vector to top-left corner of rect2
+ // wNorm * halfWidth + hNorm * -halfHeight == vector from top-left corner to center
+ Vector2 origin = ePoint + egVec + wNorm * halfWidth + hNorm * -halfHeight;
+ rect2props.x = origin.x;
+ rect2props.y = origin.y;
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Scripts/CornerRounder.cs.meta b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Scripts/CornerRounder.cs.meta
new file mode 100644
index 00000000..ea1fce13
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Scripts/CornerRounder.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 9a2e82b06c2ed1847bd32d353cd674c8
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders.meta b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders.meta
new file mode 100644
index 00000000..8ea389dd
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 857dd30bb8d2d9f4fa9171515f4da118
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/CornerRounder.shader b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/CornerRounder.shader
new file mode 100644
index 00000000..e34819a0
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/CornerRounder.shader
@@ -0,0 +1,120 @@
+/*MIT License
+
+Copyright (c) 2019 Kirill Evdokimov
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.*/
+
+Shader "UI/RoundedCorners/CornerRounder" {
+
+ Properties {
+ [HideInInspector] _MainTex ("Texture", 2D) = "white" {}
+
+ // --- Mask support ---
+ [HideInInspector] _StencilComp ("Stencil Comparison", Float) = 8
+ [HideInInspector] _Stencil ("Stencil ID", Float) = 0
+ [HideInInspector] _StencilOp ("Stencil Operation", Float) = 0
+ [HideInInspector] _StencilWriteMask ("Stencil Write Mask", Float) = 255
+ [HideInInspector] _StencilReadMask ("Stencil Read Mask", Float) = 255
+ [HideInInspector] _ColorMask ("Color Mask", Float) = 15
+ [HideInInspector] _UseUIAlphaClip ("Use Alpha Clip", Float) = 0
+ // Definition in Properties section is required to Mask works properly
+ _r ("r", Vector) = (0,0,0,0)
+ _halfSize ("halfSize", Vector) = (0,0,0,0)
+ _rect2props ("rect2props", Vector) = (0,0,0,0)
+ _OuterUV ("image outer uv", Vector) = (0, 0, 1, 1)
+ // ---
+ }
+
+ SubShader {
+ Tags {
+ "RenderType"="Transparent"
+ "Queue"="Transparent"
+ }
+
+ // --- Mask support ---
+ Stencil {
+ Ref [_Stencil]
+ Comp [_StencilComp]
+ Pass [_StencilOp]
+ ReadMask [_StencilReadMask]
+ WriteMask [_StencilWriteMask]
+ }
+ Cull Off
+ Lighting Off
+ ZTest [unity_GUIZTestMode]
+ ColorMask [_ColorMask]
+ // ---
+
+ Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha
+ ZWrite Off
+
+ Pass {
+ CGPROGRAM
+
+ #include "UnityCG.cginc"
+ #include "UnityUI.cginc"
+ #include "SDFUtils.cginc"
+ #include "ShaderSetup.cginc"
+
+ #pragma vertex vert
+ #pragma fragment frag
+
+ #pragma multi_compile_local _ UNITY_UI_CLIP_RECT
+ #pragma multi_compile_local _ UNITY_UI_ALPHACLIP
+
+ float4 _r;
+ float4 _halfSize;
+ float4 _rect2props;
+ float4 _OuterUV;
+ sampler2D _MainTex;
+ float4 _ClipRect;
+ fixed4 _TextureSampleAdd;
+
+ fixed4 frag (v2f i) : SV_Target {
+ float2 uvSample = i.uv;
+ uvSample.x = (uvSample.x - _OuterUV.x) / (_OuterUV.z - _OuterUV.x);
+ uvSample.y = (uvSample.y - _OuterUV.y) / (_OuterUV.w - _OuterUV.y);
+
+ half4 color = (tex2D(_MainTex, i.uv) + _TextureSampleAdd) * i.color;
+
+ #ifdef UNITY_UI_CLIP_RECT
+ color.a *= UnityGet2DClipping(i.worldPosition.xy, _ClipRect);
+ #endif
+
+ #ifdef UNITY_UI_ALPHACLIP
+ clip(color.a - 0.001);
+ #endif
+
+ if (color.a <= 0) {
+ return color;
+ }
+
+ float alpha = CalcAlphaForIndependentCorners(uvSample, _halfSize.xy, _rect2props, _r);
+
+ #ifdef UNITY_UI_ALPHACLIP
+ clip(alpha - 0.001);
+ #endif
+
+ return mixAlpha(tex2D(_MainTex, i.uv), i.color, alpha);
+ }
+
+ ENDCG
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/CornerRounder.shader.meta b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/CornerRounder.shader.meta
new file mode 100644
index 00000000..2ac08681
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/CornerRounder.shader.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: d3beb88e61f88ca4393acdefb005fa70
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/SDFUtils.cginc b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/SDFUtils.cginc
new file mode 100644
index 00000000..2dcc45ca
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/SDFUtils.cginc
@@ -0,0 +1,104 @@
+/*MIT License
+
+Copyright (c) 2019 Kirill Evdokimov
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.*/
+
+// SDF Function for rectangle
+float rectangle(float2 samplePosition, float2 halfSize){
+ // X component represents signed distance to closest vertical edge of rectangle
+ // Same for Y but for closest horizontal edge
+ // HalfSize represents two distances from each axis of 2d space to a сorresponding edge
+ float2 distanceToEdge = abs(samplePosition) - halfSize;
+ // max(n, 0) to remove distances that signed with minus (distances inside rectangle)
+ // length to calculate distance from outside (distances that > 0) to rectangle
+ float outsideDistance = length(max(distanceToEdge, 0));
+ // max(x,y) is a cheap way to calculate distance to closest edge inside rectangle
+ // with min we just make sure that inside distances would not impact on outside distances
+ float insideDistance = min(max(distanceToEdge.x, distanceToEdge.y), 0);
+ return outsideDistance + insideDistance;
+}
+
+// An extension of rectangle() function to modify signed distance (effect as a wrap around rectangle)
+float roundedRectangle(float2 samplePosition, float absoluteRound, float2 halfSize){
+ // subtrancting value from final distance effects like a wrap around rectangle, so
+ // the solution is to decrease actual rectangle with `absoluteRound` value
+ // and then make an effect of wrap with size of `absoluteRound`
+ return rectangle(samplePosition, halfSize - absoluteRound) - absoluteRound;
+}
+
+// Smoothstep function with antialiasing
+float AntialiasedCutoff(float distance){
+ float distanceChange = fwidth(distance) * 0.5;
+ return smoothstep(distanceChange, -distanceChange, distance);
+}
+
+float CalcAlpha(float2 samplePosition, float2 size, float radius){
+ // -.5 = translate origin of samplePositions from (0, 0) to (.5, .5)
+ // because for Image component (0,0) is bottom-right, not a center
+ // * size = scale samplePositions to localSpace of Image with this size
+ float2 samplePositionTranslated = (samplePosition - .5) * size;
+ float distToRect = roundedRectangle(samplePositionTranslated, radius * .5, size * .5);
+ return AntialiasedCutoff(distToRect);
+}
+
+inline float2 translate(float2 samplePosition, float2 offset){
+ return samplePosition - offset;
+}
+
+float intersect(float shape1, float shape2){
+ return max(shape1, shape2);
+}
+
+float2 rotate(float2 samplePosition, float rotation){
+ const float PI = 3.14159;
+ float angle = rotation * PI * 2 * -1;
+ float sine, cosine;
+ sincos(angle, sine, cosine);
+ return float2(cosine * samplePosition.x + sine * samplePosition.y, cosine * samplePosition.y - sine * samplePosition.x);
+}
+
+float circle(float2 position, float radius){
+ return length(position) - radius;
+}
+
+float CalcAlphaForIndependentCorners(float2 samplePosition, float2 halfSize, float4 rect2props, float4 r){
+
+ samplePosition = (samplePosition - .5) * halfSize * 2;
+
+ float r1 = rectangle(samplePosition, halfSize);
+
+ float2 r2Position = rotate(translate(samplePosition, rect2props.xy), .125);
+ float r2 = rectangle(r2Position, rect2props.zw);
+
+ float2 circle0Position = translate(samplePosition, float2(-halfSize.x + r.x, halfSize.y - r.x));
+ float c0 = circle(circle0Position, r.x);
+
+ float2 circle1Position = translate(samplePosition, float2(halfSize.x - r.y, halfSize.y - r.y));
+ float c1 = circle(circle1Position, r.y);
+
+ float2 circle2Position = translate(samplePosition, float2(halfSize.x - r.z, -halfSize.y + r.z));
+ float c2 = circle(circle2Position, r.z);
+
+ float2 circle3Position = translate(samplePosition, -halfSize + r.w);
+ float c3 = circle(circle3Position, r.w);
+
+ float dist = max(r1,min(min(min(min(r2, c0), c1), c2), c3));
+ return AntialiasedCutoff(dist);
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/SDFUtils.cginc.meta b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/SDFUtils.cginc.meta
new file mode 100644
index 00000000..053ac15e
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/SDFUtils.cginc.meta
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 209beda86bef4cdf945cf90c8999e832
+timeCreated: 1575732888
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/ShaderSetup.cginc b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/ShaderSetup.cginc
new file mode 100644
index 00000000..737a6709
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/ShaderSetup.cginc
@@ -0,0 +1,54 @@
+/*MIT License
+
+Copyright (c) 2019 Kirill Evdokimov
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.*/
+
+struct appdata {
+ float4 vertex : POSITION;
+ float2 uv : TEXCOORD0;
+ float4 color : COLOR; // set from Image component property
+ UNITY_VERTEX_INPUT_INSTANCE_ID
+};
+
+struct v2f {
+ float2 uv : TEXCOORD0;
+ float4 vertex : SV_POSITION;
+ float4 color : COLOR;
+ float4 worldPosition : TEXCOORD1;
+ UNITY_VERTEX_OUTPUT_STEREO
+};
+
+v2f vert (appdata v) {
+ v2f o;
+ UNITY_SETUP_INSTANCE_ID(v);
+ UNITY_INITIALIZE_OUTPUT(v2f, o);
+ UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
+ o.worldPosition = v.vertex;
+ o.vertex = UnityObjectToClipPos(v.vertex);
+ o.uv = v.uv;
+ o.color = v.color;
+ return o;
+}
+
+inline fixed4 mixAlpha(fixed4 mainTexColor, fixed4 color, float sdfAlpha){
+ fixed4 col = mainTexColor * color;
+ col.a = min(col.a, sdfAlpha);
+ return col;
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/ShaderSetup.cginc.meta b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/ShaderSetup.cginc.meta
new file mode 100644
index 00000000..622b91b1
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/CornerRounder/Shaders/ShaderSetup.cginc.meta
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: c8b27b6dc4af4c65a0d1531a5c3a9880
+timeCreated: 1575827487
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient.meta
new file mode 100644
index 00000000..d81bf702
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: eb9069a6883e2aa42bbba419ed2285aa
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts.meta
new file mode 100644
index 00000000..215f21ce
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 7eb8638cb22c214469a6ff32c9ef415d
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAColorBlendMode.cs b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAColorBlendMode.cs
new file mode 100644
index 00000000..1cb1c4f9
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAColorBlendMode.cs
@@ -0,0 +1,9 @@
+namespace DA_Assets.DAG
+{
+ public enum DAColorBlendMode
+ {
+ Overlay,
+ Multiply,
+ Difference
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAColorBlendMode.cs.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAColorBlendMode.cs.meta
new file mode 100644
index 00000000..e5e324de
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAColorBlendMode.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 407e6426373c5fe41a34e806c9a303c9
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAColorBlender.cs b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAColorBlender.cs
new file mode 100644
index 00000000..2267b586
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAColorBlender.cs
@@ -0,0 +1,21 @@
+using UnityEngine;
+using DA_Assets.Extensions;
+
+namespace DA_Assets.DAG
+{
+ public class DAColorBlender
+ {
+ public static Color Blend(Color c1, Color c2, DAColorBlendMode mode, float intensity)
+ {
+ switch (mode)
+ {
+ case DAColorBlendMode.Difference:
+ return c1.Difference(c2, intensity);
+ case DAColorBlendMode.Overlay:
+ return c1.Overlay(c2, intensity);
+ default:
+ return c1.Multiply(c2, intensity);
+ }
+ }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAColorBlender.cs.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAColorBlender.cs.meta
new file mode 100644
index 00000000..6c353e19
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAColorBlender.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: e149b3160b291ac48a1c9e3c7915e597
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAGradient.cs b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAGradient.cs
new file mode 100644
index 00000000..f6471a8e
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAGradient.cs
@@ -0,0 +1,290 @@
+using DA_Assets.DAI;
+using DA_Assets.Extensions;
+using System.Collections.Generic;
+using System.Linq;
+using UnityEngine;
+using UnityEngine.UI;
+
+namespace DA_Assets.DAG
+{
+ [AddComponentMenu("UI/Effects/D.A. Gradient")]
+ public class DAGradient : BaseMeshEffect
+ {
+ private RectTransform rectTransform;
+
+ protected override void Awake()
+ {
+ base.Awake();
+ rectTransform = GetComponent();
+ }
+
+#if UNITY_EDITOR
+ protected override void OnValidate()
+ {
+ base.OnValidate();
+ rectTransform = GetComponent();
+ }
+#endif
+
+ [SerializeField] DAColorBlendMode blendMode = DAColorBlendMode.Overlay;
+ [SerializeProperty(nameof(blendMode))]
+ public DAColorBlendMode BlendMode
+ {
+ get => blendMode;
+ set
+ {
+ blendMode = value;
+ graphic?.SetVerticesDirty();
+ }
+ }
+
+ [SerializeField, Range(0, 1)] float intensity = 1f;
+ [SerializeProperty(nameof(intensity))]
+ public float Intensity
+ {
+ get => intensity;
+ set
+ {
+ intensity = Mathf.Clamp01(value);
+ graphic?.SetVerticesDirty();
+ }
+ }
+
+ [SerializeField, Range(0, 360)] float angle = 0f;
+ [SerializeProperty(nameof(angle))]
+ public float Angle
+ {
+ get => angle;
+ set
+ {
+ angle = value.NormalizeAngle360();
+ graphic?.SetVerticesDirty();
+ }
+ }
+
+ [SerializeField] Gradient gradient = new Gradient();
+ [SerializeProperty(nameof(gradient))]
+ public Gradient Gradient
+ {
+ get => gradient;
+ set
+ {
+ gradient = value;
+ graphic?.SetVerticesDirty();
+ }
+ }
+
+ public override void ModifyMesh(VertexHelper vertexHelper)
+ {
+ if (enabled == false)
+ return;
+
+ if (vertexHelper == null)
+ return;
+
+ UIVertex uiVertex = new UIVertex();
+
+ Vector2 rectSize = rectTransform.rect.size;
+ Vector2 rectCenter = rectTransform.rect.center;
+
+ AdjustGradientPart(vertexHelper);
+
+ for (int i = 0; i < vertexHelper.currentVertCount; i++)
+ {
+ // Populates uiVertex with data from the current vertex.
+ vertexHelper.PopulateUIVertex(ref uiVertex, i);
+
+ // Converts the angle from degrees to radians and calculates a scale factor.
+ float a = Mathf.Deg2Rad * angle;
+ float scale = Mathf.Abs(Mathf.Sin(a)) + Mathf.Abs(Mathf.Cos(a));
+ // Calculates the relative position of the vertex within the RectTransform.
+ float x = (uiVertex.position.x - rectCenter.x) / rectSize.x;
+ float y = (uiVertex.position.y - rectCenter.y) / rectSize.y;
+
+ Vector2 relativePosition = new Vector2(x, y);
+ // Rotates the position based on the specified angle.
+ Vector2 rotatedPosition = relativePosition.Rotate(angle);
+ // Scales the position to adjust for the angle's effect on perceived size.
+ Vector2 scaledPosition = rotatedPosition / scale;
+ // Centers the position within a 0 to 1 range.
+ Vector2 centeredPosition = new Vector2(0.5f, 0.5f);
+ // Calculates the final position within the gradient.
+ Vector2 gradientPosition = scaledPosition + centeredPosition;
+
+ float yPos = gradientPosition.y;
+
+ if (!float.IsNaN(yPos) && !float.IsInfinity(yPos))
+ {
+ // Evaluates the color from the gradient based on the Y position.
+ Color gradientColor = gradient.Evaluate(gradientPosition.y);
+ // Blends the original vertex color with the calculated gradient color.
+ uiVertex.color = DAColorBlender.Blend(uiVertex.color, gradientColor, blendMode, intensity);
+ }
+
+ // Applies the modified color back to the vertex.
+ vertexHelper.SetUIVertex(uiVertex, i);
+ }
+ }
+
+ // Adjusts the gradient scale and positioning.
+ private void AdjustGradientPart(VertexHelper vertexHelper)
+ {
+ List originalVertices = new List();
+ // Extracts vertices from the mesh.
+ vertexHelper.GetUIVertexStream(originalVertices);
+ // Clears the current vertex data to prepare for modifications.
+ vertexHelper.Clear();
+
+ List modifiedVertices = new List();
+ // Calculates the direction for the gradient based on the angle, adjusted for the RectTransform's size.
+ Vector2 direction = Vector2.up.Rotate(-angle);
+ direction.Scale(Vector2.one / rectTransform.rect.size);
+ // Calculates a perpendicular direction to the gradient direction.
+ Vector2 perpendicularDirection = direction.Rotate(90);
+
+ // Processes each unique alpha and color key position in the gradient.
+ gradient.alphaKeys
+ .Select(alphaKey => alphaKey.time)
+ .Union(gradient.colorKeys.Select(colorKey => colorKey.time))
+ .ToList()
+ .ForEach(pos =>
+ {
+ modifiedVertices.Clear();
+ // Interpolates a slice position for the current key position.
+ Vector2 p = InterpolateSlice(pos);
+
+ // For each group of three vertices (forming a triangle), adjusts their positions.
+ Enumerable.Range(0, originalVertices.Count / 3)
+ .ToList()
+ .ForEach(i =>
+ GetVertices(originalVertices, i * 3, modifiedVertices, perpendicularDirection, p));
+
+ originalVertices.Clear();
+ originalVertices.AddRange(modifiedVertices);
+ });
+
+ // Reconstructs the mesh with the modified vertices.
+ vertexHelper.AddUIVertexTriangleStream(originalVertices);
+ }
+
+ // Calculates the position for a gradient slice based on an interpolation factor.
+ private Vector2 InterpolateSlice(float interpolationFactor)
+ {
+ Vector2 rectSize = rectTransform.rect.size;
+
+ // Calculates a direction for the slice based on the angle and adjusts for the RectTransform's size.
+ Vector2 rotatedDirection = Vector2.up.Rotate(-angle);
+ rotatedDirection.Scale(Vector2.one / rectSize);
+
+ // Determines the starting and ending multipliers for the slice based on the angle.
+ Vector2 sliceStartMultiplier = angle % 180 < 90 ? Vector2.down + Vector2.left : Vector2.up + Vector2.left;
+ Vector2 sliceEndMultiplier = angle % 180 < 90 ? Vector2.up + Vector2.right : Vector2.down + Vector2.right;
+
+ // Projects the start and end points of the slice within the RectTransform.
+ Vector3 sliceStartPoint = Vector3.Project(rectSize * sliceStartMultiplier * 0.5f, rotatedDirection);
+ Vector3 sliceEndPoint = Vector3.Project(rectSize * sliceEndMultiplier * 0.5f, rotatedDirection);
+
+ // Interpolates between the start and end points based on the factor, adjusting for the center of the RectTransform.
+ Vector2 result = Vector2.Lerp(angle % 360 >= 180 ? sliceEndPoint : sliceStartPoint, angle % 360 >= 180 ? sliceStartPoint : sliceEndPoint, interpolationFactor) + rectTransform.rect.center;
+ return result;
+ }
+
+ // Adjusts vertices of a triangle (defined by a start index) for gradient application based on a reference direction and point.
+ private void GetVertices(List triangleVertices, int startIndex, List outputVertices, Vector2 direction, Vector2 referencePoint)
+ {
+ // Deconstructs the list of triangle vertices into individual vertices A, B, and C.
+ var vertices = (
+ A: triangleVertices[startIndex],
+ B: triangleVertices[startIndex + 1],
+ C: triangleVertices[startIndex + 2]
+ );
+
+ // Calculates the intersection factors for each edge of the triangle relative to the gradient direction and reference point.
+ Vector3 intersectionFactors = new Vector3(
+ vertices.A.position.CalculateIntersectionFactor(vertices.B.position, referencePoint, direction),
+ vertices.B.position.CalculateIntersectionFactor(vertices.C.position, referencePoint, direction),
+ vertices.C.position.CalculateIntersectionFactor(vertices.A.position, referencePoint, direction)
+ );
+
+ // Checks if the intersection factor for edge AB falls within the valid range (0 to 1, inclusive).
+ if (intersectionFactors.x.IsBetween())
+ {
+ // Creates a new vertex between A and B based on the intersection factor.
+ UIVertex newVertexAB = vertices.A.Lerp(vertices.B, intersectionFactors.x);
+ // Further checks if the intersection factor for edge BC is also within the valid range.
+ if (intersectionFactors.y.IsBetween())
+ {
+ // Creates a new vertex between B and C.
+ UIVertex newVertexBC = vertices.B.Lerp(vertices.C, intersectionFactors.y);
+ // Adds vertices to 'outputVertices' to form new triangles, incorporating the new vertices to maintain mesh integrity.
+ outputVertices.AddRange(new[]
+ {
+ vertices.A,
+ newVertexAB,
+ vertices.C,
+ newVertexAB,
+ newVertexBC,
+ vertices.C,
+ newVertexAB,
+ vertices.B,
+ newVertexBC
+ });
+ }
+ else
+ {
+ // If only AB intersects, creates a new vertex between C and A.
+ UIVertex newVertexCA = vertices.C.Lerp(vertices.A, intersectionFactors.z);
+ // Adjusts the triangle(s) to accommodate the new vertices for gradient effect.
+ outputVertices.AddRange(new[]
+ {
+ vertices.C,
+ newVertexCA,
+ vertices.B,
+ newVertexCA,
+ newVertexAB,
+ vertices.B,
+ newVertexCA,
+ vertices.A,
+ newVertexAB
+ });
+ }
+ }
+ // If the edge AB doesn't intersect but BC does.
+ else if (intersectionFactors.y.IsBetween())
+ {
+ // Creates new vertices for the intersecting edges BC and CA.
+ UIVertex newVertexBC = vertices.B.Lerp(vertices.C, intersectionFactors.y);
+ UIVertex newVertexCA = vertices.C.Lerp(vertices.A, intersectionFactors.z);
+
+ // Reconfigures the triangle(s) based on the new vertices.
+ outputVertices.AddRange(new[]
+ {
+ vertices.B,
+ newVertexBC,
+ vertices.A,
+ newVertexBC,
+ newVertexCA,
+ vertices.A,
+ newVertexBC,
+ vertices.C,
+ newVertexCA
+ });
+ }
+ // If no intersections occur, adds the original triangle vertices to 'outputVertices'.
+ else
+ {
+ outputVertices.AddRange(new[]
+ {
+ vertices.A,
+ vertices.B,
+ vertices.C
+ });
+ }
+ }
+ }
+
+ internal static class DAGradientExtensions
+ {
+ internal static bool IsBetween(this float intersectionFactor) => intersectionFactor <= 1 && intersectionFactor >= 0;
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAGradient.cs.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAGradient.cs.meta
new file mode 100644
index 00000000..82db09f2
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAGradient/Scripts/DAGradient.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: a449e8c2392630345a61b822d5511db1
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {fileID: 2800000, guid: ee432816e0eb4084cb0d660c935709ae, type: 3}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector.meta
new file mode 100644
index 00000000..1976e83c
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 42ff96b3517e6a94fa64b94773ac7ea4
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources.meta
new file mode 100644
index 00000000..c7e97258
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 99ebd4d729ab1b74b91399808b4b1860
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources/BlackInspector.asset b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources/BlackInspector.asset
new file mode 100644
index 00000000..42073d06
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources/BlackInspector.asset
@@ -0,0 +1,3145 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 1205892b9b42ffd4bb53381356b30589, type: 3}
+ m_Name: BlackInspector
+ m_EditorClassIdentifier:
+ _inspector:
+ _coloredStyle:
+ Label12px:
+ m_Name: Label12px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 18
+ m_StretchWidth: 1
+ m_StretchHeight: 1
+ RedLabel10px:
+ m_Name: RedLabel10px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 0.15294118, b: 0.15294118, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 0.15294118, b: 0.15294118, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 2
+ m_Bottom: 2
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 10
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 1
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 1
+ BlueLabel10px:
+ m_Name: BlueLabel10px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0.047058824, g: 0.54901963, b: 0.9137255, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0.2584905, g: 0.68681574, b: 1, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 2
+ m_Bottom: 2
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 10
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ Label10px:
+ m_Name: Label10px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 2
+ m_Bottom: 2
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 10
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ CheckBoxLabel:
+ m_Name: CheckBoxLabel
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 7
+ m_Right: 7
+ m_Top: 7
+ m_Bottom: 7
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 15
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 7}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ LinkLabel10px:
+ m_Name: LinkLabel10px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0.047058824, g: 0.54901963, b: 0.9137255, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 2
+ m_Bottom: 2
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 10
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ BigFieldLabel12px:
+ m_Name: BigFieldLabel12px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 2
+ m_Bottom: 2
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 5}
+ m_FixedWidth: 100
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ LabelCentered12px:
+ m_Name: LabelCentered12px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 2
+ m_Bottom: 2
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ OutlineButton:
+ m_Name: OutlineButton
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 5
+ m_Right: 5
+ m_Top: 5
+ m_Bottom: 5
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 4
+ m_Bottom: 4
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 30
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ SquareButton30x30:
+ m_Name: SquareButton30x30
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 1
+ m_Right: 1
+ m_Top: 1
+ m_Bottom: 1
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 4
+ m_Right: 4
+ m_Top: 4
+ m_Bottom: 4
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 1
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 30
+ m_FixedHeight: 30
+ m_StretchWidth: 0
+ m_StretchHeight: 0
+ TabButton:
+ m_Name: TabButton
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 5
+ m_Right: 5
+ m_Top: 5
+ m_Bottom: 5
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 11
+ m_Right: 0
+ m_Top: 4
+ m_Bottom: 4
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 30
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ LinkButton:
+ m_Name: LinkButton
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0.047058824, g: 0.54901963, b: 0.9137255, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 10
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 0
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 60
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HamburgerButton:
+ m_Name: HamburgerButton
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 15
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 7}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HamburgerImageSubButton:
+ m_Name: HabmurgerImageSubButton
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 2
+ m_Bottom: 2
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 2
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 20
+ m_FixedHeight: 20
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HamburgerTextSubButton:
+ m_Name: HabmurgerTextSubButton
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 2
+ m_Bottom: 2
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 5
+ m_Right: 5
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 20
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HamburgerExpandButton:
+ m_Name: HamburgerExpandButton
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 3
+ m_Right: 0
+ m_Top: 1
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 28
+ m_FixedHeight: 28
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HamburgerButtonBg:
+ m_Name:
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ Group6Buttons:
+ m_Name: Group6Buttons
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 205
+ m_FixedHeight: 0
+ m_StretchWidth: 0
+ m_StretchHeight: 0
+ Group5Buttons:
+ m_Name: Group5Buttons
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 169
+ m_FixedHeight: 0
+ m_StretchWidth: 0
+ m_StretchHeight: 0
+ TabSelector:
+ m_Name: TabSelector
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ Background:
+ m_Name: Background
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 14
+ m_Top: 11
+ m_Bottom: 11
+ m_Overflow:
+ m_Left: 18
+ m_Right: 5
+ m_Top: 5
+ m_Bottom: 7
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ WindowRootBg:
+ m_Name: WindowRootBg
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: -2000
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ DAInspectorBackground:
+ m_Name: DAInspectorBackground
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 14
+ m_Top: 11
+ m_Bottom: 11
+ m_Overflow:
+ m_Left: 18
+ m_Right: 5
+ m_Top: 5
+ m_Bottom: 1000
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ DiffCheckerBackground:
+ m_Name: DiffCheckerBackground
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 15
+ m_Right: 15
+ m_Top: 0
+ m_Bottom: 15
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ DiffCheckerRightPanel:
+ m_Name:
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ DiffCheckerToImportPanel:
+ m_Name: DiffCheckerToImportPanel
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ DiffCheckerToRemovePanel:
+ m_Name: DiffCheckerToRemovePanel
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ BoxPanel:
+ m_Name: BoxPanel
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 10
+ m_Right: 10
+ m_Top: 10
+ m_Bottom: 10
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 10, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 1
+ HambugerButtonBg:
+ m_Name: HambugerButtonBg
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 1
+ m_Bottom: 1
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 1
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 30
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HamburgerTabsBg:
+ m_Name: HamburgerTabsBg
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ TextField:
+ m_Name: TextField
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 2
+ m_Bottom: 2
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 7
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 20
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ ActiveToggle:
+ m_Name: ObjectField
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 2
+ m_Bottom: 2
+ m_Margin:
+ m_Left: 111
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 200
+ m_FixedHeight: 20
+ m_StretchWidth: 0
+ m_StretchHeight: 0
+ ObjectField:
+ m_Name: ObjectField
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 2
+ m_Bottom: 2
+ m_Margin:
+ m_Left: 111
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 200
+ m_FixedHeight: 20
+ m_StretchWidth: 0
+ m_StretchHeight: 0
+ BigTextField:
+ m_Name: BigTextField
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 1
+ m_Bottom: 1
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 20
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 10, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 30
+ m_StretchWidth: 0
+ m_StretchHeight: 0
+ BigDropdown:
+ m_Name: BigTextField
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 1
+ m_Bottom: 1
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 20
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 40, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 30
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ CheckBoxField:
+ m_Name: CheckBoxField
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 7
+ m_Right: 7
+ m_Top: 7
+ m_Bottom: 7
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ ProgressBar:
+ m_Name: ProgressBar
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 16
+ m_Right: 16
+ m_Top: 16
+ m_Bottom: -16
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ ProgressBarBg:
+ m_Name: ProgressBarBg
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 7
+ m_Right: 7
+ m_Top: 7
+ m_Bottom: 7
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 7
+ m_Bottom: 7
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ TabBg1:
+ m_Name: TabBg1
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1000
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ TabBg2:
+ m_Name: TabBg2
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 15
+ m_Right: 15
+ m_Top: 15
+ m_Bottom: 15
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1000
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HorizontalSeparator:
+ m_Name: HorizontalSeparator
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 1
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ ImgStar:
+ m_Name: ImgStar
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 2
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 18
+ m_FixedHeight: 18
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ None:
+ m_Name: None
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ Logo:
+ m_Name: Logo
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 7
+ m_Right: 7
+ m_Top: 7
+ m_Bottom: 7
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 7
+ m_Bottom: 7
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ SectionHeader:
+ m_Name: SectionHeader
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds:
+ - {fileID: 0}
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 7
+ m_Right: 7
+ m_Top: 7
+ m_Bottom: 7
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 18
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 30
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ _cachedTextures:
+ - Key: box_no_frame_RGBA(0.000, 0.000, 0.000, 1.000)_RGBA(0.094, 0.094, 0.094,
+ 1.000)
+ Texture: {fileID: 0}
+ - Key: box_active_no_frame_RGBA(0.000, 0.000, 0.000, 1.000)_RGBA(0.094, 0.094,
+ 0.094, 1.000)
+ Texture: {fileID: 0}
+ - Key: box_frame_RGBA(0.000, 0.000, 0.000, 1.000)_RGBA(0.094, 0.094, 0.094, 1.000)
+ Texture: {fileID: 0}
+ - Key: box_tab_button_RGBA(0.000, 0.000, 0.000, 1.000)_RGBA(0.094, 0.094, 0.094,
+ 1.000)
+ Texture: {fileID: 0}
+ - Key: box_blue_RGBA(0.000, 0.000, 0.000, 1.000)_RGBA(0.094, 0.094, 0.094, 1.000)
+ Texture: {fileID: 0}
+ - Key: box_black_RGBA(0.000, 0.000, 0.000, 1.000)_RGBA(0.094, 0.094, 0.094, 1.000)
+ Texture: {fileID: 0}
+ _data: {fileID: 11400000, guid: 0a0723b0ae7bbae4ba0308548c0e5169, type: 2}
+ _colorScheme:
+ BackgroundColor: {r: 0, g: 0, b: 0, a: 1}
+ OutlineColor: {r: 0.09411765, g: 0.09411765, b: 0.09411765, a: 1}
+ UnityGuiColor: {r: 0.15686275, g: 0.15686275, b: 0.15686275, a: 1}
+ CheckBoxColor: {r: 0.39215687, g: 0.39215687, b: 0.39215687, a: 1}
+ SelectionColor: {r: 0.047058824, g: 0.54901963, b: 0.9137255, a: 1}
+ TextColor: {r: 1, g: 1, b: 1, a: 1}
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources/BlackInspector.asset.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources/BlackInspector.asset.meta
new file mode 100644
index 00000000..33537013
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources/BlackInspector.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: e3e5bd22335e3af4ab74e088b30f3568
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources/InspectorData.asset b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources/InspectorData.asset
new file mode 100644
index 00000000..7e8bf410
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources/InspectorData.asset
@@ -0,0 +1,3066 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 652664ac68c64aa41b0cb574785d0e42, type: 3}
+ m_Name: InspectorData
+ m_EditorClassIdentifier:
+ resources:
+ backgrounds:
+ - {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ - {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ - {fileID: 2800000, guid: 0de7d4f08a6ada44cb8f55ec6e85e9f9, type: 3}
+ - {fileID: 2800000, guid: a86998b73e5177248a089ef62eeb7ee4, type: 3}
+ - {fileID: 2800000, guid: 38481486c770d9e4098e7187b94e07fb, type: 3}
+ - {fileID: 2800000, guid: 961d622499be69849ac12d9c0aeb4016, type: 3}
+ fcuLogo: {fileID: 2800000, guid: f8b2c813170af09459fb79312a19a0cc, type: 3}
+ daGradientLogo: {fileID: 2800000, guid: d03cbb733b9202a40980196cb50604b7, type: 3}
+ daButtonLogo: {fileID: 2800000, guid: 6135bab8d3d57a642b2158eb4fb11427, type: 3}
+ dalLogo: {fileID: 2800000, guid: fc3143b139660bf4abea1d38742bb994, type: 3}
+ imgViewRecent: {fileID: 2800000, guid: c5969960e1e4115419e4637b3150f937, type: 3}
+ imgExpandClosed: {fileID: 2800000, guid: a19262a26536c554680b25a0ce338e33, type: 3}
+ imgExpandOpened: {fileID: 2800000, guid: e4d932c454c538948b9e4692d56bdbc2, type: 3}
+ iconExpandWindow: {fileID: 2800000, guid: 17d4ca1991e396d4abf7d125d68b1a99, type: 3}
+ iconMinimizeWindow: {fileID: 2800000, guid: 17d4ca1991e396d4abf7d125d68b1a99, type: 3}
+ iconStop: {fileID: 2800000, guid: 25e086bd7f666c24c8df55167c4c6234, type: 3}
+ iconDownload: {fileID: 2800000, guid: 7293127380304744d89df74cdade597b, type: 3}
+ iconImport: {fileID: 2800000, guid: 9d4a17359d253ea4ea2cfde81d124e20, type: 3}
+ cornerIcons:
+ - {fileID: 2800000, guid: 81946ec875d4d354cbd68a4a1d935e82, type: 3}
+ - {fileID: 2800000, guid: 2cd8ce091fb8dce4a85d1578ef706c55, type: 3}
+ - {fileID: 2800000, guid: d92a99038cd091b44958b6f580de7ef1, type: 3}
+ - {fileID: 2800000, guid: f18f6f2b2bfbf1146a7b1f9b2ffb0066, type: 3}
+ - {fileID: 2800000, guid: 45e00e0ff17e8d74e83bf51f3556c7c5, type: 3}
+ iconSettings: {fileID: 2800000, guid: 84c1e5d966ac4a84d97fb7015b30c202, type: 3}
+ iconOpen: {fileID: 2800000, guid: 1322eb06cce7348419199dd60e9f1e08, type: 3}
+ iconAuth: {fileID: 2800000, guid: 0ac0fed5dd575044897e22ce7321e61f, type: 3}
+ imgComponent: {fileID: 2800000, guid: 5ba475abc1549864cb5ac369605079c8, type: 3}
+ imgStar: {fileID: 2800000, guid: 927c82ee9d3e8484093b5f8a7219f179, type: 3}
+ fcuIcon: {fileID: 0}
+ clickIcon: {fileID: 2800000, guid: 5c4670904faa5254cb3b35769ec70b1e, type: 3}
+ hoverIcon: {fileID: 2800000, guid: fbe6eb7a4f46d5f4c938393a61959157, type: 3}
+ loopIcon: {fileID: 2800000, guid: d58e0bc446ad770499a2f6af7fe04d5d, type: 3}
+ searchIcon: {fileID: 2800000, guid: 9c519ff7a76c605449d54377aa8c940f, type: 3}
+ _basicStyle:
+ Label12px:
+ m_Name: Label12px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 18
+ m_StretchWidth: 1
+ m_StretchHeight: 1
+ RedLabel10px:
+ m_Name: RedLabel10px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 0.15294118, b: 0.15294118, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 0.15294118, b: 0.15294118, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 2
+ m_Bottom: 2
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 10
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 1
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 1
+ BlueLabel10px:
+ m_Name: BlueLabel10px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0.047058824, g: 0.54901963, b: 0.9137255, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0.2584905, g: 0.68681574, b: 1, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 2
+ m_Bottom: 2
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 10
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 1
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 1
+ Label10px:
+ m_Name: Label10px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 2
+ m_Bottom: 2
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 10
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ CheckBoxLabel:
+ m_Name: CheckBoxLabel
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 7
+ m_Right: 7
+ m_Top: 7
+ m_Bottom: 7
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 15
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 7}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ LinkLabel10px:
+ m_Name: LinkLabel10px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0.047058824, g: 0.54901963, b: 0.9137255, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 2
+ m_Bottom: 2
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 10
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ BigFieldLabel12px:
+ m_Name: BigFieldLabel12px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 2
+ m_Bottom: 2
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 5}
+ m_FixedWidth: 100
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ LabelCentered12px:
+ m_Name: LabelCentered12px
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 2
+ m_Bottom: 2
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ OutlineButton:
+ m_Name: OutlineButton
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 0de7d4f08a6ada44cb8f55ec6e85e9f9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 5
+ m_Right: 5
+ m_Top: 5
+ m_Bottom: 5
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 4
+ m_Bottom: 4
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 30
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ SquareButton30x30:
+ m_Name: SquareButton30x30
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 0de7d4f08a6ada44cb8f55ec6e85e9f9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 1
+ m_Right: 1
+ m_Top: 1
+ m_Bottom: 1
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 4
+ m_Right: 4
+ m_Top: 4
+ m_Bottom: 4
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 1
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 30
+ m_FixedHeight: 30
+ m_StretchWidth: 0
+ m_StretchHeight: 0
+ TabButton:
+ m_Name: TabButton
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: a86998b73e5177248a089ef62eeb7ee4, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 5
+ m_Right: 5
+ m_Top: 5
+ m_Bottom: 5
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 11
+ m_Right: 0
+ m_Top: 4
+ m_Bottom: 4
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 30
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ LinkButton:
+ m_Name: LinkButton
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0.047058824, g: 0.54901963, b: 0.9137255, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 10
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 0
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 60
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HamburgerButton:
+ m_Name: HamburgerButton
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 15
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 7}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HamburgerImageSubButton:
+ m_Name: HabmurgerImageSubButton
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 0de7d4f08a6ada44cb8f55ec6e85e9f9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 2
+ m_Bottom: 2
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 2
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 20
+ m_FixedHeight: 20
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HamburgerTextSubButton:
+ m_Name: HabmurgerTextSubButton
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 0de7d4f08a6ada44cb8f55ec6e85e9f9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 2
+ m_Bottom: 2
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 5
+ m_Right: 5
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 20
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HamburgerExpandButton:
+ m_Name: HamburgerExpandButton
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 3
+ m_Right: 0
+ m_Top: 1
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 28
+ m_FixedHeight: 28
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HamburgerButtonBg:
+ m_Name:
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ Group6Buttons:
+ m_Name: Group6Buttons
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 205
+ m_FixedHeight: 0
+ m_StretchWidth: 0
+ m_StretchHeight: 0
+ Group5Buttons:
+ m_Name: Group5Buttons
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 169
+ m_FixedHeight: 0
+ m_StretchWidth: 0
+ m_StretchHeight: 0
+ TabSelector:
+ m_Name: TabSelector
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 38481486c770d9e4098e7187b94e07fb, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ Background:
+ m_Name: Background
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 14
+ m_Top: 11
+ m_Bottom: 11
+ m_Overflow:
+ m_Left: 18
+ m_Right: 5
+ m_Top: 5
+ m_Bottom: 7
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ WindowRootBg:
+ m_Name: WindowRootBg
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: -2000
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ DAInspectorBackground:
+ m_Name: DAInspectorBackground
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 14
+ m_Top: 11
+ m_Bottom: 11
+ m_Overflow:
+ m_Left: 18
+ m_Right: 5
+ m_Top: 5
+ m_Bottom: 1000
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ DiffCheckerBackground:
+ m_Name: DiffCheckerBackground
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 15
+ m_Right: 15
+ m_Top: 0
+ m_Bottom: 15
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ DiffCheckerRightPanel:
+ m_Name:
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ DiffCheckerToImportPanel:
+ m_Name: DiffCheckerToImportPanel
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ DiffCheckerToRemovePanel:
+ m_Name: DiffCheckerToRemovePanel
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ BoxPanel:
+ m_Name: BoxPanel
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 10
+ m_Right: 10
+ m_Top: 10
+ m_Bottom: 10
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 10, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 1
+ HambugerButtonBg:
+ m_Name: HambugerButtonBg
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 0de7d4f08a6ada44cb8f55ec6e85e9f9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 1
+ m_Bottom: 1
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 1
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 30
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HamburgerTabsBg:
+ m_Name: HamburgerTabsBg
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ TextField:
+ m_Name: TextField
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 0de7d4f08a6ada44cb8f55ec6e85e9f9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 2
+ m_Bottom: 2
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 7
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 20
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ ActiveToggle:
+ m_Name: ObjectField
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 2
+ m_Bottom: 2
+ m_Margin:
+ m_Left: 111
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 200
+ m_FixedHeight: 20
+ m_StretchWidth: 0
+ m_StretchHeight: 0
+ ObjectField:
+ m_Name: ObjectField
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 0de7d4f08a6ada44cb8f55ec6e85e9f9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 2
+ m_Bottom: 2
+ m_Margin:
+ m_Left: 111
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 200
+ m_FixedHeight: 20
+ m_StretchWidth: 0
+ m_StretchHeight: 0
+ BigTextField:
+ m_Name: BigTextField
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 0de7d4f08a6ada44cb8f55ec6e85e9f9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 1
+ m_Bottom: 1
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 20
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 10, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 30
+ m_StretchWidth: 0
+ m_StretchHeight: 0
+ BigDropdown:
+ m_Name: BigTextField
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 0de7d4f08a6ada44cb8f55ec6e85e9f9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 2
+ m_Right: 2
+ m_Top: 1
+ m_Bottom: 1
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 20
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 3
+ m_ContentOffset: {x: 40, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 30
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ CheckBoxField:
+ m_Name: CheckBoxField
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 7
+ m_Right: 7
+ m_Top: 7
+ m_Bottom: 7
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ ProgressBar:
+ m_Name: ProgressBar
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 38481486c770d9e4098e7187b94e07fb, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 16
+ m_Right: 16
+ m_Top: 16
+ m_Bottom: -16
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ ProgressBarBg:
+ m_Name: ProgressBarBg
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 7
+ m_Right: 7
+ m_Top: 7
+ m_Bottom: 7
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 7
+ m_Bottom: 7
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ TabBg1:
+ m_Name: TabBg1
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1000
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ TabBg2:
+ m_Name: TabBg2
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 15
+ m_Right: 15
+ m_Top: 15
+ m_Bottom: 15
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1000
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ HorizontalSeparator:
+ m_Name: HorizontalSeparator
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 961d622499be69849ac12d9c0aeb4016, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 1
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ ImgStar:
+ m_Name: ImgStar
+ m_Normal:
+ m_Background: {fileID: 2800000, guid: 2c4cbc58ab405e249915c542e4b7f58d, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 2
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 18
+ m_FixedHeight: 18
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ None:
+ m_Name: None
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 0
+ m_FontStyle: 0
+ m_Alignment: 0
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ Logo:
+ m_Name: Logo
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 2800000, guid: de641d9d6b90cdc44858895f5386f6b9, type: 3}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 7
+ m_Right: 7
+ m_Top: 7
+ m_Bottom: 7
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 7
+ m_Bottom: 7
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 1
+ m_Font: {fileID: 0}
+ m_FontSize: 12
+ m_FontStyle: 0
+ m_Alignment: 4
+ m_WordWrap: 0
+ m_RichText: 1
+ m_TextClipping: 0
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 0
+ m_StretchWidth: 1
+ m_StretchHeight: 0
+ SectionHeader:
+ m_Name: SectionHeader
+ m_Normal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Hover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Active:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 1, g: 1, b: 1, a: 1}
+ m_Focused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnNormal:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnHover:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnActive:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_OnFocused:
+ m_Background: {fileID: 0}
+ m_ScaledBackgrounds: []
+ m_TextColor: {r: 0, g: 0, b: 0, a: 1}
+ m_Border:
+ m_Left: 7
+ m_Right: 7
+ m_Top: 7
+ m_Bottom: 7
+ m_Margin:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Overflow:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_Font: {fileID: 0}
+ m_FontSize: 18
+ m_FontStyle: 0
+ m_Alignment: 3
+ m_WordWrap: 0
+ m_RichText: 0
+ m_TextClipping: 1
+ m_ImagePosition: 0
+ m_ContentOffset: {x: 0, y: 0}
+ m_FixedWidth: 0
+ m_FixedHeight: 30
+ m_StretchWidth: 1
+ m_StretchHeight: 0
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources/InspectorData.asset.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources/InspectorData.asset.meta
new file mode 100644
index 00000000..f0a8b04e
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Resources/InspectorData.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 0a0723b0ae7bbae4ba0308548c0e5169
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts.meta
new file mode 100644
index 00000000..26c4c625
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 54cbf87d53139a748adcc72d71a76feb
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/DARunner.cs b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/DARunner.cs
new file mode 100644
index 00000000..887ca791
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/DARunner.cs
@@ -0,0 +1,126 @@
+using System;
+using System.Collections.Concurrent;
+using System.Diagnostics;
+using System.Threading;
+using UnityEditor;
+using Debug = UnityEngine.Debug;
+
+namespace DA_Assets.DAI
+{
+#if UNITY_EDITOR
+ [InitializeOnLoad]
+ public class DARunner
+ {
+ ///
+ /// Thread-safe queue for actions to be executed on the main thread.
+ ///
+ private static ConcurrentQueue _executionQueue = new ConcurrentQueue();
+
+ ///
+ /// Time since the script was reloaded.
+ ///
+ public static double timeSinceScriptReload => _stopwatch.Elapsed.TotalSeconds;
+
+ ///
+ /// Delegate for update functions.
+ ///
+ public static Action update;
+
+ ///
+ /// Delta time between updates.
+ ///
+ public static float deltaTime => (float)_deltaTime;
+ private static double _deltaTime;
+
+ private static double _previousTime;
+ private static Stopwatch _stopwatch;
+
+ private static int _frequencyMs = 15; // Update frequency in milliseconds.
+
+ private static Thread _thread;
+ private static CancellationTokenSource _cancellationTokenSource;
+
+ ///
+ /// Static constructor to initialize the DARunner.
+ ///
+ static DARunner()
+ {
+ update += () =>
+ {
+ while (_executionQueue.TryDequeue(out var action))
+ {
+ try
+ {
+ action?.Invoke();
+ }
+ catch (Exception ex)
+ {
+ Debug.LogError($"Error executing action on main thread: {ex.Message}");
+ }
+ }
+ };
+
+ _stopwatch = Stopwatch.StartNew();
+ SynchronizationContext context = SynchronizationContext.Current;
+
+ Update(context);
+
+ // Subscribe to assembly reload events to properly terminate the thread.
+ AssemblyReloadEvents.beforeAssemblyReload += OnBeforeAssemblyReload;
+ }
+
+ ///
+ /// Called before assembly reload to terminate the background thread.
+ ///
+ private static void OnBeforeAssemblyReload()
+ {
+ _cancellationTokenSource?.Cancel();
+ _thread?.Join();
+ _thread = null;
+ _cancellationTokenSource = null;
+ }
+
+ ///
+ /// Starts the background thread that posts updates to the main thread's synchronization context.
+ ///
+ /// The synchronization context of the main thread.
+ private static void Update(SynchronizationContext context)
+ {
+ _cancellationTokenSource = new CancellationTokenSource();
+ CancellationToken token = _cancellationTokenSource.Token;
+
+ _thread = new Thread(() =>
+ {
+ try
+ {
+ while (!token.IsCancellationRequested)
+ {
+ double currentTime = _stopwatch.Elapsed.TotalSeconds;
+ _deltaTime = currentTime - _previousTime;
+ _previousTime = currentTime;
+
+ context.Post(_ => update(), null);
+
+ Thread.Sleep(_frequencyMs);
+ }
+ }
+ catch (Exception ex)
+ {
+ Debug.LogError($"Error in background thread: {ex.Message}");
+ }
+ });
+
+ _thread.Start();
+ }
+
+ ///
+ /// Enqueues an action to be executed on the main thread.
+ ///
+ /// The action to execute.
+ public static void ExecuteOnMainThread(Action action)
+ {
+ _executionQueue.Enqueue(action);
+ }
+ }
+#endif
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/DARunner.cs.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/DARunner.cs.meta
new file mode 100644
index 00000000..4df55b66
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/DARunner.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: bf822dab9c6f5304082770e5bdd87c2f
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/HamburgerItem.cs b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/HamburgerItem.cs
new file mode 100644
index 00000000..23538a11
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/HamburgerItem.cs
@@ -0,0 +1,31 @@
+using System;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ [Serializable]
+ public class HamburgerItem
+ {
+ [SerializeField] string id;
+#if UNITY_EDITOR
+ [SerializeField] UnityEditor.AnimatedValues.AnimBool fade;
+#endif
+ [SerializeField] UpdateBool checkBoxValue = new UpdateBool(false, false);
+ [SerializeField] GUIContent guiContent;
+ [SerializeField] Action body;
+ [SerializeField] Action checkBoxValueChanged;
+ [SerializeField] Action onButtonClick;
+ [SerializeField] GUIContent buttonGuiContent;
+
+ public string Id { get => id; set => id = value; }
+#if UNITY_EDITOR
+ public UnityEditor.AnimatedValues.AnimBool Fade { get => fade; set => fade = value; }
+#endif
+ public UpdateBool CheckBoxValue { get => checkBoxValue; set => checkBoxValue = value; }
+ public GUIContent GUIContent { get => guiContent; set => guiContent = value; }
+ public Action Body { get => body; set => body = value; }
+ public Action CheckBoxValueChanged { get => checkBoxValueChanged; set => checkBoxValueChanged = value; }
+ public Action OnButtonClick { get => onButtonClick; set => onButtonClick = value; }
+ public GUIContent ButtonGuiContent { get => buttonGuiContent; set => buttonGuiContent = value; }
+ }
+}
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/HamburgerItem.cs.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/HamburgerItem.cs.meta
new file mode 100644
index 00000000..f8de9f95
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/HamburgerItem.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 40254133d93a7524193a26270d2c5dff
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/MonoBehaviourLinkerRuntime.cs b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/MonoBehaviourLinkerRuntime.cs
new file mode 100644
index 00000000..7a4704a1
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/MonoBehaviourLinkerRuntime.cs
@@ -0,0 +1,120 @@
+using DA_Assets.Extensions;
+using DA_Assets.Tools;
+using System;
+using System.Collections.Generic;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ public class MonoBehaviourLinkerRuntime : LinkerBase where T3 : UnityEngine.Object { }
+
+ public static class MonoBehaviourLinkerExtensions
+ {
+ public static T2 Link(this T3 monoBeh, ref T2 linker) where T3 : UnityEngine.Object where T2 : MonoBehaviourLinkerRuntime
+ {
+ bool needSetDirty = false;
+ bool needInit = false;
+
+ if (linker == null)
+ {
+ needSetDirty = true;
+ needInit = true;
+
+ AttributeValidator.Validate(typeof(SerializableAttribute));
+ linker = (T2)Activator.CreateInstance(typeof(T2));
+ }
+
+ if (linker.MonoBeh == null)
+ {
+ needSetDirty = true;
+ linker.MonoBeh = monoBeh;
+ }
+
+ if (needInit)
+ {
+ linker.OnLink();
+ }
+
+ if (needSetDirty)
+ {
+ linker.SetDirty();
+ }
+
+ return linker;
+ }
+ }
+
+ public abstract class LinkerBase where T3 : UnityEngine.Object
+ {
+ [SerializeField] protected T3 monoBeh;
+ public T3 MonoBeh
+ {
+ get => monoBeh;
+ set => monoBeh = value;
+ }
+
+ public virtual void OnLink() { }
+
+ public void SetDirty()
+ {
+#if UNITY_EDITOR
+ DARunner.ExecuteOnMainThread(() =>
+ {
+ monoBeh.SetDirtyExt();
+ });
+#endif
+ }
+
+ public void SetValue(ref T currentValue, T newValue)
+ {
+ if (!EqualityComparer.Default.Equals(currentValue, newValue))
+ {
+ if (IsTypeNestedFromType(typeof(T3), typeof(ScriptableObject)))
+ {
+ SceneBackuper.MakeActiveSceneDirty();
+ }
+
+ monoBeh.SetDirtyExt();
+ currentValue = newValue;
+ }
+ }
+
+ public static bool IsTypeNestedFromType(Type currentType, Type parentType)
+ {
+ while (currentType != null)
+ {
+ if (currentType == parentType)
+ return true;
+
+ currentType = currentType.BaseType;
+ }
+
+ return false;
+ }
+ }
+
+ public static class AttributeValidator
+ {
+ public static void Validate(params Type[] atts)
+ where T : class
+ {
+ Type type = typeof(T);
+
+ foreach (Type att in atts)
+ {
+ if (!typeof(Attribute).IsAssignableFrom(att))
+ {
+ Debug.LogError($"Type '{att.Name}' is not an Attribute type.");
+ continue;
+ }
+
+ Attribute attribute = Attribute.GetCustomAttribute(type, att);
+
+ if (attribute == null)
+ {
+ Debug.LogError($"Attribute '{att.Name}' is not applied to '{type.Name}'.");
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/MonoBehaviourLinkerRuntime.cs.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/MonoBehaviourLinkerRuntime.cs.meta
new file mode 100644
index 00000000..9bb469a8
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/MonoBehaviourLinkerRuntime.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 26e58ddaec469d748a90f80015f3d095
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/SerializePropertyAttribute.cs b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/SerializePropertyAttribute.cs
new file mode 100644
index 00000000..e628af96
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/SerializePropertyAttribute.cs
@@ -0,0 +1,15 @@
+using System;
+
+namespace DA_Assets.DAI
+{
+ public class SerializePropertyAttribute : Attribute
+ {
+ public SerializePropertyAttribute(string fieldName)
+ {
+ this.fieldName = fieldName;
+ }
+
+ private string fieldName;
+ public string FieldName => fieldName;
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/SerializePropertyAttribute.cs.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/SerializePropertyAttribute.cs.meta
new file mode 100644
index 00000000..a038bfb8
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/SerializePropertyAttribute.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: d5c28f73643561544bc1ffeb95d1a5e8
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/UpdateBool.cs b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/UpdateBool.cs
new file mode 100644
index 00000000..d1d79e9a
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/UpdateBool.cs
@@ -0,0 +1,63 @@
+using System;
+using UnityEngine;
+
+namespace DA_Assets.DAI
+{
+ [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct, AllowMultiple = false)]
+ public abstract class PropertyHeader : PropertyAttribute
+ {
+ public GUIContent HeaderLabel { get; protected set; }
+
+ protected PropertyHeader(GUIContent headerLabel)
+ {
+ HeaderLabel = headerLabel;
+ }
+ }
+
+ [AttributeUsage(AttributeTargets.Property, AllowMultiple = false)]
+ public abstract class CustomInspectorProperty : PropertyAttribute
+ {
+ public ComponentType Type { get; protected set; }
+ public GUIContent Label { get; protected set; }
+ public float MinValue { get; protected set; }
+ public float MaxValue { get; protected set; }
+
+ protected CustomInspectorProperty(ComponentType type, GUIContent label, float minValue = 0, float maxValue = 1)
+ {
+ Type = type;
+ Label = label;
+ MinValue = minValue;
+ MaxValue = maxValue;
+ }
+ }
+
+ public enum ComponentType
+ {
+ Toggle,
+ EnumField,
+ FloatField,
+ Vector4Field,
+ TextField,
+ IntField,
+ Vector2Field,
+ Vector2IntField,
+ ColorField,
+ SliderField
+ }
+
+ [Serializable]
+ public class UpdateBool
+ {
+ [SerializeField] bool _value;
+ [SerializeField] bool _temp;
+
+ public UpdateBool(bool value, bool temp)
+ {
+ _value = value;
+ _temp = temp;
+ }
+
+ public bool Value { get => _value; set => _value = value; }
+ public bool Temp { get => _temp; set => _temp = value; }
+ }
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/UpdateBool.cs.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/UpdateBool.cs.meta
new file mode 100644
index 00000000..324f44b1
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DAInspector/Scripts/UpdateBool.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: b818ea9ca4e968242b9089946222b9f0
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DA_Assets.Shared.asmdef b/Assets/D.A. Assets/DA-Shared/Runtime/DA_Assets.Shared.asmdef
new file mode 100644
index 00000000..a77480c6
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DA_Assets.Shared.asmdef
@@ -0,0 +1,14 @@
+{
+ "name": "DA_Assets.Shared",
+ "rootNamespace": "",
+ "references": [],
+ "includePlatforms": [],
+ "excludePlatforms": [],
+ "allowUnsafeCode": false,
+ "overrideReferences": false,
+ "precompiledReferences": [],
+ "autoReferenced": true,
+ "defineConstraints": [],
+ "versionDefines": [],
+ "noEngineReferences": false
+}
\ No newline at end of file
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/DA_Assets.Shared.asmdef.meta b/Assets/D.A. Assets/DA-Shared/Runtime/DA_Assets.Shared.asmdef.meta
new file mode 100644
index 00000000..9657fe1a
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/DA_Assets.Shared.asmdef.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 1b74e700d4693d342a6732b0ca624858
+AssemblyDefinitionImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/Extensions.meta b/Assets/D.A. Assets/DA-Shared/Runtime/Extensions.meta
new file mode 100644
index 00000000..995203f0
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/Extensions.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: e4a2fbfdf957e534da8a9ccd2de6d2df
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/D.A. Assets/DA-Shared/Runtime/Extensions/AdaptivityExtensions.cs b/Assets/D.A. Assets/DA-Shared/Runtime/Extensions/AdaptivityExtensions.cs
new file mode 100644
index 00000000..6921fe90
--- /dev/null
+++ b/Assets/D.A. Assets/DA-Shared/Runtime/Extensions/AdaptivityExtensions.cs
@@ -0,0 +1,351 @@
+using UnityEngine;
+
+namespace DA_Assets.Extensions
+{
+ public static class AdaptivityExtensions
+ {
+ private static void SetSmartPivot(RectTransform rect, float value, int axis, bool smart, bool parentSpace)
+ {
+ Vector3 cornerBefore = GetRectReferenceCorner(rect, !parentSpace);
+
+ Vector2 rectPivot = rect.pivot;
+ rectPivot[axis] = value;
+ rect.pivot = rectPivot;
+
+ if (smart)
+ {
+ Vector3 cornerAfter = GetRectReferenceCorner(rect, !parentSpace);
+ Vector3 cornerOffset = cornerAfter - cornerBefore;
+ rect.anchoredPosition -= (Vector2)cornerOffset;
+
+ Vector3 pos = rect.transform.position;
+ pos.z -= cornerOffset.z;
+ rect.transform.position = pos;
+ }
+ }
+
+ private static Vector3 GetRectReferenceCorner(RectTransform gui, bool worldSpace)
+ {
+ Vector3[] s_Corners = new Vector3[4];
+ if (worldSpace)
+ {
+ Transform t = gui.transform;
+ gui.GetWorldCorners(s_Corners);
+ if (t.parent)
+ return t.parent.InverseTransformPoint(s_Corners[0]);
+ else
+ return s_Corners[0];
+ }
+ return (Vector3)gui.rect.min + gui.transform.localPosition;
+ }
+
+ private static AnchorMinMax GetAnchor(AnchorType anchorPreset)
+ {
+ AnchorMinMax minMax = new AnchorMinMax();
+ switch (anchorPreset)
+ {
+ case AnchorType.TopLeft:
+ {
+ minMax.Min = new Vector2(0, 1);
+ minMax.Max = new Vector2(0, 1);
+ break;
+ }
+ case AnchorType.TopCenter:
+ {
+ minMax.Min = new Vector2(0.5f, 1);
+ minMax.Max = new Vector2(0.5f, 1);
+ break;
+ }
+ case AnchorType.TopRight:
+ {
+ minMax.Min = new Vector2(1, 1);
+ minMax.Max = new Vector2(1, 1);
+ break;
+ }
+
+ case AnchorType.MiddleLeft:
+ {
+ minMax.Min = new Vector2(0, 0.5f);
+ minMax.Max = new Vector2(0, 0.5f);
+ break;
+ }
+ case AnchorType.MiddleCenter:
+ {
+ minMax.Min = new Vector2(0.5f, 0.5f);
+ minMax.Max = new Vector2(0.5f, 0.5f);
+ break;
+ }
+ case AnchorType.MiddleRight:
+ {
+ minMax.Min = new Vector2(1, 0.5f);
+ minMax.Max = new Vector2(1, 0.5f);
+ break;
+ }
+
+ case AnchorType.BottomLeft:
+ {
+ minMax.Min = new Vector2(0, 0);
+ minMax.Max = new Vector2(0, 0);
+ break;
+ }
+ case AnchorType.BottomCenter:
+ {
+ minMax.Min = new Vector2(0.5f, 0);
+ minMax.Max = new Vector2(0.5f, 0);
+ break;
+ }
+ case AnchorType.BottomRight:
+ {
+ minMax.Min = new Vector2(1, 0);
+ minMax.Max = new Vector2(1, 0);
+ break;
+ }
+
+ case AnchorType.HorStretchTop:
+ {
+ minMax.Min = new Vector2(0, 1);
+ minMax.Max = new Vector2(1, 1);
+ break;
+ }
+ case AnchorType.HorStretchMiddle:
+ {
+ minMax.Min = new Vector2(0, 0.5f);
+ minMax.Max = new Vector2(1, 0.5f);
+ break;
+ }
+ case AnchorType.HorStretchBottom:
+ {
+ minMax.Min = new Vector2(0, 0);
+ minMax.Max = new Vector2(1, 0);
+ break;
+ }
+
+ case AnchorType.VertStretchLeft:
+ {
+ minMax.Min = new Vector2(0, 0);
+ minMax.Max = new Vector2(0, 1);
+ break;
+ }
+ case AnchorType.VertStretchCenter:
+ {
+ minMax.Min = new Vector2(0.5f, 0);
+ minMax.Max = new Vector2(0.5f, 1);
+ break;
+ }
+ case AnchorType.VertStretchRight:
+ {
+ minMax.Min = new Vector2(1, 0);
+ minMax.Max = new Vector2(1, 1);
+ break;
+ }
+
+ case AnchorType.StretchAll:
+ {
+ minMax.Min = new Vector2(0, 0);
+ minMax.Max = new Vector2(1, 1);
+ break;
+ }
+ }
+
+ return minMax;
+ }
+
+ private static Vector2 GetPivot(PivotType preset)
+ {
+ switch (preset)
+ {
+ case PivotType.TopLeft:
+ {
+ return new Vector2(0, 1);
+ }
+ case PivotType.TopCenter:
+ {
+ return new Vector2(0.5f, 1);
+ }
+ case PivotType.TopRight:
+ {
+ return new Vector2(1, 1);
+ }
+ case PivotType.MiddleLeft:
+ {
+ return new Vector2(0, 0.5f);
+ }
+ case PivotType.MiddleCenter:
+ {
+ return new Vector2(0.5f, 0.5f);
+ }
+ case PivotType.MiddleRight:
+ {
+ return new Vector2(1, 0.5f);
+ }
+ case PivotType.BottomLeft:
+ {
+ return new Vector2(0, 0);
+ }
+ case PivotType.BottomCenter:
+ {
+ return new Vector2(0.5f, 0);
+ }
+ case PivotType.BottomRight:
+ {
+ return new Vector2(1, 0);
+ }
+ default:
+ return GetPivot(PivotType.MiddleCenter);
+ }
+ }
+
+ private static void SetSmartAnchor(this RectTransform rect, RectAxis rectAxis, float value, bool isMax)
+ {
+ bool smart = true;
+ int _axis = (int)rectAxis;
+
+ RectTransform parent = null;
+
+ if (rect.transform.parent == null)
+ {
+ smart = false;
+ }
+ else
+ {
+ parent = rect.transform.parent.GetComponent();
+
+ if (parent == null)
+ {
+ smart = false;
+ }
+ }
+
+ float offsetSizePixels = 0;
+ float offsetPositionPixels = 0;
+ if (smart)
+ {
+ float oldValue = isMax ? rect.anchorMax[_axis] : rect.anchorMin[_axis];
+
+ offsetSizePixels = (value - oldValue) * parent.rect.size[_axis];
+
+ float roundingDelta = 0;
+
+ Canvas canvas = rect.gameObject.GetComponentInParent