diff --git a/Architecture.meta b/Architecture.meta new file mode 100644 index 0000000..e2efafd --- /dev/null +++ b/Architecture.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4e0fc3cb1c477c34bbbeea156de76c38 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects.meta b/Architecture/ScriptableObjects.meta new file mode 100644 index 0000000..4847243 --- /dev/null +++ b/Architecture/ScriptableObjects.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a55c02bbd97ff0740995575a3e48ed89 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/AssemblyInfo.cs b/Architecture/ScriptableObjects/AssemblyInfo.cs new file mode 100644 index 0000000..5d50669 --- /dev/null +++ b/Architecture/ScriptableObjects/AssemblyInfo.cs @@ -0,0 +1,4 @@ +using System.Runtime.CompilerServices; + +// Expose internal members to editor assembly for inspectors, other editor windows or functions +[assembly: InternalsVisibleTo("ScriptableObject-Architecture.Editor")] diff --git a/Architecture/ScriptableObjects/AssemblyInfo.cs.meta b/Architecture/ScriptableObjects/AssemblyInfo.cs.meta new file mode 100644 index 0000000..17833ab --- /dev/null +++ b/Architecture/ScriptableObjects/AssemblyInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e00e4c8cc9a36d34e974afdacc9e034f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Attributes.meta b/Architecture/ScriptableObjects/Attributes.meta new file mode 100644 index 0000000..acfe6af --- /dev/null +++ b/Architecture/ScriptableObjects/Attributes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2aa6d979e0421eb49a4d097f166ef439 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Attributes/MultiLine.cs b/Architecture/ScriptableObjects/Attributes/MultiLine.cs new file mode 100644 index 0000000..6cd6257 --- /dev/null +++ b/Architecture/ScriptableObjects/Attributes/MultiLine.cs @@ -0,0 +1,6 @@ +using System; + +[AttributeUsage(AttributeTargets.Class)] +public class MultiLine : Attribute +{ +} diff --git a/Architecture/ScriptableObjects/Attributes/MultiLine.cs.meta b/Architecture/ScriptableObjects/Attributes/MultiLine.cs.meta new file mode 100644 index 0000000..37da286 --- /dev/null +++ b/Architecture/ScriptableObjects/Attributes/MultiLine.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f8d8a61d6b1b0ba458f5398006ca7fb0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections.meta b/Architecture/ScriptableObjects/Collections.meta new file mode 100644 index 0000000..ee6662f --- /dev/null +++ b/Architecture/ScriptableObjects/Collections.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f74279b4ac40f2144bcc976992eb6214 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/AnimationCurveCollection.cs b/Architecture/ScriptableObjects/Collections/AnimationCurveCollection.cs new file mode 100644 index 0000000..3f18640 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/AnimationCurveCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "AnimationCurveCollection.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_COLLECTION + "AnimationCurve", + order = 120)] + public class AnimationCurveCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/AnimationCurveCollection.cs.meta b/Architecture/ScriptableObjects/Collections/AnimationCurveCollection.cs.meta new file mode 100644 index 0000000..c2ba714 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/AnimationCurveCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7ad7f20ff642cbc418ac6531143b174e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: c5b62729a840f56448ed99e6fee68b6e, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/AudioClipCollection.cs b/Architecture/ScriptableObjects/Collections/AudioClipCollection.cs new file mode 100644 index 0000000..e01628c --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/AudioClipCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "AudioClipCollection.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_COLLECTION + "AudioClip", + order = 120)] + public class AudioClipCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/AudioClipCollection.cs.meta b/Architecture/ScriptableObjects/Collections/AudioClipCollection.cs.meta new file mode 100644 index 0000000..bb01ad0 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/AudioClipCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d289013f46a3b234986332177bde3edf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: f305724bfe41a0241b47fbc4efcdd6d6, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/BaseCollection.cs b/Architecture/ScriptableObjects/Collections/BaseCollection.cs new file mode 100644 index 0000000..370cc9e --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/BaseCollection.cs @@ -0,0 +1,34 @@ +using System.Collections; +using Type = System.Type; + +namespace ScriptableObjectArchitecture +{ + public abstract class BaseCollection : SOArchitectureBaseObject, IEnumerable + { + public object this[int index] + { + get + { + return List[index]; + } + set + { + List[index] = value; + } + } + + public int Count { get { return List.Count; } } + + public abstract IList List { get; } + public abstract Type Type { get; } + + IEnumerator IEnumerable.GetEnumerator() + { + return List.GetEnumerator(); + } + public bool Contains(object obj) + { + return List.Contains(obj); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/BaseCollection.cs.meta b/Architecture/ScriptableObjects/Collections/BaseCollection.cs.meta new file mode 100644 index 0000000..cc3f735 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/BaseCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c80fa5d349585dd45bc2532a8744c5af +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/BoolCollection.cs b/Architecture/ScriptableObjects/Collections/BoolCollection.cs new file mode 100644 index 0000000..aad215a --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/BoolCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "BoolCollection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "bool", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 5)] + public class BoolCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/BoolCollection.cs.meta b/Architecture/ScriptableObjects/Collections/BoolCollection.cs.meta new file mode 100644 index 0000000..dc09b21 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/BoolCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 916693505e56c0e458b96d6de46fec18 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: d4d11961dbf1cc64bae0ef7f13dc0ed7, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/ByteCollection.cs b/Architecture/ScriptableObjects/Collections/ByteCollection.cs new file mode 100644 index 0000000..a8a67f9 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/ByteCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "ByteCollection.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_COLLECTION + "byte", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 6)] + public class ByteCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/ByteCollection.cs.meta b/Architecture/ScriptableObjects/Collections/ByteCollection.cs.meta new file mode 100644 index 0000000..5958a5e --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/ByteCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c80696004aaeefd4581c66b60262ce40 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 824f6df5e20a8e54ebdcf1293a4d1783, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/CharCollection.cs b/Architecture/ScriptableObjects/Collections/CharCollection.cs new file mode 100644 index 0000000..856c542 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/CharCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "CharCollection.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_COLLECTION + "char", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 7)] + public class CharCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/CharCollection.cs.meta b/Architecture/ScriptableObjects/Collections/CharCollection.cs.meta new file mode 100644 index 0000000..752572a --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/CharCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bfe6b2c3c89b7f44bbd064c0c24da0b5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: ab7acc2ba41f8d24597f973d09b3a13b, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/Collection.cs b/Architecture/ScriptableObjects/Collections/Collection.cs new file mode 100644 index 0000000..9ac8f08 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/Collection.cs @@ -0,0 +1,86 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + public class Collection : BaseCollection, IEnumerable + { + public new T this[int index] + { + get + { + return _list[index]; + } + set + { + _list[index] = value; + } + } + + [SerializeField] + private List _list = new List(); + + public override IList List + { + get + { + return _list; + } + } + public override Type Type + { + get + { + return typeof(T); + } + } + + public void Add(T obj) + { + if (!_list.Contains(obj)) + _list.Add(obj); + } + public void Remove(T obj) + { + if (_list.Contains(obj)) + _list.Remove(obj); + } + public void Clear() + { + _list.Clear(); + } + public bool Contains(T value) + { + return _list.Contains(value); + } + public int IndexOf(T value) + { + return _list.IndexOf(value); + } + public void RemoveAt(int index) + { + _list.RemoveAt(index); + } + public void Insert(int index, T value) + { + _list.Insert(index, value); + } + IEnumerator IEnumerable.GetEnumerator() + { + return GetEnumerator(); + } + public IEnumerator GetEnumerator() + { + return _list.GetEnumerator(); + } + public override string ToString() + { + return "Collection<" + typeof(T) + ">(" + Count + ")"; + } + public T[] ToArray() { + return _list.ToArray(); + } + } +} diff --git a/Architecture/ScriptableObjects/Collections/Collection.cs.meta b/Architecture/ScriptableObjects/Collections/Collection.cs.meta new file mode 100644 index 0000000..9f2ae9c --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/Collection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 86767a9f6ab228c4ea5db8d47a39b046 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/Color32Collection.cs b/Architecture/ScriptableObjects/Collections/Color32Collection.cs new file mode 100644 index 0000000..22d8e2e --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/Color32Collection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "Color32Collection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "Structs/Color32", + order = 120)] + public class Color32Collection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/Color32Collection.cs.meta b/Architecture/ScriptableObjects/Collections/Color32Collection.cs.meta new file mode 100644 index 0000000..9b0db82 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/Color32Collection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ff2975a5cdeda4a4ea898a97a00b1245 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 1067bbf7144445045982a772e570db4c, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/ColorCollection.cs b/Architecture/ScriptableObjects/Collections/ColorCollection.cs new file mode 100644 index 0000000..90897d8 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/ColorCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "ColorCollection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "Structs/Color", + order = 120)] + public class ColorCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/ColorCollection.cs.meta b/Architecture/ScriptableObjects/Collections/ColorCollection.cs.meta new file mode 100644 index 0000000..da32a31 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/ColorCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b70196d7b105d854286b774167fa3a58 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 1067bbf7144445045982a772e570db4c, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/DoubleCollection.cs b/Architecture/ScriptableObjects/Collections/DoubleCollection.cs new file mode 100644 index 0000000..23512e5 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/DoubleCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "DoubleCollection.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_COLLECTION + "double", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 8)] + public class DoubleCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/DoubleCollection.cs.meta b/Architecture/ScriptableObjects/Collections/DoubleCollection.cs.meta new file mode 100644 index 0000000..4f209de --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/DoubleCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ddebc6dac1a8f914b9b59d5ebb3f8dd1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: a7e3ab68e5b9b2d4796e3a138b43e81b, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/FloatCollection.cs b/Architecture/ScriptableObjects/Collections/FloatCollection.cs new file mode 100644 index 0000000..da36005 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/FloatCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "FloatCollection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "float", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 3)] + public class FloatCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/FloatCollection.cs.meta b/Architecture/ScriptableObjects/Collections/FloatCollection.cs.meta new file mode 100644 index 0000000..67b1807 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/FloatCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0c34b51965a63624385c5d47f4ac333f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 090c91e3b1c62cd4188ca24b83260a43, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/GameObjectCollection.cs b/Architecture/ScriptableObjects/Collections/GameObjectCollection.cs new file mode 100644 index 0000000..a965d4a --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/GameObjectCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "GameObjectCollection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "GameObject", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 0)] + public class GameObjectCollection : Collection + { + } +} diff --git a/Architecture/ScriptableObjects/Collections/GameObjectCollection.cs.meta b/Architecture/ScriptableObjects/Collections/GameObjectCollection.cs.meta new file mode 100644 index 0000000..018f912 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/GameObjectCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 156f4052644faf645bba864aa1fd4e16 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 016eddd7ec2347a41b4b265778d9501d, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/IntCollection.cs b/Architecture/ScriptableObjects/Collections/IntCollection.cs new file mode 100644 index 0000000..0318a32 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/IntCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "IntCollection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "int", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 4)] + public class IntCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/IntCollection.cs.meta b/Architecture/ScriptableObjects/Collections/IntCollection.cs.meta new file mode 100644 index 0000000..22ac31d --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/IntCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dba6f7bc1140ccb439039e265858770b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: f3ef3e85511a9cd4f8868d3a7c752bd4, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/LongCollection.cs b/Architecture/ScriptableObjects/Collections/LongCollection.cs new file mode 100644 index 0000000..7432c4e --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/LongCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "LongCollection.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_COLLECTION + "long", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 9)] + public class LongCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/LongCollection.cs.meta b/Architecture/ScriptableObjects/Collections/LongCollection.cs.meta new file mode 100644 index 0000000..892aeba --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/LongCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ceacfe10610defb42b3dea63dcaaa5e9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: dfebd677c27ca5543b6ffa552f8f4538, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/ObjectCollection.cs b/Architecture/ScriptableObjects/Collections/ObjectCollection.cs new file mode 100644 index 0000000..1a55970 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/ObjectCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "ObjectCollection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "Object", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 1)] + public class ObjectCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/ObjectCollection.cs.meta b/Architecture/ScriptableObjects/Collections/ObjectCollection.cs.meta new file mode 100644 index 0000000..11f366d --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/ObjectCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 294e8bbb40af68441a293e00fdc5548b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 1a7cfceb598958d4588af67b5592b54f, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/QuaternionCollection.cs b/Architecture/ScriptableObjects/Collections/QuaternionCollection.cs new file mode 100644 index 0000000..8a2919d --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/QuaternionCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "QuaternionCollection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "Structs/Quaternion", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 13)] + public class QuaternionCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/QuaternionCollection.cs.meta b/Architecture/ScriptableObjects/Collections/QuaternionCollection.cs.meta new file mode 100644 index 0000000..e55ba3f --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/QuaternionCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 376c15839ad34eb4788c493b6b34c89d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 039e9190b2371d84ab3d8c3b9ce65380, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/SbyteCollection.cs b/Architecture/ScriptableObjects/Collections/SbyteCollection.cs new file mode 100644 index 0000000..1052adf --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/SbyteCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "SByteCollection.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_COLLECTION + "sbyte", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 15)] + public class SByteCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/SbyteCollection.cs.meta b/Architecture/ScriptableObjects/Collections/SbyteCollection.cs.meta new file mode 100644 index 0000000..725dc8d --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/SbyteCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 800757c0caa7c454caae4475e6d601c0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 00bbbbfeeb8421343be2a4d0325288ca, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/SceneCollection.cs b/Architecture/ScriptableObjects/Collections/SceneCollection.cs new file mode 100644 index 0000000..6590bee --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/SceneCollection.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "SceneCollection.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_COLLECTION + "Scene", + order = 120)] + public class SceneCollection : Collection + { + + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/SceneCollection.cs.meta b/Architecture/ScriptableObjects/Collections/SceneCollection.cs.meta new file mode 100644 index 0000000..937bf03 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/SceneCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: baec154247b223d4a9b1afe90aa2cf2c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 2914869b4bf78e2498ede5504e93b705, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/ShortCollection.cs b/Architecture/ScriptableObjects/Collections/ShortCollection.cs new file mode 100644 index 0000000..a1bdf09 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/ShortCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "ShortCollection.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_COLLECTION + "short", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 14)] + public class ShortCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/ShortCollection.cs.meta b/Architecture/ScriptableObjects/Collections/ShortCollection.cs.meta new file mode 100644 index 0000000..c1f7585 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/ShortCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f1b528d0c64418e479123029aeae7230 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: c0a478b6dd67927488ed74dba04f5eb2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/StringCollection.cs b/Architecture/ScriptableObjects/Collections/StringCollection.cs new file mode 100644 index 0000000..739394b --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/StringCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "StringCollection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "string", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 2)] + public class StringCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/StringCollection.cs.meta b/Architecture/ScriptableObjects/Collections/StringCollection.cs.meta new file mode 100644 index 0000000..8841a25 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/StringCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fb12e3ad1486e2e4496d2933bc2e5456 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: f3400829b3bc23a4a87d7b8bf425bfd3, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/UintCollection.cs b/Architecture/ScriptableObjects/Collections/UintCollection.cs new file mode 100644 index 0000000..3fc6dc3 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/UintCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "UIntCollection.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_COLLECTION + "uint", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 16)] + public class UIntCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/UintCollection.cs.meta b/Architecture/ScriptableObjects/Collections/UintCollection.cs.meta new file mode 100644 index 0000000..a0568da --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/UintCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b2ece7577c39e6d42b87c39735ed0bcb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 87156f2d93700f84a8a38e414e8d312f, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/UlongCollection.cs b/Architecture/ScriptableObjects/Collections/UlongCollection.cs new file mode 100644 index 0000000..cf84427 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/UlongCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "ULongCollection.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_COLLECTION + "ulong", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 17)] + public class ULongCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/UlongCollection.cs.meta b/Architecture/ScriptableObjects/Collections/UlongCollection.cs.meta new file mode 100644 index 0000000..96db608 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/UlongCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: db08965a2cf1822409af7548df816116 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: dfebd677c27ca5543b6ffa552f8f4538, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/UshortCollection.cs b/Architecture/ScriptableObjects/Collections/UshortCollection.cs new file mode 100644 index 0000000..ce18757 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/UshortCollection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "UShortCollection.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_COLLECTION + "ushort", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 18)] + public class UShortCollection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/UshortCollection.cs.meta b/Architecture/ScriptableObjects/Collections/UshortCollection.cs.meta new file mode 100644 index 0000000..d6229f6 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/UshortCollection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 68f8f730ac4eb7a46b32e0c3319ab540 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 2716b51a57087c34db2b9b6fa1523f93, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/Vector2Collection.cs b/Architecture/ScriptableObjects/Collections/Vector2Collection.cs new file mode 100644 index 0000000..f3211f9 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/Vector2Collection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "Vector2Collection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "Structs/Vector2", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 10)] + public class Vector2Collection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/Vector2Collection.cs.meta b/Architecture/ScriptableObjects/Collections/Vector2Collection.cs.meta new file mode 100644 index 0000000..ca60f26 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/Vector2Collection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d06ceb6f5b9494247a47b2b9639f1fa4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 8cbf47eb8d6a6734799ebc975a1ed553, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/Vector3Collection.cs b/Architecture/ScriptableObjects/Collections/Vector3Collection.cs new file mode 100644 index 0000000..94b617c --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/Vector3Collection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "Vector3Collection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "Structs/Vector3", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 11)] + public class Vector3Collection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/Vector3Collection.cs.meta b/Architecture/ScriptableObjects/Collections/Vector3Collection.cs.meta new file mode 100644 index 0000000..5fa6761 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/Vector3Collection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2a166c222ab884c40a383e3d630076e1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 14d8d52dcb7b258409d4f6447738836e, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Collections/Vector4Collection.cs b/Architecture/ScriptableObjects/Collections/Vector4Collection.cs new file mode 100644 index 0000000..573b4e2 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/Vector4Collection.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "Vector4Collection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "Structs/Vector4", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 12)] + public class Vector4Collection : Collection + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Collections/Vector4Collection.cs.meta b/Architecture/ScriptableObjects/Collections/Vector4Collection.cs.meta new file mode 100644 index 0000000..067d697 --- /dev/null +++ b/Architecture/ScriptableObjects/Collections/Vector4Collection.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3f851553b3485f64b882c79368923ca7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: f4151cbde4520b1469e166be72ed9aa3, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Documentation.meta b/Architecture/ScriptableObjects/Documentation.meta new file mode 100644 index 0000000..8727673 --- /dev/null +++ b/Architecture/ScriptableObjects/Documentation.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 455133d0da7e9da4593718f176eb07e9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Documentation/Collection.txt b/Architecture/ScriptableObjects/Documentation/Collection.txt new file mode 100644 index 0000000..3b6de6e --- /dev/null +++ b/Architecture/ScriptableObjects/Documentation/Collection.txt @@ -0,0 +1,23 @@ +## Introduction +Collections quite simply contain objects, just like we expect from a C# collection, but serialized in an asset inside your project + +Note that Unity **realy** doesn't like it if you reference scene objects in assets, and as such have made certain editor functions incompatible with them. Therefore if any object in the collection is not persistent, they're disabled as you can see below, although you can still reorder, delete and click on them to see them in your scene view. Note that none of these conditions affect how they work under the hood, these precautions are merely related to the editor + +## Script Reference +There are various ways to interact with the collection. Available are the following members + +T this[int index] + +IList List { get; } +int Count { get; } +Type Type { get; } + +void Add(T) +void Remove(T) +RemoveAt(int) +void Clear() +bool Contains(T) +int IndexOf(T) +Insert(int, T) + +T[] ToArray() diff --git a/Architecture/ScriptableObjects/Documentation/Collection.txt.meta b/Architecture/ScriptableObjects/Documentation/Collection.txt.meta new file mode 100644 index 0000000..5ec0a42 --- /dev/null +++ b/Architecture/ScriptableObjects/Documentation/Collection.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f6b9ad255f8e4204cb0e058e803c375d +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Documentation/Event-Listeners.txt b/Architecture/ScriptableObjects/Documentation/Event-Listeners.txt new file mode 100644 index 0000000..231cf94 --- /dev/null +++ b/Architecture/ScriptableObjects/Documentation/Event-Listeners.txt @@ -0,0 +1,10 @@ +## Introduction +Event Listeners are components that listen to a specific Event and then provides a response in the form on a UnityEvent. Note that the type of event listener must match the event type, so if a bool event is expected, you must use an EventListener of type bool as well. Typed events listeners also supports forwarding the raise parameter as a dynamic response + +Event listeners are also fully debuggable through a variety of features. A fully featured stacktrace window is available. You can also simulate an incoming event through the inspector, and even select a debug value if the listener is typed. When an event is raised, a gizmo is also drawn to visualize responses + +## Script Reference +The class has a singular function for responding to an event. It differs depending on if a type is expected or not + +void OnEventRaised(T) +void OnEventRaised() \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Documentation/Event-Listeners.txt.meta b/Architecture/ScriptableObjects/Documentation/Event-Listeners.txt.meta new file mode 100644 index 0000000..897c8df --- /dev/null +++ b/Architecture/ScriptableObjects/Documentation/Event-Listeners.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: cc77cef44faff4c409633e38c9b27011 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Documentation/Events.txt b/Architecture/ScriptableObjects/Documentation/Events.txt new file mode 100644 index 0000000..5fb9204 --- /dev/null +++ b/Architecture/ScriptableObjects/Documentation/Events.txt @@ -0,0 +1,16 @@ +## Introduction + +Events also exist as ScriptableObjects in your project. They can contain any single parameter when raising or none. Events are also fully debuggable through the editor using the stacktrace window and the raise button functionality, which also supports the ability to raise events with parameters. If a parameter is specified, a field will be present which allows you to select which value will be passed. + +## Script Reference +Note that you must provide an Event Listener in order to subscribe to events + +The base class differs depending on whether an argument is expected or not + +void Raise(T) +void RegisterListener(IGameEventListener) +void UnregisterListener(IGameEventListener) + +void Raise() +void RegisterListener(IGameEventListener) +void UnregisterListener(IGameEventListener) \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Documentation/Events.txt.meta b/Architecture/ScriptableObjects/Documentation/Events.txt.meta new file mode 100644 index 0000000..057ad67 --- /dev/null +++ b/Architecture/ScriptableObjects/Documentation/Events.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7f5aa2b6331cdd94186d9bf08807bd4b +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Documentation/References.txt b/Architecture/ScriptableObjects/Documentation/References.txt new file mode 100644 index 0000000..bc77616 --- /dev/null +++ b/Architecture/ScriptableObjects/Documentation/References.txt @@ -0,0 +1,16 @@ +## Introduction +References are how we expose fields in MonoBehaviour scripts that allow us to assign a variable ScriptableObject. They're wrapped in a separate class because you can also choose not to use a ScriptableObject at all, and instead write a constant value in the inspector. + +## Script Reference +To create a Reference field in your MonoBehaviour script, simply declare it like you would any other field + +public BoolReference boolValue; + +Or use the [SerializeField] attribute if it's not public + +[SerializeField] +private BoolReference boolValue; + +You don't have to care whether the Reference is using a constant or a variable, simply reference the Value property + +T Value { get; set; } \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Documentation/References.txt.meta b/Architecture/ScriptableObjects/Documentation/References.txt.meta new file mode 100644 index 0000000..b517a3d --- /dev/null +++ b/Architecture/ScriptableObjects/Documentation/References.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 43e78e08d09b4cd4681af36f8cc03e6d +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Documentation/Variables.txt b/Architecture/ScriptableObjects/Documentation/Variables.txt new file mode 100644 index 0000000..36e73f7 --- /dev/null +++ b/Architecture/ScriptableObjects/Documentation/Variables.txt @@ -0,0 +1,16 @@ +## Introduction +Variable ScriptableObject's share a lot of similarities with C# variables. They can be named and contain values of different types. Since they're embedded into a ScriptableObject, which exists as an asset within Unity, modifying both the name and value is very simple and intuitive. + +## Script Reference +Variables have a single property and a couple of functions we can use to modify its value. + +Value { get; set; } + +SetValue(T) +SetValue(BaseVariable) + +Variables also have a single operator + +implicit operator T(BaseVariable) + +The reason why you can't implicitly or explicitly assign any value, is because Variables are objects themselves, so it must be clear whether you're changing the reference or the value. \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Documentation/Variables.txt.meta b/Architecture/ScriptableObjects/Documentation/Variables.txt.meta new file mode 100644 index 0000000..9876e2a --- /dev/null +++ b/Architecture/ScriptableObjects/Documentation/Variables.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 88af777236d645b45a7bf9fd42d6dd95 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor.meta b/Architecture/ScriptableObjects/Editor.meta new file mode 100644 index 0000000..0decc36 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9380ea5fbea0666478a788b3c3b2d2c7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/BaseReferenceHelper.cs b/Architecture/ScriptableObjects/Editor/BaseReferenceHelper.cs new file mode 100644 index 0000000..dc537bb --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/BaseReferenceHelper.cs @@ -0,0 +1,37 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using System.Reflection; +using Type = System.Type; + +public static class BaseReferenceHelper +{ + private const BindingFlags NonPublicBindingsFlag = BindingFlags.Instance | BindingFlags.NonPublic; + private const string ConstantValueName = "_constantValue"; + + public static Type GetReferenceType(FieldInfo fieldInfo) + { + return fieldInfo.FieldType; + } + public static Type GetValueType(FieldInfo fieldInfo) + { + Type referenceType = GetReferenceType(fieldInfo); + + if(referenceType.IsArray) + { + referenceType = referenceType.GetElementType(); + } + else if(IsList(referenceType)) + { + referenceType = referenceType.GetGenericArguments()[0]; + } + + FieldInfo constantValueField = referenceType.GetField(ConstantValueName, NonPublicBindingsFlag); + + return constantValueField.FieldType; + } + private static bool IsList(Type referenceType) + { + return referenceType.IsGenericType; + } +} diff --git a/Architecture/ScriptableObjects/Editor/BaseReferenceHelper.cs.meta b/Architecture/ScriptableObjects/Editor/BaseReferenceHelper.cs.meta new file mode 100644 index 0000000..c02b969 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/BaseReferenceHelper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5294f4d0d03bb714e900e3a4777ca6cb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Code Generation.meta b/Architecture/ScriptableObjects/Editor/Code Generation.meta new file mode 100644 index 0000000..8acbb0f --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2249188d2069be24494255b754a33950 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/SO_CodeGenerationWindow.cs b/Architecture/ScriptableObjects/Editor/Code Generation/SO_CodeGenerationWindow.cs new file mode 100644 index 0000000..095c1f0 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/SO_CodeGenerationWindow.cs @@ -0,0 +1,162 @@ +using UnityEditor; +using UnityEditor.AnimatedValues; +using UnityEngine; + +namespace ScriptableObjectArchitecture.Editor +{ + public class SO_CodeGenerationWindow : EditorWindow + { + /* --------- DEPENDENCY GRAPH ---------* + * [1] Game Event Listener + * [2] Game Event + * [3] Reference + * [4] Collection + * [5] Unity Event + * [6] Variable + * + * / 1 2 3 4 5 6 7 + * 1 X X + * 2 X + * 3 X + * 4 + * 5 + * 6 + */ + + private readonly bool[,] _dependencyGraph = new bool[SO_CodeGenerator.TYPE_COUNT, SO_CodeGenerator.TYPE_COUNT] + { + { false, true, false, false, true, false, }, + { false, false, true, false, false, false, }, + { false, false, false, false, false, true, }, + { false, false, false, false, false, false, }, + { false, false, false, false, false, false, }, + { false, false, false, false, false, false, }, + }; + + private readonly bool[] _states = new bool[SO_CodeGenerator.TYPE_COUNT]; + private readonly string[] _names = new string[SO_CodeGenerator.TYPE_COUNT] + { + "Event Listener", + "Game Event", + "Reference", + "Collection", + "Unity Event", + "Variable", + }; + + private readonly bool[] _menuRequirement = new bool[SO_CodeGenerator.TYPE_COUNT] + { + false, true, false, true, false, true + }; + + private int _order; + private string _typeName; + private string _menuName; + private AnimBool _menuAnim; + private AnimBool _clampedValueHelpBoxAnim; + + [MenuItem("Window/SO Code Generation")] + private static void ShowWindow() + { + GetWindow(typeof(SO_CodeGenerationWindow), true, "SO Code Generation"); + } + private void OnEnable() + { + _menuAnim = new AnimBool(); + _menuAnim.valueChanged.AddListener(Repaint); + + _clampedValueHelpBoxAnim = new AnimBool(); + _clampedValueHelpBoxAnim.valueChanged.AddListener(Repaint); + + _order = SOArchitecture_Settings.Instance.DefaultCreateAssetMenuOrder; + } + private void OnGUI() + { + TypeSelection(); + + EditorGUILayout.Space(); + + DataFields(); + + if (GUILayout.Button("Generate")) + { + SO_CodeGenerator.Data data = new SO_CodeGenerator.Data() + { + Types = _states, + TypeName = _typeName, + MenuName = RequiresMenu() ? _menuName : default(string), + Order = _order, + }; + + SO_CodeGenerator.Generate(data); + AssetDatabase.Refresh(); + } + } + private void TypeSelection() + { + EditorGUILayout.LabelField("Select Type(s)", EditorStyles.boldLabel); + + for (int i = 0; i < SO_CodeGenerator.TYPE_COUNT; i++) + { + bool isDepending = IsDepending(i); + + if (isDepending) + { + _states[i] = true; + } + + EditorGUI.BeginDisabledGroup(isDepending); + + _states[i] = EditorGUILayout.Toggle(_names[i], _states[i]); + + EditorGUI.EndDisabledGroup(); + } + } + private void DataFields() + { + EditorGUILayout.LabelField("Information", EditorStyles.boldLabel); + + // Type name. + _typeName = EditorGUILayout.TextField(new GUIContent("Type Name", "Case sensitive, ensure exact match with actual type name"), _typeName); + + // Menu name. + _menuAnim.target = RequiresMenu(); + EditorGUILayout.BeginFadeGroup(_menuAnim.faded); + + if (_menuAnim.value) + _menuName = EditorGUILayout.TextField("Menu Name", _menuName); + + EditorGUILayout.EndFadeGroup(); + + // Order. + _order = EditorGUILayout.IntField(new GUIContent("Order", "Use default if unsure"), _order); + } + /// + /// Polls the currently selected state types to determine whether any require menus + /// + /// + private bool RequiresMenu() + { + for (int i = 0; i < SO_CodeGenerator.TYPE_COUNT; i++) + { + if (_states[i] && _menuRequirement[i]) + return true; + } + + return false; + } + /// + /// Given an index, polls the dependency graph, and returns whether anyone is depending on it + /// + private bool IsDepending(int index) + { + for (int i = 0; i < SO_CodeGenerator.TYPE_COUNT; i++) + { + if (_states[i] && _dependencyGraph[i, index]) + return true; + } + + return false; + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/SO_CodeGenerationWindow.cs.meta b/Architecture/ScriptableObjects/Editor/Code Generation/SO_CodeGenerationWindow.cs.meta new file mode 100644 index 0000000..88d0b59 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/SO_CodeGenerationWindow.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2d3d837455319ab469a5741ba1e0eb76 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/SO_CodeGenerator.cs b/Architecture/ScriptableObjects/Editor/Code Generation/SO_CodeGenerator.cs new file mode 100644 index 0000000..1c71962 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/SO_CodeGenerator.cs @@ -0,0 +1,159 @@ +using System.Collections.Generic; +using System.IO; +using System.Linq; +using UnityEditor; +using UnityEngine; + +namespace ScriptableObjectArchitecture.Editor +{ + public static class SO_CodeGenerator + { + static SO_CodeGenerator() + { + CreateTargetDirectories(); + GatherFilePaths(); + } + private static void CreateTargetDirectories() + { + _targetDirectories = new string[TYPE_COUNT] + { + Application.dataPath + "/" + SOArchitecture_Settings.Instance.CodeGenerationTargetDirectory + "/Events/Listeners", + Application.dataPath + "/" + SOArchitecture_Settings.Instance.CodeGenerationTargetDirectory + "/Events/Game Events", + Application.dataPath + "/" + SOArchitecture_Settings.Instance.CodeGenerationTargetDirectory + "/References", + Application.dataPath + "/" + SOArchitecture_Settings.Instance.CodeGenerationTargetDirectory + "/Collections", + Application.dataPath + "/" + SOArchitecture_Settings.Instance.CodeGenerationTargetDirectory + "/Events/Responses", + Application.dataPath + "/" + SOArchitecture_Settings.Instance.CodeGenerationTargetDirectory + "/Variables", + }; + } + private static void GatherFilePaths() + { + string assetPath = Application.dataPath; + string folderToStartSearch = Directory.GetParent(assetPath).FullName; + + Queue foldersToCheck = new Queue(); + foldersToCheck.Enqueue(folderToStartSearch); + + while (foldersToCheck.Count > 0) + { + string currentDirectory = foldersToCheck.Dequeue(); + + foreach (string filePath in Directory.GetFiles(currentDirectory)) + { + string fileName = Path.GetFileName(filePath); + + for (int i = 0; i < TYPE_COUNT; i++) + { + if (_templateNames[i] == fileName) + _templatePaths[i] = filePath; + } + } + foreach (string subDirectory in Directory.GetDirectories(currentDirectory)) + { + foldersToCheck.Enqueue(subDirectory); + } + } + + //Double check that all filepaths were found + for (int i = 0; i < TYPE_COUNT; i++) + { + if (_templatePaths[i] == default(string)) + { + Debug.LogError("Couldn't find path for " + _templatePaths[i]); + } + } + } + + public const int TYPE_COUNT = 6; + + public struct Data + { + public bool[] Types; + public string TypeName; + public string MenuName; + public int Order; + } + + private static string[] _templateNames = new string[TYPE_COUNT] + { + "GameEventListenerTemplate", + "GameEventTemplate", + "ReferenceTemplate", + "CollectionTemplate", + "UnityEventTemplate", + "VariableTemplate", + }; + + private static string[] _targetFileNames = new string[TYPE_COUNT] + { + "{0}GameEventListener.cs", + "{0}GameEvent.cs", + "{0}Reference.cs", + "{0}Collection.cs", + "{0}UnityEvent.cs", + "{0}Variable.cs", + }; + + private static string[] _targetDirectories = null; + private static string[] _templatePaths = new string[TYPE_COUNT]; + private static string[,] _replacementStrings = null; + + private static string TypeName { get { return _replacementStrings[1, 1]; } } + + public static void Generate(Data data) + { + _replacementStrings = new string[4, 2] + { + { "$TYPE$", data.TypeName }, + { "$TYPE_NAME$", CapitalizeFirstLetter(data.TypeName) }, + { "$MENU_NAME$", data.MenuName }, + { "$ORDER$", data.Order.ToString() }, + }; + + for (int i = 0; i < TYPE_COUNT; i++) + { + if (data.Types[i]) + { + GenerateScript(i); + } + } + } + private static void GenerateScript(int index) + { + string targetFilePath = GetTargetFilePath(index); + string contents = GetScriptContents(index); + + if (File.Exists(targetFilePath) && !SOArchitecture_Settings.Instance.CodeGenerationAllowOverwrite) + { + Debug.Log("Cannot create file at " + targetFilePath + " because a file already exists, and overwrites are disabled"); + return; + } + + Debug.Log("Creating " + targetFilePath); + + Directory.CreateDirectory(Path.GetDirectoryName(targetFilePath)); + File.WriteAllText(targetFilePath, contents); + } + private static string GetScriptContents(int index) + { + string templatePath = _templatePaths[index]; + string templateContent = File.ReadAllText(templatePath); + + string output = templateContent; + + for (int i = 0; i < _replacementStrings.GetLength(0); i++) + { + output = output.Replace(_replacementStrings[i, 0], _replacementStrings[i, 1]); + } + + return output; + } + private static string GetTargetFilePath(int index) + { + return _targetDirectories[index] + "/" + string.Format(_targetFileNames[index], TypeName); + } + private static string CapitalizeFirstLetter(string input) + { + return input.First().ToString().ToUpper() + input.Substring(1); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/SO_CodeGenerator.cs.meta b/Architecture/ScriptableObjects/Editor/Code Generation/SO_CodeGenerator.cs.meta new file mode 100644 index 0000000..1ed2c04 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/SO_CodeGenerator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c0e8a480b3d95b8499804393d1ab3ea1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates.meta b/Architecture/ScriptableObjects/Editor/Code Generation/Templates.meta new file mode 100644 index 0000000..f658c18 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 85ea16b70b071a9498d307b160e902f0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates/CollectionTemplate b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/CollectionTemplate new file mode 100644 index 0000000..39284ba --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/CollectionTemplate @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "$TYPE_NAME$Collection.asset", + menuName = SOArchitecture_Utility.COLLECTION_SUBMENU + "$MENU_NAME$", + order = $ORDER$)] + public class $TYPE_NAME$Collection : Collection<$TYPE$> + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates/CollectionTemplate.meta b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/CollectionTemplate.meta new file mode 100644 index 0000000..01d4423 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/CollectionTemplate.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: c37df815504227545bf3c909a86f6ee6 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates/GameEventListenerTemplate b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/GameEventListenerTemplate new file mode 100644 index 0000000..e625c5f --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/GameEventListenerTemplate @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "$TYPE$")] + public sealed class $TYPE_NAME$GameEventListener : BaseGameEventListener<$TYPE$, $TYPE_NAME$GameEvent, $TYPE_NAME$UnityEvent> + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates/GameEventListenerTemplate.meta b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/GameEventListenerTemplate.meta new file mode 100644 index 0000000..b2f40b8 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/GameEventListenerTemplate.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 322335fb95ca09546bfb78b78147144b +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates/GameEventTemplate b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/GameEventTemplate new file mode 100644 index 0000000..0581888 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/GameEventTemplate @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "$TYPE_NAME$GameEvent.asset", + menuName = SOArchitecture_Utility.GAME_EVENT + "$MENU_NAME$", + order = $ORDER$)] + public sealed class $TYPE_NAME$GameEvent : GameEventBase<$TYPE$> + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates/GameEventTemplate.meta b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/GameEventTemplate.meta new file mode 100644 index 0000000..c16b277 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/GameEventTemplate.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 340cff775918ddf4b97cdb4fdba1294e +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates/ReferenceTemplate b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/ReferenceTemplate new file mode 100644 index 0000000..a7d2b91 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/ReferenceTemplate @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class $TYPE_NAME$Reference : BaseReference<$TYPE$, $TYPE_NAME$Variable> + { + public $TYPE_NAME$Reference() : base() { } + public $TYPE_NAME$Reference($TYPE$ value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates/ReferenceTemplate.meta b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/ReferenceTemplate.meta new file mode 100644 index 0000000..f37c6c1 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/ReferenceTemplate.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5bb692329aca5084da7363c2ad67846e +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates/UnityEventTemplate b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/UnityEventTemplate new file mode 100644 index 0000000..4f99e02 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/UnityEventTemplate @@ -0,0 +1,10 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class $TYPE_NAME$UnityEvent : UnityEvent<$TYPE$> + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates/UnityEventTemplate.meta b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/UnityEventTemplate.meta new file mode 100644 index 0000000..84de2f0 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/UnityEventTemplate.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5dc00cc2e2d948945a8fe03a1cf7a068 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates/VariableTemplate b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/VariableTemplate new file mode 100644 index 0000000..4b9257b --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/VariableTemplate @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class $TYPE_NAME$Event : UnityEvent<$TYPE_NAME$> { } + + [CreateAssetMenu( + fileName = "$TYPE_NAME$Variable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "$MENU_NAME$", + order = $ORDER$)] + public class $TYPE_NAME$Variable : BaseVariable<$TYPE$, $TYPE_NAME$Event> + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Code Generation/Templates/VariableTemplate.meta b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/VariableTemplate.meta new file mode 100644 index 0000000..124afa3 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Code Generation/Templates/VariableTemplate.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 574fca2de3eaa454e9f1f32258e3dda6 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Drawers.meta b/Architecture/ScriptableObjects/Editor/Drawers.meta new file mode 100644 index 0000000..80102fa --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Drawers.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b2f16d300cdb67047b8223015cc0477c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Drawers/BaseReferenceDrawer.cs b/Architecture/ScriptableObjects/Editor/Drawers/BaseReferenceDrawer.cs new file mode 100644 index 0000000..d42d50d --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Drawers/BaseReferenceDrawer.cs @@ -0,0 +1,187 @@ +using System; +using System.Reflection; +using UnityEditor; +using UnityEngine; +using Type = System.Type; + +namespace ScriptableObjectArchitecture.Editor +{ + [CustomPropertyDrawer(typeof(BaseReference), true)] + public sealed class BaseReferenceDrawer : PropertyDrawer + { + /// + /// Options to display in the popup to select constant or variable. + /// + private static readonly string[] popupOptions = + { + "Use Constant", + "Use Variable" + }; + + private const float MultilineThreshold = 20; + + // Property Names + private const string VARIABLE_PROPERTY_NAME = "_variable"; + private const string CONSTANT_VALUE_PROPERTY_NAME = "_constantValue"; + private const string USE_CONSTANT_VALUE_PROPERTY_NAME = "_useConstant"; + + // Warnings + private const string COULD_NOT_FIND_VALUE_FIELD_WARNING_FORMAT = + "Could not find FieldInfo for [{0}] specific property drawer on type [{1}]."; + + private Type ValueType { get { return BaseReferenceHelper.GetValueType(fieldInfo); } } + private bool SupportsMultiLine { get { return SOArchitecture_EditorUtility.SupportsMultiLine(ValueType); } } + + private SerializedProperty property; + private SerializedProperty useConstant; + private SerializedProperty constantValue; + private SerializedProperty variable; + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + // Get properties + this.property = property; + useConstant = property.FindPropertyRelative("_useConstant"); + constantValue = property.FindPropertyRelative("_constantValue"); + variable = property.FindPropertyRelative("_variable"); + + int oldIndent = ResetIndent(); + + Rect fieldRect = DrawLabel(position, property, label); + Rect valueRect = DrawField(position, fieldRect); + DrawValue(position, valueRect); + + EndIndent(oldIndent); + + property.serializedObject.ApplyModifiedProperties(); + } + private bool IsConstantValueMultiline(SerializedProperty property) + { + return GenericPropertyDrawer.GetHeight(property, ValueType) > MultilineThreshold; + } + private Rect DrawLabel(Rect position, SerializedProperty property, GUIContent label) + { + return EditorGUI.PrefixLabel(position, label); + } + private Rect DrawField(Rect position, Rect fieldRect) + { + Rect buttonRect = GetPopupButtonRect(fieldRect); + Rect valueRect = GetValueRect(fieldRect, buttonRect); + + int result = DrawPopupButton(buttonRect, useConstant.boolValue ? 0 : 1); + useConstant.boolValue = result == 0; + + return valueRect; + } + private void DrawValue(Rect position, Rect valueRect) + { + if (useConstant.boolValue) + { + DrawGenericPropertyField(position, valueRect); + } + else + { + EditorGUI.PropertyField(valueRect, variable, GUIContent.none); + } + } + private void DrawGenericPropertyField(Rect position, Rect valueRect) + { + if (IsConstantValueMultiline(constantValue)) + { + using (new EditorGUI.IndentLevelScope()) + { + position.y += EditorGUIUtility.singleLineHeight; + position.height = GenericPropertyDrawer.GetHeight(constantValue, ValueType); + + GenericPropertyDrawer.DrawPropertyDrawer(position, constantValue, ValueType); + } + } + else + { + GenericPropertyDrawer.DrawPropertyDrawer(valueRect, constantValue, ValueType, false); + } + } + private Rect GetConstantMultilineRect(Rect position, Rect valueRect) + { + return new Rect(position.x, valueRect.y + EditorGUIUtility.singleLineHeight, position.width, GenericPropertyDrawer.GetHeight(constantValue, ValueType)); + } + private Rect GetMultiLineFieldRect(Rect position) + { + return EditorGUI.IndentedRect(new Rect + { + position = new Vector2(position.x, position.y + EditorGUIUtility.singleLineHeight), + size = new Vector2(position.width, EditorGUI.GetPropertyHeight(constantValue) + EditorGUIUtility.singleLineHeight) + }); + } + private bool ShouldDrawMultiLineField() + { + return useConstant.boolValue && SupportsMultiLine && EditorGUI.GetPropertyHeight(constantValue) > EditorGUIUtility.singleLineHeight; + } + private int ResetIndent() + { + // Store old indent level and set it to 0, the PrefixLabel takes care of it + int indent = EditorGUI.indentLevel; + EditorGUI.indentLevel = 0; + + return indent; + } + private void EndIndent(int indent) + { + EditorGUI.indentLevel = indent; + } + private int DrawPopupButton(Rect rect, int value) + { + return EditorGUI.Popup(rect, value, popupOptions, Styles.PopupStyle); + } + private Rect GetValueRect(Rect fieldRect, Rect buttonRect) + { + Rect valueRect = new Rect(fieldRect); + valueRect.x += buttonRect.width; + valueRect.width -= buttonRect.width; + + return valueRect; + } + private Rect GetPopupButtonRect(Rect fieldrect) + { + Rect buttonRect = new Rect(fieldrect); + buttonRect.yMin += Styles.PopupStyle.margin.top; + buttonRect.width = Styles.PopupStyle.fixedWidth + Styles.PopupStyle.margin.right; + buttonRect.height = Styles.PopupStyle.fixedHeight + Styles.PopupStyle.margin.top; + + return buttonRect; + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + SerializedProperty useConstant = property.FindPropertyRelative(USE_CONSTANT_VALUE_PROPERTY_NAME); + SerializedProperty constantValue = property.FindPropertyRelative(CONSTANT_VALUE_PROPERTY_NAME); + + if (useConstant.boolValue) + { + if (IsConstantValueMultiline(constantValue)) + { + return GenericPropertyDrawer.GetHeight(constantValue, ValueType) + EditorGUIUtility.singleLineHeight; + } + else + { + return EditorGUIUtility.singleLineHeight; + } + } + + return EditorGUIUtility.singleLineHeight; + } + + static class Styles + { + static Styles() + { + PopupStyle = new GUIStyle(GUI.skin.GetStyle("PaneOptions")) + { + imagePosition = ImagePosition.ImageOnly, + }; + } + + public static GUIStyle PopupStyle { get; set; } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Drawers/BaseReferenceDrawer.cs.meta b/Architecture/ScriptableObjects/Editor/Drawers/BaseReferenceDrawer.cs.meta new file mode 100644 index 0000000..129cdfa --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Drawers/BaseReferenceDrawer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3fc5390498e256d48bba75f1f835c028 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Drawers/GenericPropertyDrawer.cs b/Architecture/ScriptableObjects/Editor/Drawers/GenericPropertyDrawer.cs new file mode 100644 index 0000000..e25d529 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Drawers/GenericPropertyDrawer.cs @@ -0,0 +1,104 @@ +using System; +using System.Collections.Generic; +using UnityEditor; +using UnityEngine; +using Object = UnityEngine.Object; + +namespace ScriptableObjectArchitecture.Editor +{ + public static class GenericPropertyDrawer + { + private const string DefaultErrorLabelText = "Type is not drawable! Please implement property drawer"; + private const string NullPropertyText = "SerializedProperty is null. Your custom type is probably missing the [Serializable] attribute"; + + public static void DrawPropertyDrawer(Rect rect, SerializedProperty property, Type type, bool drawLabel = true) + { + if (property == null) + { + Debug.LogError(NullPropertyText); + return; + } + + if (SOArchitecture_EditorUtility.HasPropertyDrawer(type)) + { + if(drawLabel) + { + EditorGUI.PropertyField(rect, property); + } + else + { + EditorGUI.PropertyField(rect, property, GUIContent.none); + } + } + else + { + PropertyDrawIterator iter = new PropertyDrawIterator(rect, property.Copy(), drawLabel); + + DrawPropertyDrawerInternal(iter); + } + } + public static void DrawPropertyDrawerLayout(SerializedProperty property, Type type, bool drawLabel = true) + { + if(property == null) + { + Debug.LogError(NullPropertyText); + return; + } + + if (SOArchitecture_EditorUtility.HasPropertyDrawer(type)) + { + if (drawLabel) + { + EditorGUILayout.PropertyField(property); + } + else + { + EditorGUILayout.PropertyField(property, GUIContent.none); + } + } + else + { + PropertyDrawIteratorLayout iter = new PropertyDrawIteratorLayout(property.Copy(), drawLabel); + + DrawPropertyDrawerInternal(iter); + } + } + private static void DrawPropertyDrawerInternal(IPropertyDrawIterator iter) + { + do + { + iter.Draw(); + } + while (iter.Next()); + + iter.End(); + } + public static float GetHeight(SerializedProperty property, Type type) + { + if (SOArchitecture_EditorUtility.HasPropertyDrawer(type)) + { + return EditorGUI.GetPropertyHeight(property); + } + else + { + property = property.Copy(); + + int elements = 0; + + PropertyIterator iter = new PropertyIterator(property); + do + { + ++elements; + } + while (iter.Next()); + + iter.End(); + + float spacing = (elements - 1) * EditorGUIUtility.standardVerticalSpacing; + float elementHeights = elements * EditorGUIUtility.singleLineHeight; + + return spacing + elementHeights; + } + } + } +} diff --git a/Architecture/ScriptableObjects/Editor/Drawers/GenericPropertyDrawer.cs.meta b/Architecture/ScriptableObjects/Editor/Drawers/GenericPropertyDrawer.cs.meta new file mode 100644 index 0000000..c1c75ec --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Drawers/GenericPropertyDrawer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a2175771da1196e418cdf5f11735236e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Drawers/QuaternionDrawer.cs b/Architecture/ScriptableObjects/Editor/Drawers/QuaternionDrawer.cs new file mode 100644 index 0000000..e51b5ca --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Drawers/QuaternionDrawer.cs @@ -0,0 +1,26 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEditor; + +namespace ScriptableObjectArchitecture.Editor +{ + [CustomPropertyDrawer(typeof(Quaternion))] + public class QuaternionDrawer : PropertyDrawer + { + private const float Height = 20; + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + Vector4 vector = property.quaternionValue.ToVector4(); + + vector = EditorGUI.Vector4Field(position, label, vector); + + property.quaternionValue = new Quaternion(vector.x, vector.y, vector.z, vector.w); + } + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return Height; + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Drawers/QuaternionDrawer.cs.meta b/Architecture/ScriptableObjects/Editor/Drawers/QuaternionDrawer.cs.meta new file mode 100644 index 0000000..5e70156 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Drawers/QuaternionDrawer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 508c2da9a3d5d5c478a016c104a0a36d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Drawers/SceneInfoPropertyDrawer.cs b/Architecture/ScriptableObjects/Editor/Drawers/SceneInfoPropertyDrawer.cs new file mode 100644 index 0000000..df163f0 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Drawers/SceneInfoPropertyDrawer.cs @@ -0,0 +1,76 @@ +using UnityEditor; +using UnityEngine; + +namespace ScriptableObjectArchitecture.Editor +{ + [CustomPropertyDrawer(typeof(SceneInfo))] + internal sealed class SceneInfoPropertyDrawer : PropertyDrawer + { + private const string SCENE_PREVIEW_TITLE = "Preview (Read-Only)"; + private const string SCENE_NAME_PROPERTY = "_sceneName"; + private const string SCENE_INDEX_PROPERTY = "_sceneIndex"; + private const string SCENE_ENABLED_PROPERTY = "_isSceneEnabled"; + private const int FIELD_COUNT = 5; + + public override void OnGUI(Rect propertyRect, SerializedProperty property, GUIContent label) + { + var sceneNameProperty = property.FindPropertyRelative(SCENE_NAME_PROPERTY); + var sceneIndexProperty = property.FindPropertyRelative(SCENE_INDEX_PROPERTY); + var enabledProperty = property.FindPropertyRelative(SCENE_ENABLED_PROPERTY); + + EditorGUI.BeginProperty(propertyRect, new GUIContent(property.displayName), property); + EditorGUI.BeginChangeCheck(); + + // Draw Object Selector for SceneAssets + var sceneAssetRect = new Rect + { + position = propertyRect.position, + size = new Vector2(propertyRect.width, EditorGUIUtility.singleLineHeight) + }; + + var oldSceneAsset = AssetDatabase.LoadAssetAtPath(sceneNameProperty.stringValue); + var sceneAsset = EditorGUI.ObjectField(sceneAssetRect, oldSceneAsset, typeof(SceneAsset), false); + var sceneAssetPath = AssetDatabase.GetAssetPath(sceneAsset); + if (sceneNameProperty.stringValue != sceneAssetPath) + { + sceneNameProperty.stringValue = sceneAssetPath; + } + + if (string.IsNullOrEmpty(sceneNameProperty.stringValue)) + { + sceneIndexProperty.intValue = -1; + enabledProperty.boolValue = false; + } + + // Draw preview fields for scene information. + var titleLabelRect = sceneAssetRect; + titleLabelRect.y += EditorGUIUtility.singleLineHeight; + + EditorGUI.LabelField(titleLabelRect, SCENE_PREVIEW_TITLE); + EditorGUI.BeginDisabledGroup(true); + var nameRect = titleLabelRect; + nameRect.y += EditorGUIUtility.singleLineHeight; + + var indexRect = nameRect; + indexRect.y += EditorGUIUtility.singleLineHeight; + + var enabledRect = indexRect; + enabledRect.y += EditorGUIUtility.singleLineHeight; + + EditorGUI.PropertyField(nameRect, sceneNameProperty); + EditorGUI.PropertyField(indexRect, sceneIndexProperty); + EditorGUI.PropertyField(enabledRect, enabledProperty); + EditorGUI.EndDisabledGroup(); + if (EditorGUI.EndChangeCheck()) + { + property.serializedObject.ApplyModifiedProperties(); + } + EditorGUI.EndProperty(); + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return EditorGUIUtility.singleLineHeight * FIELD_COUNT + ((FIELD_COUNT - 1) * EditorGUIUtility.standardVerticalSpacing); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Drawers/SceneInfoPropertyDrawer.cs.meta b/Architecture/ScriptableObjects/Editor/Drawers/SceneInfoPropertyDrawer.cs.meta new file mode 100644 index 0000000..a133e73 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Drawers/SceneInfoPropertyDrawer.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 32913f49a5274d4795151f814b3dc24d +timeCreated: 1555400635 \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Drawers/Vector4Drawer.cs b/Architecture/ScriptableObjects/Editor/Drawers/Vector4Drawer.cs new file mode 100644 index 0000000..2c87a8c --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Drawers/Vector4Drawer.cs @@ -0,0 +1,22 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEditor; + +namespace ScriptableObjectArchitecture.Editor +{ + [CustomPropertyDrawer(typeof(Vector4))] + public class Vector4Drawer : PropertyDrawer + { + private const float Height = 20; + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + property.vector4Value = EditorGUI.Vector4Field(position, label, property.vector4Value); + } + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return Height; + } + } +} diff --git a/Architecture/ScriptableObjects/Editor/Drawers/Vector4Drawer.cs.meta b/Architecture/ScriptableObjects/Editor/Drawers/Vector4Drawer.cs.meta new file mode 100644 index 0000000..70506bf --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Drawers/Vector4Drawer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 44220cd5ef4dd4947af0c99db8cdb744 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer.meta b/Architecture/ScriptableObjects/Editor/Generic Property Drawer.meta new file mode 100644 index 0000000..bf2f5f6 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 59266ef9e8e03264a922d8d021e2515c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer/BasePropertyDrawIterator.cs b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/BasePropertyDrawIterator.cs new file mode 100644 index 0000000..ec1d244 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/BasePropertyDrawIterator.cs @@ -0,0 +1,66 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEditor; + +namespace ScriptableObjectArchitecture.Editor +{ + public abstract class BasePropertyDrawIterator : PropertyIterator, IPropertyDrawIterator + { + public BasePropertyDrawIterator(SerializedProperty property, bool drawLabel) : base(property) + { + this.drawLabel = drawLabel; + this.startIndentLevel = EditorGUI.indentLevel; + this.startDepth = iterator.depth; + } + + protected readonly bool drawLabel; + protected readonly int startIndentLevel; + protected readonly int startDepth; + + protected abstract void DrawProperty(); + protected abstract void DrawPropertyWithLabel(); + + public virtual void Draw() + { + EditorGUI.indentLevel = GetIndent(iterator.depth); + + if (IsCustom(iterator)) + { + if (drawLabel) + { + DrawPropertyWithLabel(); + } + else + { + DrawProperty(); + } + } + else + { + if(drawLabel) + { + DrawPropertyWithLabel(); + } + else + { + DrawProperty(); + } + } + } + public override void End() + { + base.End(); + + EditorGUI.indentLevel = startIndentLevel; + } + private int GetIndent(int depth) + { + return startIndentLevel + (depth - startDepth); + } + private bool IsCustom(SerializedProperty property) + { + return property.propertyType == SerializedPropertyType.Generic; + } + } +} diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer/BasePropertyDrawIterator.cs.meta b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/BasePropertyDrawIterator.cs.meta new file mode 100644 index 0000000..20a975d --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/BasePropertyDrawIterator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 24835f3f027d6e24290f4279d82dd46a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer/IPropertyDrawIterator.cs b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/IPropertyDrawIterator.cs new file mode 100644 index 0000000..14841a4 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/IPropertyDrawIterator.cs @@ -0,0 +1,11 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace ScriptableObjectArchitecture.Editor +{ + public interface IPropertyDrawIterator : IPropertyIterator + { + void Draw(); + } +} diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer/IPropertyDrawIterator.cs.meta b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/IPropertyDrawIterator.cs.meta new file mode 100644 index 0000000..b4278f2 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/IPropertyDrawIterator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 508ddb2b74994e04b8af4f74c38fa859 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer/IPropertyIterator.cs b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/IPropertyIterator.cs new file mode 100644 index 0000000..fd2587e --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/IPropertyIterator.cs @@ -0,0 +1,13 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace ScriptableObjectArchitecture.Editor +{ + public interface IPropertyIterator + { + bool Next(); + void End(); + } + +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer/IPropertyIterator.cs.meta b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/IPropertyIterator.cs.meta new file mode 100644 index 0000000..980433a --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/IPropertyIterator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0905a3ae925377842af05c8e661d127e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyDrawIterator.cs b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyDrawIterator.cs new file mode 100644 index 0000000..7e8d933 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyDrawIterator.cs @@ -0,0 +1,39 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEditor; + +namespace ScriptableObjectArchitecture.Editor +{ + public class PropertyDrawIterator : BasePropertyDrawIterator + { + public PropertyDrawIterator(Rect rect, SerializedProperty property, bool drawLabel) : base(property, drawLabel) + { + this.rect = rect; + this.rect.height = EditorGUIUtility.singleLineHeight; + } + + private Rect rect; + + public override void Draw() + { + base.Draw(); + + MoveRectDownOneLine(); + } + + protected override void DrawPropertyWithLabel() + { + EditorGUI.PropertyField(rect, iterator); + } + protected override void DrawProperty() + { + EditorGUI.PropertyField(rect, iterator, GUIContent.none); + } + + private void MoveRectDownOneLine() + { + rect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing; + } + } +} diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyDrawIterator.cs.meta b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyDrawIterator.cs.meta new file mode 100644 index 0000000..a4209dd --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyDrawIterator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 84571e0d376f3e94488f3a1d1d97a6e3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyDrawIteratorLayout.cs b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyDrawIteratorLayout.cs new file mode 100644 index 0000000..4172620 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyDrawIteratorLayout.cs @@ -0,0 +1,23 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEditor; + +namespace ScriptableObjectArchitecture.Editor +{ + public class PropertyDrawIteratorLayout : BasePropertyDrawIterator + { + public PropertyDrawIteratorLayout(SerializedProperty property, bool drawLabel) : base(property, drawLabel) + { + } + + protected override void DrawPropertyWithLabel() + { + EditorGUILayout.PropertyField(iterator); + } + protected override void DrawProperty() + { + EditorGUILayout.PropertyField(iterator, GUIContent.none); + } + } +} diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyDrawIteratorLayout.cs.meta b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyDrawIteratorLayout.cs.meta new file mode 100644 index 0000000..6d9b1c1 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyDrawIteratorLayout.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ea8d95152194b994a955d0f54d3533d3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyIterator.cs b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyIterator.cs new file mode 100644 index 0000000..05a8bf0 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyIterator.cs @@ -0,0 +1,88 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEditor; + +namespace ScriptableObjectArchitecture.Editor +{ + public class PropertyIterator : IPropertyIterator + { + public PropertyIterator(SerializedProperty property) + { + iterator = property.Copy(); + endProperty = iterator.GetEndProperty(); + + if (iterator.propertyType == SerializedPropertyType.Generic) + iterator.NextVisible(true); + } + + protected readonly SerializedProperty iterator; + protected readonly SerializedProperty endProperty; + + private bool consumeChildren; + private int parentDepth; + + public virtual bool Next() + { + bool nextVisible = false; + if(IsSingleLine(iterator)) + { + parentDepth = iterator.depth; + nextVisible = iterator.NextVisible(false); + } + else + { + nextVisible = iterator.NextVisible(true); + } + + if (!CanDraw()) + return false; + + if(nextVisible) + { + if (iterator.propertyType == SerializedPropertyType.Generic) + nextVisible = iterator.NextVisible(true); + } + + return nextVisible && CanDraw(); + } + public virtual void End() + { + } + private void UpdateState(SerializedProperty property) + { + if (IsSingleLine(iterator)) + { + parentDepth = iterator.depth; + consumeChildren = true; + } + } + private bool CanDraw() + { + return !SerializedProperty.EqualContents(iterator, endProperty); + } + private bool IsSingleLine(SerializedProperty property) + { + switch (property.propertyType) + { + case SerializedPropertyType.Vector3: + case SerializedPropertyType.Vector2: + case SerializedPropertyType.Vector3Int: + case SerializedPropertyType.Vector2Int: + case SerializedPropertyType.Vector4: + case SerializedPropertyType.Quaternion: + case SerializedPropertyType.Rect: + case SerializedPropertyType.RectInt: + case SerializedPropertyType.Bounds: + case SerializedPropertyType.BoundsInt: + return true; + } + + return false; + } + private bool NextVisible() + { + return iterator.NextVisible(true); + } + } +} diff --git a/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyIterator.cs.meta b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyIterator.cs.meta new file mode 100644 index 0000000..d898e88 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Generic Property Drawer/PropertyIterator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2560cbd4956dcea459e5f964aafa6752 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons.meta b/Architecture/ScriptableObjects/Editor/Icons.meta new file mode 100644 index 0000000..9ee81c2 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 56bc5665f2dbfe5449d30d21372a52c0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections.meta new file mode 100644 index 0000000..04137d6 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0218549d775058142a6f084addcd5dc7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/AnimationCurveCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/AnimationCurveCollectionIcon.png new file mode 100644 index 0000000..78976f4 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/AnimationCurveCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/AnimationCurveCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/AnimationCurveCollectionIcon.png.meta new file mode 100644 index 0000000..d74edab --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/AnimationCurveCollectionIcon.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: c5b62729a840f56448ed99e6fee68b6e +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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 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/Architecture/ScriptableObjects/Editor/Icons/Collections/AudioClipCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/AudioClipCollectionIcon.png new file mode 100644 index 0000000..ae792e4 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/AudioClipCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/AudioClipCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/AudioClipCollectionIcon.png.meta new file mode 100644 index 0000000..614d520 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/AudioClipCollectionIcon.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: f305724bfe41a0241b47fbc4efcdd6d6 +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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 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/Architecture/ScriptableObjects/Editor/Icons/Collections/BoolCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/BoolCollectionIcon.png new file mode 100644 index 0000000..cccf51b Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/BoolCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/BoolCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/BoolCollectionIcon.png.meta new file mode 100644 index 0000000..27102e3 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/BoolCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: d4d11961dbf1cc64bae0ef7f13dc0ed7 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/ByteCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/ByteCollectionIcon.png new file mode 100644 index 0000000..06c329b Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/ByteCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/ByteCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/ByteCollectionIcon.png.meta new file mode 100644 index 0000000..cab92f8 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/ByteCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 824f6df5e20a8e54ebdcf1293a4d1783 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/CharCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/CharCollectionIcon.png new file mode 100644 index 0000000..a9d92ce Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/CharCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/CharCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/CharCollectionIcon.png.meta new file mode 100644 index 0000000..341d7a3 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/CharCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: ab7acc2ba41f8d24597f973d09b3a13b +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/ColorCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/ColorCollectionIcon.png new file mode 100644 index 0000000..0738001 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/ColorCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/ColorCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/ColorCollectionIcon.png.meta new file mode 100644 index 0000000..333fa2e --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/ColorCollectionIcon.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 1067bbf7144445045982a772e570db4c +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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 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/Architecture/ScriptableObjects/Editor/Icons/Collections/DoubleCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/DoubleCollectionIcon.png new file mode 100644 index 0000000..6415d60 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/DoubleCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/DoubleCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/DoubleCollectionIcon.png.meta new file mode 100644 index 0000000..603b424 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/DoubleCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: a7e3ab68e5b9b2d4796e3a138b43e81b +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/FloatCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/FloatCollectionIcon.png new file mode 100644 index 0000000..f5dfc8c Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/FloatCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/FloatCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/FloatCollectionIcon.png.meta new file mode 100644 index 0000000..5f660b9 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/FloatCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 090c91e3b1c62cd4188ca24b83260a43 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/GameObjectCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/GameObjectCollectionIcon.png new file mode 100644 index 0000000..ffa2ee9 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/GameObjectCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/GameObjectCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/GameObjectCollectionIcon.png.meta new file mode 100644 index 0000000..544c0d6 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/GameObjectCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 016eddd7ec2347a41b4b265778d9501d +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/IntCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/IntCollectionIcon.png new file mode 100644 index 0000000..7110934 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/IntCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/IntCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/IntCollectionIcon.png.meta new file mode 100644 index 0000000..ca2cac6 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/IntCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: f3ef3e85511a9cd4f8868d3a7c752bd4 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/LongCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/LongCollectionIcon.png new file mode 100644 index 0000000..648674c Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/LongCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/LongCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/LongCollectionIcon.png.meta new file mode 100644 index 0000000..c3630fd --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/LongCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: dfebd677c27ca5543b6ffa552f8f4538 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/ObjectCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/ObjectCollectionIcon.png new file mode 100644 index 0000000..732bb9a Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/ObjectCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/ObjectCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/ObjectCollectionIcon.png.meta new file mode 100644 index 0000000..fed97c1 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/ObjectCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 1a7cfceb598958d4588af67b5592b54f +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/QuaternionCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/QuaternionCollectionIcon.png new file mode 100644 index 0000000..f055ab6 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/QuaternionCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/QuaternionCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/QuaternionCollectionIcon.png.meta new file mode 100644 index 0000000..3ca5578 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/QuaternionCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 039e9190b2371d84ab3d8c3b9ce65380 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: d81cbebdef6dc434cbd8703c18f09980 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/SceneCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/SceneCollectionIcon.png new file mode 100644 index 0000000..6b699d7 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/SceneCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/SceneCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/SceneCollectionIcon.png.meta new file mode 100644 index 0000000..cdbc0de --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/SceneCollectionIcon.png.meta @@ -0,0 +1,121 @@ +fileFormatVersion: 2 +guid: 2914869b4bf78e2498ede5504e93b705 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/ShortCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/ShortCollectionIcon.png new file mode 100644 index 0000000..bd98cf4 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/ShortCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/ShortCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/ShortCollectionIcon.png.meta new file mode 100644 index 0000000..1b14915 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/ShortCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: c0a478b6dd67927488ed74dba04f5eb2 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/SignedByteCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/SignedByteCollectionIcon.png new file mode 100644 index 0000000..ee64fa7 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/SignedByteCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/SignedByteCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/SignedByteCollectionIcon.png.meta new file mode 100644 index 0000000..25438b7 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/SignedByteCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 00bbbbfeeb8421343be2a4d0325288ca +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/StringCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/StringCollectionIcon.png new file mode 100644 index 0000000..bdb06f2 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/StringCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/StringCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/StringCollectionIcon.png.meta new file mode 100644 index 0000000..9364e9c --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/StringCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: f3400829b3bc23a4a87d7b8bf425bfd3 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedIntCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedIntCollectionIcon.png new file mode 100644 index 0000000..92a6474 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedIntCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedIntCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedIntCollectionIcon.png.meta new file mode 100644 index 0000000..434c002 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedIntCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 87156f2d93700f84a8a38e414e8d312f +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedLongCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedLongCollectionIcon.png new file mode 100644 index 0000000..33a4567 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedLongCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedLongCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedLongCollectionIcon.png.meta new file mode 100644 index 0000000..7ac4dcb --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedLongCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 2aa2a1d7b94a54748b43a4093426c8f6 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedShortCollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedShortCollectionIcon.png new file mode 100644 index 0000000..f99ded6 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedShortCollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedShortCollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedShortCollectionIcon.png.meta new file mode 100644 index 0000000..a08d579 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/UnsignedShortCollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 2716b51a57087c34db2b9b6fa1523f93 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector2CollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector2CollectionIcon.png new file mode 100644 index 0000000..5f2e003 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector2CollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector2CollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector2CollectionIcon.png.meta new file mode 100644 index 0000000..3270c41 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector2CollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 8cbf47eb8d6a6734799ebc975a1ed553 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: ba5501c2b21034d49bc52f264699db22 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector3CollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector3CollectionIcon.png new file mode 100644 index 0000000..3a4b9da Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector3CollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector3CollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector3CollectionIcon.png.meta new file mode 100644 index 0000000..439f470 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector3CollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 14d8d52dcb7b258409d4f6447738836e +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 1defa0cc613d2ae47bf7c37bf807e859 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector4CollectionIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector4CollectionIcon.png new file mode 100644 index 0000000..b8bb3c9 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector4CollectionIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector4CollectionIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector4CollectionIcon.png.meta new file mode 100644 index 0000000..a7eb744 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Collections/Vector4CollectionIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: f4151cbde4520b1469e166be72ed9aa3 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: a68d4580886f0a8428ae96d270b281cf + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners.meta new file mode 100644 index 0000000..ac9c723 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5d7fd466ecedbc14b9060a01c8e4c788 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/AudioClipGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/AudioClipGameEventListenerIcon.png new file mode 100644 index 0000000..b76e1ea Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/AudioClipGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/AudioClipGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/AudioClipGameEventListenerIcon.png.meta new file mode 100644 index 0000000..5d8463a --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/AudioClipGameEventListenerIcon.png.meta @@ -0,0 +1,103 @@ +fileFormatVersion: 2 +guid: 36a2235e5afe05546bc4fec9c7e453c4 +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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + 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/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/BoolGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/BoolGameEventListenerIcon.png new file mode 100644 index 0000000..2ed9b87 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/BoolGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/BoolGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/BoolGameEventListenerIcon.png.meta new file mode 100644 index 0000000..d01dd0c --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/BoolGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 0a7ed637e2dd165478285bafdb1250e6 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ByteGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ByteGameEventListenerIcon.png new file mode 100644 index 0000000..177eefb Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ByteGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ByteGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ByteGameEventListenerIcon.png.meta new file mode 100644 index 0000000..db092e6 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ByteGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 1366bcc91c88f8d49af86093a00675ca +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/CharGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/CharGameEventListenerIcon.png new file mode 100644 index 0000000..dba848d Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/CharGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/CharGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/CharGameEventListenerIcon.png.meta new file mode 100644 index 0000000..44a2f35 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/CharGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 7e74d7e3dbfe03141aaabb8bec5594dd +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/DoubleGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/DoubleGameEventListenerIcon.png new file mode 100644 index 0000000..319f7fd Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/DoubleGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/DoubleGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/DoubleGameEventListenerIcon.png.meta new file mode 100644 index 0000000..d87baec --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/DoubleGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 93a3623d2d3a46340ab7381b57d8bb5e +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/FloatGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/FloatGameEventListenerIcon.png new file mode 100644 index 0000000..77b34d1 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/FloatGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/FloatGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/FloatGameEventListenerIcon.png.meta new file mode 100644 index 0000000..84ce3c6 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/FloatGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 371b4f30d6038eb469aee486b44a7477 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/GameObjectGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/GameObjectGameEventListenerIcon.png new file mode 100644 index 0000000..0696e0e Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/GameObjectGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/GameObjectGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/GameObjectGameEventListenerIcon.png.meta new file mode 100644 index 0000000..7c2e248 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/GameObjectGameEventListenerIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: fea60d815ebdac44b8d8e6caff43ff47 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/IntegerGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/IntegerGameEventListenerIcon.png new file mode 100644 index 0000000..dbd00db Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/IntegerGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/IntegerGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/IntegerGameEventListenerIcon.png.meta new file mode 100644 index 0000000..78ea753 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/IntegerGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: ec13abd4acac26f498ad89c93b09cf0d +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/LongGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/LongGameEventListenerIcon.png new file mode 100644 index 0000000..0507bea Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/LongGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/LongGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/LongGameEventListenerIcon.png.meta new file mode 100644 index 0000000..85a946d --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/LongGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 5302bfcf6cc90f644b97ab8014833aac +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ObjectGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ObjectGameEventListenerIcon.png new file mode 100644 index 0000000..3f552c9 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ObjectGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ObjectGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ObjectGameEventListenerIcon.png.meta new file mode 100644 index 0000000..069d0b0 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ObjectGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 982f0ec9d767e9049ac1fdca7b8cdd1e +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/QuaternionGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/QuaternionGameEventListenerIcon.png new file mode 100644 index 0000000..bf17125 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/QuaternionGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/QuaternionGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/QuaternionGameEventListenerIcon.png.meta new file mode 100644 index 0000000..7c89b1b --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/QuaternionGameEventListenerIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 16810fefe2a316d43bfcc74d75303450 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: de4b04abebeb0024a88a7392aec52862 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ShortGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ShortGameEventListenerIcon.png new file mode 100644 index 0000000..56cbf82 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ShortGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ShortGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ShortGameEventListenerIcon.png.meta new file mode 100644 index 0000000..ac88563 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/ShortGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 22351f9129a3e6c4cbfde628035c9536 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/SignedByteGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/SignedByteGameEventListenerIcon.png new file mode 100644 index 0000000..c3357b5 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/SignedByteGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/SignedByteGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/SignedByteGameEventListenerIcon.png.meta new file mode 100644 index 0000000..3c5ad28 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/SignedByteGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 8ee0d00280544c942bc17b01d58957e0 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/StringGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/StringGameEventListenerIcon.png new file mode 100644 index 0000000..b73d40b Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/StringGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/StringGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/StringGameEventListenerIcon.png.meta new file mode 100644 index 0000000..74726c9 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/StringGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: e97e7e05814646c42bea6f15dde77ec7 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedIntGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedIntGameEventListenerIcon.png new file mode 100644 index 0000000..8eec1c2 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedIntGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedIntGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedIntGameEventListenerIcon.png.meta new file mode 100644 index 0000000..5c354e5 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedIntGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 8a31b7cfff051734e89376e9ec642e00 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedLongGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedLongGameEventListenerIcon.png new file mode 100644 index 0000000..eb9cce6 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedLongGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedLongGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedLongGameEventListenerIcon.png.meta new file mode 100644 index 0000000..915017e --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedLongGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 3abdecaad047e2843a1ef76f56b5bc49 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedShortGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedShortGameEventListenerIcon.png new file mode 100644 index 0000000..80b4fd2 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedShortGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedShortGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedShortGameEventListenerIcon.png.meta new file mode 100644 index 0000000..5f63ec4 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/UnsignedShortGameEventListenerIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 75495cf3dcb9a53418f9ee3d6dd765bd +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector2GameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector2GameEventListenerIcon.png new file mode 100644 index 0000000..edea67f Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector2GameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector2GameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector2GameEventListenerIcon.png.meta new file mode 100644 index 0000000..77c9ca3 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector2GameEventListenerIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 37ea5f5d3b06f5d4ab8fc2ecbcec891b +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: fddc1d2340a266f4fb81f1bddb5151bf + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector3GameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector3GameEventListenerIcon.png new file mode 100644 index 0000000..4883615 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector3GameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector3GameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector3GameEventListenerIcon.png.meta new file mode 100644 index 0000000..4aac3c4 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector3GameEventListenerIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 93f8ba988ec5d26429a948bdde52d41b +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 0faed3a5a3c4d9049b3faccb29714007 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector4GameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector4GameEventListenerIcon.png new file mode 100644 index 0000000..b623332 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector4GameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector4GameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector4GameEventListenerIcon.png.meta new file mode 100644 index 0000000..6de899b --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/Vector4GameEventListenerIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 5aaf554fc7cbc374696da1e7fef6f36d +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 090c7f661ad14534dacea738af60061a + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/VoidGameEventListenerIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/VoidGameEventListenerIcon.png new file mode 100644 index 0000000..0c9d2c9 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/VoidGameEventListenerIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/VoidGameEventListenerIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/VoidGameEventListenerIcon.png.meta new file mode 100644 index 0000000..1e89fe3 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Event Listeners/VoidGameEventListenerIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 07bf2c049b0c8c4429bb340d0e8ced0a +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events.meta new file mode 100644 index 0000000..fd5d657 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ce9c117a5ee7d3849bbba5fb11cc12ba +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/AudioClipGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/AudioClipGameEventIcon.png new file mode 100644 index 0000000..208d897 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/AudioClipGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/AudioClipGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/AudioClipGameEventIcon.png.meta new file mode 100644 index 0000000..0d4cda8 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/AudioClipGameEventIcon.png.meta @@ -0,0 +1,103 @@ +fileFormatVersion: 2 +guid: 0215332f5b2955c4680cdc966f6d9270 +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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + 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/Architecture/ScriptableObjects/Editor/Icons/Game Events/BoolGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/BoolGameEventIcon.png new file mode 100644 index 0000000..7ef5de2 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/BoolGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/BoolGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/BoolGameEventIcon.png.meta new file mode 100644 index 0000000..47f445d --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/BoolGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 346c4474e35a8914295939193925b5f3 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/ByteGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/ByteGameEventIcon.png new file mode 100644 index 0000000..cf2a96e Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/ByteGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/ByteGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/ByteGameEventIcon.png.meta new file mode 100644 index 0000000..da32a36 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/ByteGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 261c21d547ee3ca48b6243d4316763d7 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/CharGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/CharGameEventIcon.png new file mode 100644 index 0000000..f1ef6c0 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/CharGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/CharGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/CharGameEventIcon.png.meta new file mode 100644 index 0000000..7cae273 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/CharGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 51b477982b434b240ac6bd2864fb4e94 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/DoubleGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/DoubleGameEventIcon.png new file mode 100644 index 0000000..e5f49ea Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/DoubleGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/DoubleGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/DoubleGameEventIcon.png.meta new file mode 100644 index 0000000..b1984dd --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/DoubleGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 85a0261a15fb1d34b9da3b33673abe91 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/FloatGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/FloatGameEventIcon.png new file mode 100644 index 0000000..6361535 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/FloatGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/FloatGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/FloatGameEventIcon.png.meta new file mode 100644 index 0000000..9d7f709 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/FloatGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 0ee88e5fd0ae9db4ebb33c80616911b4 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/GameObjectGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/GameObjectGameEventIcon.png new file mode 100644 index 0000000..b55732f Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/GameObjectGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/GameObjectGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/GameObjectGameEventIcon.png.meta new file mode 100644 index 0000000..0c48d26 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/GameObjectGameEventIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 326c0a60277b55744a9dfb77fb6a9a47 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/IntegerGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/IntegerGameEventIcon.png new file mode 100644 index 0000000..cbab864 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/IntegerGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/IntegerGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/IntegerGameEventIcon.png.meta new file mode 100644 index 0000000..b8f24e1 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/IntegerGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: b907a9c0990bd324799f845c0e473882 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/LongGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/LongGameEventIcon.png new file mode 100644 index 0000000..3349f37 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/LongGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/LongGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/LongGameEventIcon.png.meta new file mode 100644 index 0000000..e53bbee --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/LongGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 05d05b25c35be304c830ae58521193f9 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/ObjectGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/ObjectGameEventIcon.png new file mode 100644 index 0000000..263ef93 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/ObjectGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/ObjectGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/ObjectGameEventIcon.png.meta new file mode 100644 index 0000000..71b82b2 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/ObjectGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: b6ba1c484fe92cf4ca131d9a900eb7da +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/QuaternionGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/QuaternionGameEventIcon.png new file mode 100644 index 0000000..b5381e7 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/QuaternionGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/QuaternionGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/QuaternionGameEventIcon.png.meta new file mode 100644 index 0000000..defb1db --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/QuaternionGameEventIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 649cb6e3d04877d44838fd8093210cde +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: e3350abd8a0daf34db6fd1c07da1e2b5 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/ShortGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/ShortGameEventIcon.png new file mode 100644 index 0000000..41d8159 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/ShortGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/ShortGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/ShortGameEventIcon.png.meta new file mode 100644 index 0000000..ec2bbd8 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/ShortGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: ae8f79ed377703549991ef63a3b5daec +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/SignedByteGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/SignedByteGameEventIcon.png new file mode 100644 index 0000000..37f131e Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/SignedByteGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/SignedByteGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/SignedByteGameEventIcon.png.meta new file mode 100644 index 0000000..e821c1a --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/SignedByteGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 41126a9a6ed026a4bb723749749d3a16 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/StringGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/StringGameEventIcon.png new file mode 100644 index 0000000..7d05c7c Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/StringGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/StringGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/StringGameEventIcon.png.meta new file mode 100644 index 0000000..c958cdf --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/StringGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: a258685c72c006742a28776d98cc662e +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedIntegerGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedIntegerGameEventIcon.png new file mode 100644 index 0000000..fe7b5d7 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedIntegerGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedIntegerGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedIntegerGameEventIcon.png.meta new file mode 100644 index 0000000..3752421 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedIntegerGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: d09943ccbb1d70f4f9555806dacec150 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedLongGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedLongGameEventIcon.png new file mode 100644 index 0000000..0da2916 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedLongGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedLongGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedLongGameEventIcon.png.meta new file mode 100644 index 0000000..4d6e1ef --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedLongGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 1643f7d1398fa9a408e6ae88fb0d7309 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedShortGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedShortGameEventIcon.png new file mode 100644 index 0000000..fade138 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedShortGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedShortGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedShortGameEventIcon.png.meta new file mode 100644 index 0000000..b3744c8 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/UnsignedShortGameEventIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 5d72435736900dc41a79e248ea04ed82 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector2GameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector2GameEventIcon.png new file mode 100644 index 0000000..d4302fd Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector2GameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector2GameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector2GameEventIcon.png.meta new file mode 100644 index 0000000..8d2f415 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector2GameEventIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 0741d3e29c24e99459047844e03d4ea0 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: e968b5183bd97254289159d3a017bd05 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector3GameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector3GameEventIcon.png new file mode 100644 index 0000000..04407c2 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector3GameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector3GameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector3GameEventIcon.png.meta new file mode 100644 index 0000000..920dca3 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector3GameEventIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 080a7a46359356e4583460b1fe0e33a6 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 74616ca3739a6714bb6e68c6f2edae5c + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector4GameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector4GameEventIcon.png new file mode 100644 index 0000000..2ff17ae Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector4GameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector4GameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector4GameEventIcon.png.meta new file mode 100644 index 0000000..ff8c81c --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/Vector4GameEventIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 754d99873c117874bbec827216ab237c +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: a618740de934dbb4d8432867cf2aadaf + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/VoidGameEventIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Game Events/VoidGameEventIcon.png new file mode 100644 index 0000000..70299a2 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Game Events/VoidGameEventIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Game Events/VoidGameEventIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Game Events/VoidGameEventIcon.png.meta new file mode 100644 index 0000000..be64ee9 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Game Events/VoidGameEventIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 046d8c41d9c7fd746aeab61a9386572e +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Template.psd b/Architecture/ScriptableObjects/Editor/Icons/Template.psd new file mode 100644 index 0000000..be524af Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Template.psd differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Template.psd.meta b/Architecture/ScriptableObjects/Editor/Icons/Template.psd.meta new file mode 100644 index 0000000..2c33109 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Template.psd.meta @@ -0,0 +1,84 @@ +fileFormatVersion: 2 +guid: aeadebe6f9f7409448f0e14b657893bb +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapU: -1 + wrapV: -1 + wrapW: -1 + 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: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables.meta new file mode 100644 index 0000000..ed517d7 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 732267f6dafd88e47b94d19322628622 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/AnimationCurveVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/AnimationCurveVariableIcon.png new file mode 100644 index 0000000..ac5e04b Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/AnimationCurveVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/AnimationCurveVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/AnimationCurveVariableIcon.png.meta new file mode 100644 index 0000000..67b70d8 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/AnimationCurveVariableIcon.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 90a6a74456e4a2d43a54b14515ea4e93 +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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 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/Architecture/ScriptableObjects/Editor/Icons/Variables/AudioClipVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/AudioClipVariableIcon.png new file mode 100644 index 0000000..1b258b0 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/AudioClipVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/AudioClipVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/AudioClipVariableIcon.png.meta new file mode 100644 index 0000000..7b3116e --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/AudioClipVariableIcon.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 790f683b8bdc21549844ccedf9d4af47 +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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 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/Architecture/ScriptableObjects/Editor/Icons/Variables/BoolVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/BoolVariableIcon.png new file mode 100644 index 0000000..33479ae Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/BoolVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/BoolVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/BoolVariableIcon.png.meta new file mode 100644 index 0000000..c5c775a --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/BoolVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 9415e294b3c3de24a9395373a02b5381 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/ByteVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/ByteVariableIcon.png new file mode 100644 index 0000000..9d59d21 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/ByteVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/ByteVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/ByteVariableIcon.png.meta new file mode 100644 index 0000000..bd17827 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/ByteVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: f1f8f2ede6e8864479d57c5e218a4ae0 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/CharVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/CharVariableIcon.png new file mode 100644 index 0000000..63c514d Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/CharVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/CharVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/CharVariableIcon.png.meta new file mode 100644 index 0000000..6dc7fa1 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/CharVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 9c5ff1f386b89d5428acb123510d9d83 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/ColorVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/ColorVariableIcon.png new file mode 100644 index 0000000..4a5016e Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/ColorVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/ColorVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/ColorVariableIcon.png.meta new file mode 100644 index 0000000..6c4bc07 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/ColorVariableIcon.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: ec6c4534cdd1d2544ad50302d7cfae05 +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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 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/Architecture/ScriptableObjects/Editor/Icons/Variables/DoubleVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/DoubleVariableIcon.png new file mode 100644 index 0000000..58f8c62 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/DoubleVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/DoubleVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/DoubleVariableIcon.png.meta new file mode 100644 index 0000000..38a40ba --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/DoubleVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 8c542e5e7854e2d4dbae9415a645693c +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/FloatVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/FloatVariableIcon.png new file mode 100644 index 0000000..bf50c29 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/FloatVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/FloatVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/FloatVariableIcon.png.meta new file mode 100644 index 0000000..1f04f2c --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/FloatVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 73168a42c0edd8e429fbbd32b0d928db +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/GameObjectVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/GameObjectVariableIcon.png new file mode 100644 index 0000000..c0283bd Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/GameObjectVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/GameObjectVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/GameObjectVariableIcon.png.meta new file mode 100644 index 0000000..8c68a20 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/GameObjectVariableIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: a3544c3af310c8f44a5f4947b40c0d58 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/IntVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/IntVariableIcon.png new file mode 100644 index 0000000..0bb37ab Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/IntVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/IntVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/IntVariableIcon.png.meta new file mode 100644 index 0000000..19553e3 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/IntVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 13e475cb7912eeb4894a465fb6731c8c +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/LayerMaskVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/LayerMaskVariableIcon.png new file mode 100644 index 0000000..a566678 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/LayerMaskVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/LayerMaskVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/LayerMaskVariableIcon.png.meta new file mode 100644 index 0000000..78cc07f --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/LayerMaskVariableIcon.png.meta @@ -0,0 +1,101 @@ +fileFormatVersion: 2 +guid: 773e015a7b5b1d04b90d89056380b2dd +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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 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/Architecture/ScriptableObjects/Editor/Icons/Variables/LongVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/LongVariableIcon.png new file mode 100644 index 0000000..8de2fc0 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/LongVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/LongVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/LongVariableIcon.png.meta new file mode 100644 index 0000000..8b7dc70 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/LongVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 4263932218259524f8182efeb60b2bd8 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/ObjectVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/ObjectVariableIcon.png new file mode 100644 index 0000000..af35f28 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/ObjectVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/ObjectVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/ObjectVariableIcon.png.meta new file mode 100644 index 0000000..80590e0 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/ObjectVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: acd051de47773d84f9371e040d45f547 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/QuaternionVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/QuaternionVariableIcon.png new file mode 100644 index 0000000..30e69db Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/QuaternionVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/QuaternionVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/QuaternionVariableIcon.png.meta new file mode 100644 index 0000000..97e76ed --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/QuaternionVariableIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 33979cf2334958d41b7fc53c43132eda +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 68fd2048457c024488f71726afadde08 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/SceneVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/SceneVariableIcon.png new file mode 100644 index 0000000..522e35c Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/SceneVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/SceneVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/SceneVariableIcon.png.meta new file mode 100644 index 0000000..99dfafd --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/SceneVariableIcon.png.meta @@ -0,0 +1,121 @@ +fileFormatVersion: 2 +guid: 9e50d8100875e98459ea1e86d378b9f8 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/ShortVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/ShortVariableIcon.png new file mode 100644 index 0000000..e0a29dc Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/ShortVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/ShortVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/ShortVariableIcon.png.meta new file mode 100644 index 0000000..38b8954 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/ShortVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 3fb47467c61128c46a353baea763fee2 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/SignedByteVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/SignedByteVariableIcon.png new file mode 100644 index 0000000..943dfd4 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/SignedByteVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/SignedByteVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/SignedByteVariableIcon.png.meta new file mode 100644 index 0000000..aeec93d --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/SignedByteVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 16fe4ae2595371a4cbec816a6af044d0 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/StringVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/StringVariableIcon.png new file mode 100644 index 0000000..4fd8646 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/StringVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/StringVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/StringVariableIcon.png.meta new file mode 100644 index 0000000..c6baf99 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/StringVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: d03fb38302613674e9ff6a910ad8ae52 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedIntVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedIntVariableIcon.png new file mode 100644 index 0000000..e7c7370 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedIntVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedIntVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedIntVariableIcon.png.meta new file mode 100644 index 0000000..3eb18d7 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedIntVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: f014dd179639d1e46a063ea6f84ee6d2 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedLongVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedLongVariableIcon.png new file mode 100644 index 0000000..b47a9a3 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedLongVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedLongVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedLongVariableIcon.png.meta new file mode 100644 index 0000000..d8e779d --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedLongVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 10bd55e7ce1b4a649aa36f7defd21160 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedShortVariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedShortVariableIcon.png new file mode 100644 index 0000000..2a2bd79 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedShortVariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedShortVariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedShortVariableIcon.png.meta new file mode 100644 index 0000000..4e9e4da --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/UnsignedShortVariableIcon.png.meta @@ -0,0 +1,95 @@ +fileFormatVersion: 2 +guid: 0e386ea6d4343594ca7fcd5e404ce74b +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + 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: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector2VariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector2VariableIcon.png new file mode 100644 index 0000000..d4b6de8 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector2VariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector2VariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector2VariableIcon.png.meta new file mode 100644 index 0000000..3dd7784 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector2VariableIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 1149df5a9ef735d46a0403a67e3f9c6c +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 6bb780cbb091b8646aa0a64a27f25ed3 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector3VariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector3VariableIcon.png new file mode 100644 index 0000000..ee5f9b1 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector3VariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector3VariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector3VariableIcon.png.meta new file mode 100644 index 0000000..801c070 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector3VariableIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 330e0b02b1aba674ea99f0c98a4c582c +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 09b22c6ecd7cbf249b26cbe40be967e4 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector4VariableIcon.png b/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector4VariableIcon.png new file mode 100644 index 0000000..95355c0 Binary files /dev/null and b/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector4VariableIcon.png differ diff --git a/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector4VariableIcon.png.meta b/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector4VariableIcon.png.meta new file mode 100644 index 0000000..1aa05d7 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Icons/Variables/Vector4VariableIcon.png.meta @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: ce89773a8f26fff4daed8453bd00649e +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + 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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: -100 + 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: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 79d5fa94b8e066b419e2df106c8e06d9 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Inspectors.meta b/Architecture/ScriptableObjects/Editor/Inspectors.meta new file mode 100644 index 0000000..21eec87 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a66b95a19f5e0ff43b513af040c3fab7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/BaseGameEventEditor.cs b/Architecture/ScriptableObjects/Editor/Inspectors/BaseGameEventEditor.cs new file mode 100644 index 0000000..582b5a4 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/BaseGameEventEditor.cs @@ -0,0 +1,28 @@ +using UnityEditor; + +namespace ScriptableObjectArchitecture.Editor +{ + public abstract class BaseGameEventEditor : UnityEditor.Editor + { + private IStackTraceObject Target { get { return (IStackTraceObject)target; } } + + private StackTrace _stackTrace; + + protected abstract void DrawRaiseButton(); + + protected virtual void OnEnable() + { + _stackTrace = new StackTrace(Target); + _stackTrace.OnRepaint.AddListener(Repaint); + } + public override void OnInspectorGUI() + { + DrawRaiseButton(); + + if (!SOArchitecturePreferences.IsDebugEnabled) + EditorGUILayout.HelpBox("Debug mode disabled\nStack traces will not be filed on raise!", MessageType.Warning); + + _stackTrace.Draw(); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/BaseGameEventEditor.cs.meta b/Architecture/ScriptableObjects/Editor/Inspectors/BaseGameEventEditor.cs.meta new file mode 100644 index 0000000..be9abb2 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/BaseGameEventEditor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7b56d3f32e837fa4f9f2934eae916388 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/BaseGameEventListenerEditor.cs b/Architecture/ScriptableObjects/Editor/Inspectors/BaseGameEventListenerEditor.cs new file mode 100644 index 0000000..bd0c297 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/BaseGameEventListenerEditor.cs @@ -0,0 +1,73 @@ +using UnityEditor; +using UnityEngine; + +namespace ScriptableObjectArchitecture.Editor +{ + public abstract class BaseGameEventListenerEditor : UnityEditor.Editor + { + private IStackTraceObject Target { get { return (IStackTraceObject)target; } } + + private StackTrace _stackTrace; + private SerializedProperty _event; + private SerializedProperty _debugColor; + private SerializedProperty _response; + private SerializedProperty _enableDebug; + private SerializedProperty _showDebugFields; + + protected abstract void DrawRaiseButton(); + + protected virtual void OnEnable() + { + _stackTrace = new StackTrace(Target, true); + _stackTrace.OnRepaint.AddListener(Repaint); + + _event = serializedObject.FindProperty("_event"); + _debugColor = serializedObject.FindProperty("_debugColor"); + _response = serializedObject.FindProperty("_response"); + _enableDebug = serializedObject.FindProperty("_enableGizmoDebugging"); + _showDebugFields = serializedObject.FindProperty("_showDebugFields"); + } + public override void OnInspectorGUI() + { + EditorGUILayout.ObjectField(_event, new GUIContent("Event", "Event which will trigger the response")); + EditorGUILayout.PropertyField(_response, new GUIContent("Response")); + + _showDebugFields.boolValue = EditorGUILayout.Foldout(_showDebugFields.boolValue, new GUIContent("Show Debug Fields")); + if (_showDebugFields.boolValue) + { + DrawDebugging(); + } + + serializedObject.ApplyModifiedProperties(); + } + private void DrawDebugging() + { + EditorGUILayout.LabelField("Callback Debugging", EditorStyles.boldLabel); + using (new EditorGUI.IndentLevelScope()) + { + DrawRaiseButton(); + + _stackTrace.Draw(); + } + + + EditorGUILayout.Space(); + EditorGUILayout.Space(); + + + EditorGUILayout.LabelField("Gizmo Debugging", EditorStyles.boldLabel); + using (new EditorGUI.IndentLevelScope()) + { + EditorGUILayout.PropertyField(_enableDebug, new GUIContent("Enable Gizmo Debugging")); + + using (new EditorGUI.DisabledGroupScope(_enableDebug.boolValue)) + { + EditorGUILayout.PropertyField(_debugColor, new GUIContent("Debug Color", "Color used to draw debug gizmos in the scene")); + } + } + + + EditorGUILayout.Space(); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/BaseGameEventListenerEditor.cs.meta b/Architecture/ScriptableObjects/Editor/Inspectors/BaseGameEventListenerEditor.cs.meta new file mode 100644 index 0000000..5eb53e2 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/BaseGameEventListenerEditor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 80cc7e4f2beebef4e9d008c1d18a5ffa +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/BaseVariableEditor.cs b/Architecture/ScriptableObjects/Editor/Inspectors/BaseVariableEditor.cs new file mode 100644 index 0000000..0a2fcd0 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/BaseVariableEditor.cs @@ -0,0 +1,109 @@ +using UnityEngine; +using UnityEditor; +using UnityEditor.AnimatedValues; + +namespace ScriptableObjectArchitecture.Editor +{ + [CustomEditor(typeof(BaseVariable<>), true)] + public class BaseVariableEditor : UnityEditor.Editor + { + private BaseVariable Target { get { return (BaseVariable)target; } } + protected bool IsClampable { get { return Target.Clampable; } } + protected bool IsClamped { get { return Target.IsClamped; } } + + private SerializedProperty _valueProperty; + private SerializedProperty _readOnly; + private SerializedProperty _raiseWarning; + private SerializedProperty _isClamped; + private SerializedProperty _minValueProperty; + private SerializedProperty _maxValueProperty; + private AnimBool _raiseWarningAnimation; + private AnimBool _isClampedVariableAnimation; + + private const string READONLY_TOOLTIP = "Should this value be changable during runtime? Will still be editable in the inspector regardless"; + + protected virtual void OnEnable() + { + _valueProperty = serializedObject.FindProperty("_value"); + _readOnly = serializedObject.FindProperty("_readOnly"); + _raiseWarning = serializedObject.FindProperty("_raiseWarning"); + _isClamped = serializedObject.FindProperty("_isClamped"); + _minValueProperty = serializedObject.FindProperty("_minClampedValue"); + _maxValueProperty = serializedObject.FindProperty("_maxClampedValue"); + + _raiseWarningAnimation = new AnimBool(_readOnly.boolValue); + _raiseWarningAnimation.valueChanged.AddListener(Repaint); + + _isClampedVariableAnimation = new AnimBool(_isClamped.boolValue); + _isClampedVariableAnimation.valueChanged.AddListener(Repaint); + } + public override void OnInspectorGUI() + { + serializedObject.Update(); + + DrawValue(); + + EditorGUILayout.Space(); + + DrawClampedFields(); + DrawReadonlyField(); + } + protected virtual void DrawValue() + { + GenericPropertyDrawer.DrawPropertyDrawerLayout(_valueProperty, Target.Type); + } + protected void DrawClampedFields() + { + if (!IsClampable) + return; + + EditorGUILayout.PropertyField(_isClamped); + _isClampedVariableAnimation.target = _isClamped.boolValue; + + using (var anim = new EditorGUILayout.FadeGroupScope(_isClampedVariableAnimation.faded)) + { + if(anim.visible) + { + using (new EditorGUI.IndentLevelScope()) + { + EditorGUILayout.PropertyField(_minValueProperty); + EditorGUILayout.PropertyField(_maxValueProperty); + } + } + } + + } + protected void DrawReadonlyField() + { + if (IsClampable) + return; + + EditorGUILayout.PropertyField(_readOnly, new GUIContent("Read Only", READONLY_TOOLTIP)); + + _raiseWarningAnimation.target = _readOnly.boolValue; + using (var fadeGroup = new EditorGUILayout.FadeGroupScope(_raiseWarningAnimation.faded)) + { + if (fadeGroup.visible) + { + EditorGUI.indentLevel++; + EditorGUILayout.PropertyField(_raiseWarning); + EditorGUI.indentLevel--; + } + } + } + } + [CustomEditor(typeof(BaseVariable<,>), true)] + public class BaseVariableWithEventEditor : BaseVariableEditor + { + public override void OnInspectorGUI() + { + base.OnInspectorGUI(); + + EditorGUILayout.Space(); + + EditorGUILayout.PropertyField(serializedObject.FindProperty("_event")); + + serializedObject.ApplyModifiedProperties(); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/BaseVariableEditor.cs.meta b/Architecture/ScriptableObjects/Editor/Inspectors/BaseVariableEditor.cs.meta new file mode 100644 index 0000000..7db9645 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/BaseVariableEditor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f243cdc9db665264e895a05013c879d8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/CollectionEditor.cs b/Architecture/ScriptableObjects/Editor/Inspectors/CollectionEditor.cs new file mode 100644 index 0000000..82ec369 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/CollectionEditor.cs @@ -0,0 +1,85 @@ +using UnityEditor; +using UnityEngine; +using UnityEditorInternal; + +namespace ScriptableObjectArchitecture.Editor +{ + [CustomEditor(typeof(BaseCollection), true)] + public class CollectionEditor : UnityEditor.Editor + { + private BaseCollection Target { get { return (BaseCollection)target; } } + private SerializedProperty CollectionItemsProperty + { + get { return serializedObject.FindProperty(LIST_PROPERTY_NAME);} + } + + private ReorderableList _reorderableList; + + // UI + private const bool DISABLE_ELEMENTS = false; + private const bool ELEMENT_DRAGGABLE = true; + private const bool LIST_DISPLAY_HEADER = true; + private const bool LIST_DISPLAY_ADD_BUTTON = true; + private const bool LIST_DISPLAY_REMOVE_BUTTON = true; + + private GUIContent _titleGUIContent; + private GUIContent _noPropertyDrawerWarningGUIContent; + + private const string TITLE_FORMAT = "List ({0})"; + private const string NO_PROPERTY_WARNING_FORMAT = "No PropertyDrawer for type [{0}]"; + + // Property Names + private const string LIST_PROPERTY_NAME = "_list"; + + private void OnEnable() + { + _titleGUIContent = new GUIContent(string.Format(TITLE_FORMAT, Target.Type)); + _noPropertyDrawerWarningGUIContent = new GUIContent(string.Format(NO_PROPERTY_WARNING_FORMAT, Target.Type)); + + _reorderableList = new ReorderableList( + serializedObject, + CollectionItemsProperty, + ELEMENT_DRAGGABLE, + LIST_DISPLAY_HEADER, + LIST_DISPLAY_ADD_BUTTON, + LIST_DISPLAY_REMOVE_BUTTON) + { + drawHeaderCallback = DrawHeader, + drawElementCallback = DrawElement, + elementHeightCallback = GetHeight, + }; + } + public override void OnInspectorGUI() + { + EditorGUI.BeginChangeCheck(); + + _reorderableList.DoLayoutList(); + + if (EditorGUI.EndChangeCheck()) + { + serializedObject.ApplyModifiedProperties(); + } + } + private void DrawHeader(Rect rect) + { + EditorGUI.LabelField(rect, _titleGUIContent); + } + private void DrawElement(Rect rect, int index, bool isActive, bool isFocused) + { + rect = SOArchitecture_EditorUtility.GetReorderableListElementFieldRect(rect); + SerializedProperty property = CollectionItemsProperty.GetArrayElementAtIndex(index); + + EditorGUI.BeginDisabledGroup(DISABLE_ELEMENTS); + + GenericPropertyDrawer.DrawPropertyDrawer(rect, property, Target.Type); + + EditorGUI.EndDisabledGroup(); + } + private float GetHeight(int index) + { + SerializedProperty property = CollectionItemsProperty.GetArrayElementAtIndex(index); + + return GenericPropertyDrawer.GetHeight(property, Target.Type) + EditorGUIUtility.standardVerticalSpacing; + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/CollectionEditor.cs.meta b/Architecture/ScriptableObjects/Editor/Inspectors/CollectionEditor.cs.meta new file mode 100644 index 0000000..be84ee7 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/CollectionEditor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7cc9e5685f97fb9499918abd6c22c2c3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/GameEventEditor.cs b/Architecture/ScriptableObjects/Editor/Inspectors/GameEventEditor.cs new file mode 100644 index 0000000..90014cc --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/GameEventEditor.cs @@ -0,0 +1,19 @@ +using UnityEditor; +using UnityEngine; + +namespace ScriptableObjectArchitecture.Editor +{ + [CustomEditor(typeof(GameEventBase), true)] + public sealed class GameEventEditor : BaseGameEventEditor + { + private GameEvent Target { get { return (GameEvent)target; } } + + protected override void DrawRaiseButton() + { + if (GUILayout.Button("Raise")) + { + Target.Raise(); + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/GameEventEditor.cs.meta b/Architecture/ScriptableObjects/Editor/Inspectors/GameEventEditor.cs.meta new file mode 100644 index 0000000..193a804 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/GameEventEditor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 356f2e33ca19ca942910c3a91f662cde +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/GameEventListenerEditor.cs b/Architecture/ScriptableObjects/Editor/Inspectors/GameEventListenerEditor.cs new file mode 100644 index 0000000..5eb4b49 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/GameEventListenerEditor.cs @@ -0,0 +1,26 @@ +using System.Reflection; +using UnityEngine; +using UnityEditor; + +namespace ScriptableObjectArchitecture.Editor +{ + [CustomEditor(typeof(BaseGameEventListener<,>), true)] + public class GameEventListenerEditor : BaseGameEventListenerEditor + { + private MethodInfo _raiseMethod; + + protected override void OnEnable() + { + base.OnEnable(); + + _raiseMethod = target.GetType().BaseType.GetMethod("OnEventRaised"); + } + protected override void DrawRaiseButton() + { + if (GUILayout.Button("Raise")) + { + _raiseMethod.Invoke(target, null); + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/GameEventListenerEditor.cs.meta b/Architecture/ScriptableObjects/Editor/Inspectors/GameEventListenerEditor.cs.meta new file mode 100644 index 0000000..328720f --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/GameEventListenerEditor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6883a8a0a66bc354fa4fc679b9e08ab6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/SceneVariableEditor.cs b/Architecture/ScriptableObjects/Editor/Inspectors/SceneVariableEditor.cs new file mode 100644 index 0000000..0891beb --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/SceneVariableEditor.cs @@ -0,0 +1,58 @@ +using UnityEditor; +using UnityEngine; + +namespace ScriptableObjectArchitecture.Editor +{ + [CustomEditor(typeof(SceneVariable))] + internal sealed class SceneVariableEditor : BaseVariableEditor + { + // UI + private const string SCENE_NOT_ASSIGNED_WARNING = "Please assign a scene as the current serialized values for " + + "the scene do not resolve to an asset in the project."; + private const string SCENE_NOT_IN_BUILD_SETTINGS_WARNING = + "Scene assigned is not currently in the Build Settings"; + private const string SCENE_NOT_ENABLED_IN_BUILD_SETTINGS_WARNING = + "Scene assigned is present in build settings, but not enabled."; + + // Serialized Properties + private const string SCENE_INFO_PROPERTY = "_value"; + + public override void OnInspectorGUI() + { + serializedObject.Update(); + + DrawValue(); + } + protected override void DrawValue() + { + var sceneVariable = (SceneVariable)target; + var sceneInfoProperty = serializedObject.FindProperty(SCENE_INFO_PROPERTY); + if (sceneVariable.Value.Scene == null) + { + EditorGUILayout.HelpBox(SCENE_NOT_ASSIGNED_WARNING, MessageType.Warning); + } + else if (!sceneVariable.Value.IsSceneInBuildSettings) + { + EditorGUILayout.HelpBox(SCENE_NOT_IN_BUILD_SETTINGS_WARNING, MessageType.Warning); + } + else if(!sceneVariable.Value.IsSceneEnabled) + { + EditorGUILayout.HelpBox(SCENE_NOT_ENABLED_IN_BUILD_SETTINGS_WARNING, MessageType.Warning); + } + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(sceneInfoProperty); + if (EditorGUI.EndChangeCheck()) + { + EditorUtility.SetDirty(target); + } + EditorGUILayout.Space(); + EditorGUILayout.Space(); + EditorGUILayout.Space(); + } + + public override bool RequiresConstantRepaint() + { + return true; + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/SceneVariableEditor.cs.meta b/Architecture/ScriptableObjects/Editor/Inspectors/SceneVariableEditor.cs.meta new file mode 100644 index 0000000..93ec2ec --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/SceneVariableEditor.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: c76dd1dc59a44956a549cab1ec2f6905 +timeCreated: 1555320819 \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/StackTrace.cs b/Architecture/ScriptableObjects/Editor/Inspectors/StackTrace.cs new file mode 100644 index 0000000..29103d2 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/StackTrace.cs @@ -0,0 +1,261 @@ +using System.Linq; +using UnityEditor; +using UnityEditor.AnimatedValues; +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture.Editor +{ + public class StackTrace + { + public StackTrace(IStackTraceObject target, bool startCollapsed = false) + { + if (target == null) + throw new System.NullReferenceException(); + + _target = target; + + _collapseAnimation = new AnimBool(!startCollapsed); + _collapseAnimation.valueChanged.AddListener(Repaint); + + OnRepaint = new UnityEvent(); + } + + public float Height { get { return _height; } set { _height = value; } } + public UnityEvent OnRepaint { get; set; } + + private const float DEFAULT_HEIGHT = 400; + + private const float HEADER_HEIGHT = 18; + private const float RESIZE_MARGIN = 0.2f; + private const float RESIZE_HEIGHT = 5; + private const float CLEAR_LEFT_PADDING = 6; + private const float CLEAR_WIDTH = 45; + private const float COLLAPSE_WIDTH = 55; + private const float LINE_HEIGHT = 18; + + private StackTraceEntry _selectedTrace; + + private IStackTraceObject _target; + private Rect _listRect; + private Rect _stackTraceRect; + private Rect _contentRect; + private Vector2 _listScrollPosition; + private Vector2 _contentScrollPosition; + private AnimBool _collapseAnimation; + private float _height = DEFAULT_HEIGHT; + private float _subWindowValue = 0.6f; + private float _splitHeight; + private bool _resizeMouseDown; + + public void Draw() + { + EditorGUILayout.Space(); + + Rect rect = GUILayoutUtility.GetRect(0, GetHeight()); + + if (Event.current.type == EventType.Repaint) + { + //This is necessary due to Unity's retarded handling of events - https://answers.unity.com/questions/515197/how-to-use-guilayoututilitygetrect-properly.html + _stackTraceRect = rect; + + Rect boxRect = _stackTraceRect; + + boxRect.x--; + boxRect.y--; + + boxRect.width++; + boxRect.height++; + + Styles.Box.Draw(boxRect, GUIContent.none, 0); + } + + _subWindowValue = Mathf.Clamp(_subWindowValue, RESIZE_MARGIN, 1 - RESIZE_MARGIN); + + _splitHeight = _stackTraceRect.height * _subWindowValue; + _contentRect = new Rect(-1, _splitHeight, _stackTraceRect.width + 1, _stackTraceRect.height - _splitHeight); + _listRect = new Rect() + { + y = HEADER_HEIGHT, + height = (_stackTraceRect.height - HEADER_HEIGHT) - _contentRect.height, + width = _stackTraceRect.width, + }; + + GUILayout.BeginArea(_stackTraceRect); + + DrawStackTraceHeader(); + + EditorGUILayout.BeginFadeGroup(_collapseAnimation.faded); + + if (_collapseAnimation.faded > 0) + { + DrawList(); + DrawSelectedContent(); + } + + EditorGUILayout.EndFadeGroup(); + + GUILayout.EndArea(); + } + private void DrawSelectedContent() + { + Rect cursorRect = new Rect(0, _splitHeight - (RESIZE_HEIGHT / 2), _stackTraceRect.width, RESIZE_HEIGHT); + Event currentEvent = Event.current; + + EditorGUIUtility.AddCursorRect(cursorRect, MouseCursor.ResizeVertical); + + if (currentEvent.type == EventType.Repaint) + { + Styles.Box.Draw(_contentRect, GUIContent.none, 0); + } + else if (currentEvent.type == EventType.MouseDown && cursorRect.Contains(currentEvent.mousePosition)) + { + _resizeMouseDown = true; + } + else if (currentEvent.type == EventType.MouseUp && _resizeMouseDown) + { + _resizeMouseDown = false; + } + else if (_resizeMouseDown) + { + _subWindowValue = currentEvent.mousePosition.y / _stackTraceRect.height; + + Repaint(); + } + + if (_selectedTrace != null) + { + Rect scrollViewRect = new Rect() + { + y = _contentRect.y, + height = _contentRect.height, + width = _contentRect.width, + }; + + Vector2 textSize = Styles.MessageStyle.CalcSize(new GUIContent(_selectedTrace)); + + Rect position = new Rect(Vector2.zero, textSize); + + _contentScrollPosition = GUI.BeginScrollView(scrollViewRect, _contentScrollPosition, position); + + EditorGUI.SelectableLabel(position, _selectedTrace, Styles.MessageStyle); + + GUI.EndScrollView(); + } + } + private void DrawList() + { + Rect scrollViewRect = new Rect() + { + y = _listRect.y, + height = _listRect.height, + width = _listRect.width, + }; + Rect position = new Rect() + { + height = _target.StackTraces.Count * LINE_HEIGHT, + width = scrollViewRect.width - 20, + }; + + _listScrollPosition = GUI.BeginScrollView(scrollViewRect, _listScrollPosition, position); + + for (int i = 0; i < _target.StackTraces.Count; i++) + { + StackTraceEntry currentTrace = _target.StackTraces[i]; + string currentText = GetFirstLine(currentTrace); + + Rect elementRect = new Rect() + { + width = _listRect.width, + height = LINE_HEIGHT, + y = i * LINE_HEIGHT, + }; + + if (Event.current.type == EventType.MouseDown && elementRect.Contains(Event.current.mousePosition)) + { + _selectedTrace = currentTrace; + + Repaint(); + } + else if (Event.current.type == EventType.Repaint) + { + bool isSelected = _selectedTrace == currentTrace; + GUIStyle backgroundStyle = i % 2 == 0 ? Styles.EvenBackground : Styles.OddBackground; + + backgroundStyle.Draw(elementRect, false, false, isSelected, false); + Styles.Text.Draw(elementRect, new GUIContent(currentText), 0); + } + } + + GUI.EndScrollView(); + } + private void DrawStackTraceHeader() + { + Rect rect = new Rect() + { + width = _stackTraceRect.width, + height = HEADER_HEIGHT, + }; + + if (Event.current.type == EventType.Repaint) + { + Styles.Header.Draw(rect, new GUIContent("Stack Trace"), 0); + } + + rect.x += CLEAR_LEFT_PADDING; + rect.width = CLEAR_WIDTH; + + if (GUI.Button(rect, new GUIContent("Clear"), Styles.HeaderButton)) + { + _target.StackTraces.Clear(); + Deselect(); + } + + rect.x += CLEAR_WIDTH; + rect.width = COLLAPSE_WIDTH; + + _collapseAnimation.target = !GUI.Toggle(rect, !_collapseAnimation.target, new GUIContent("Collapse"), Styles.HeaderButton); + } + private float GetHeight() + { + return Mathf.Clamp(Height * _collapseAnimation.faded, HEADER_HEIGHT, float.MaxValue); + } + private void Repaint() + { + OnRepaint.Invoke(); + } + private string GetFirstLine(string value) + { + return value.Split(new[] { '\r', '\n' }).FirstOrDefault(); + } + private void Deselect() + { + _selectedTrace = null; + } + private class Styles + { + static Styles() + { + Box = new GUIStyle("CN Box"); + EvenBackground = new GUIStyle("CN EntryBackEven"); + OddBackground = new GUIStyle("CN EntryBackodd"); + HeaderButton = new GUIStyle("ToolbarButton"); + MessageStyle = new GUIStyle("CN Message"); + + Header = new GUIStyle("Toolbar"); + Header.alignment = TextAnchor.MiddleCenter; + + Text = new GUIStyle("CN EntryInfo"); + Text.padding = new RectOffset(0, 0, 3, 0); + } + + public static GUIStyle HeaderButton; + public static GUIStyle Text; + public static GUIStyle Box; + public static GUIStyle Header; + public static GUIStyle EvenBackground; + public static GUIStyle OddBackground; + public static GUIStyle MessageStyle; + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/StackTrace.cs.meta b/Architecture/ScriptableObjects/Editor/Inspectors/StackTrace.cs.meta new file mode 100644 index 0000000..fdc6a5b --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/StackTrace.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9dfa156dbea665b4bb233e288b6bb0d7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/TypedGameEventEditor.cs b/Architecture/ScriptableObjects/Editor/Inspectors/TypedGameEventEditor.cs new file mode 100644 index 0000000..5f72955 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/TypedGameEventEditor.cs @@ -0,0 +1,58 @@ +using System.Reflection; +using UnityEditor; +using UnityEngine; +using Type = System.Type; + +namespace ScriptableObjectArchitecture.Editor +{ + [CustomEditor(typeof(GameEventBase<>), true)] + public class TypedGameEventEditor : BaseGameEventEditor + { + private MethodInfo _raiseMethod; + + protected override void OnEnable() + { + base.OnEnable(); + + _raiseMethod = target.GetType().BaseType.GetMethod("Raise", BindingFlags.DeclaredOnly | BindingFlags.Instance | BindingFlags.Public); + } + protected override void DrawRaiseButton() + { + SerializedProperty property = serializedObject.FindProperty("_debugValue"); + + using (var scope = new EditorGUI.ChangeCheckScope()) + { + Type debugValueType = GetDebugValueType(property); + GenericPropertyDrawer.DrawPropertyDrawerLayout(property, debugValueType); + + if (scope.changed) + { + serializedObject.ApplyModifiedProperties(); + } + } + + if (GUILayout.Button("Raise")) + { + CallMethod(GetDebugValue(property)); + } + } + private object GetDebugValue(SerializedProperty property) + { + Type targetType = property.serializedObject.targetObject.GetType(); + FieldInfo targetField = targetType.GetField("_debugValue", BindingFlags.Instance | BindingFlags.NonPublic); + + return targetField.GetValue(property.serializedObject.targetObject); + } + private Type GetDebugValueType(SerializedProperty property) + { + Type targetType = property.serializedObject.targetObject.GetType(); + FieldInfo targetField = targetType.GetField("_debugValue", BindingFlags.Instance | BindingFlags.NonPublic); + + return targetField.FieldType; + } + private void CallMethod(object value) + { + _raiseMethod.Invoke(target, new object[1] { value }); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/TypedGameEventEditor.cs.meta b/Architecture/ScriptableObjects/Editor/Inspectors/TypedGameEventEditor.cs.meta new file mode 100644 index 0000000..0e7fcfe --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/TypedGameEventEditor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f8c7bd95d11941644a5f9f3045c0545f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/TypesGameEventListenerEditor.cs b/Architecture/ScriptableObjects/Editor/Inspectors/TypesGameEventListenerEditor.cs new file mode 100644 index 0000000..f7a2878 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/TypesGameEventListenerEditor.cs @@ -0,0 +1,42 @@ +using System.Reflection; +using UnityEditor; +using UnityEngine; +using Type = System.Type; + +namespace ScriptableObjectArchitecture.Editor +{ + [CustomEditor(typeof(BaseGameEventListener<,,>), true)] + public class TypesGameEventListenerEditor : BaseGameEventListenerEditor + { + private MethodInfo _raiseMethod; + + protected override void OnEnable() + { + base.OnEnable(); + + _raiseMethod = target.GetType().BaseType.GetMethod("OnEventRaised"); + } + protected override void DrawRaiseButton() + { + SerializedProperty property = serializedObject.FindProperty("_debugValue"); + + EditorGUILayout.PropertyField(property); + + if (GUILayout.Button("Raise")) + { + CallMethod(GetDebugValue(property)); + } + } + private object GetDebugValue(SerializedProperty property) + { + Type targetType = property.serializedObject.targetObject.GetType(); + FieldInfo targetField = targetType.GetField("_debugValue", BindingFlags.Instance | BindingFlags.NonPublic); + + return targetField.GetValue(property.serializedObject.targetObject); + } + private void CallMethod(object value) + { + _raiseMethod.Invoke(target, new object[1] { value }); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/Inspectors/TypesGameEventListenerEditor.cs.meta b/Architecture/ScriptableObjects/Editor/Inspectors/TypesGameEventListenerEditor.cs.meta new file mode 100644 index 0000000..1416e62 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/Inspectors/TypesGameEventListenerEditor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 31e9c969a656a2a4b93a9404e0bced74 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/SOArchitecture_EditorUtility.cs b/Architecture/ScriptableObjects/Editor/SOArchitecture_EditorUtility.cs new file mode 100644 index 0000000..c9acac8 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/SOArchitecture_EditorUtility.cs @@ -0,0 +1,199 @@ +using System.IO; +using System.Reflection; +using System.Collections.Generic; +using UnityEngine; +using UnityEditor; +using UnityEditor.Callbacks; +using Type = System.Type; + +namespace ScriptableObjectArchitecture.Editor +{ + public static class SOArchitecture_EditorUtility + { + static SOArchitecture_EditorUtility() + { + CreateDebugStyle(); + } + + /// + /// A debug that allows for identification of EditorGUI Rect issues. + /// + public static GUIStyle DebugStyle { get; private set; } + private const float DebugStyleBackgroundAlpha = 0.33f; + + private static PropertyDrawerGraph _propertyDrawerGraph; + private static BindingFlags _fieldBindingsFlag = BindingFlags.Instance | BindingFlags.NonPublic; + + private class AssemblyDefinitionSurrogate + { + public string name = ""; + } + + private static void CreatePropertyDrawerGraph() + { + _propertyDrawerGraph = new PropertyDrawerGraph(); + HashSet assemblyNamesToCheck = new HashSet() + { + "Assembly-CSharp-Editor", + }; + + GetAllAssetDefintionNames(assemblyNamesToCheck); + + string dataPath = Application.dataPath; + string libraryPath = dataPath.Substring(0, dataPath.LastIndexOf('/')) + "/Library/ScriptAssemblies"; + + foreach (string file in Directory.GetFiles(libraryPath)) + { + if(assemblyNamesToCheck.Contains(Path.GetFileNameWithoutExtension(file)) && Path.GetExtension(file) == ".dll") + { + Assembly assembly = Assembly.LoadFrom(file); + _propertyDrawerGraph.CreateGraph(assembly); + } + } + } + private static void GetAllAssetDefintionNames(HashSet targetList) + { + string[] assemblyDefinitionGUIDs = AssetDatabase.FindAssets("t:asmdef"); + + foreach (string guid in assemblyDefinitionGUIDs) + { + string path = AssetDatabase.GUIDToAssetPath(guid); + + if (path.StartsWith("Assets/")) + { + string fullPath = Application.dataPath + path.Remove(0, path.IndexOf('/')); + + targetList.Add(GetNameValueFromAssemblyDefinition(fullPath)); + } + } + } + private static string GetNameValueFromAssemblyDefinition(string fullpath) + { + string allText = File.ReadAllText(fullpath); + AssemblyDefinitionSurrogate surrogate = JsonUtility.FromJson(allText); + + return surrogate.name; + } + private static void CreateDebugStyle() + { + DebugStyle = new GUIStyle(); + + Color debugColor = Color.magenta; + debugColor.a = DebugStyleBackgroundAlpha; + + DebugStyle.normal.background = CreateTexture(2, 2, debugColor); + } + + /// + /// Converts the entire rect of a element into a rect used for displaying a field + /// + public static Rect GetReorderableListElementFieldRect(Rect elementRect) + { + elementRect.height = EditorGUIUtility.singleLineHeight; + elementRect.y++; + + return elementRect; + } + public static bool SupportsMultiLine(Type type) + { + return type.GetCustomAttributes(typeof(MultiLine), true).Length > 0; + } + public static bool HasPropertyDrawer(Type type) + { + if (HasBuiltinPropertyDrawer(type)) + return true; + + if (_propertyDrawerGraph == null) + CreatePropertyDrawerGraph(); + + return _propertyDrawerGraph.HasPropertyDrawer(type); + } + private static bool HasBuiltinPropertyDrawer(Type type) + { + if (type.IsPrimitive || type == typeof(string) || IsFromUnityAssembly(type)) + return true; + + return false; + } + private static bool IsFromUnityAssembly(Type type) + { + return type.Assembly == typeof(GameObject).Assembly; + } + [DidReloadScripts] + private static void OnProjectReloaded() + { + _propertyDrawerGraph = null; + } + private static Texture2D CreateTexture(int width, int height, Color col) + { + Color[] pix = new Color[width * height]; + for (int i = 0; i < pix.Length; ++i) + { + pix[i] = col; + } + Texture2D result = new Texture2D(width, height); + result.SetPixels(pix); + result.Apply(); + return result; + } + + /// + /// Goes through the entirety of the project and collects data about custom property drawers + /// + private class PropertyDrawerGraph + { + private List _supportedTypes = new List(); + private List _supportedInheritedTypes = new List(); + private List _checkedAssemblies = new List(); + + public bool HasPropertyDrawer(Type type) + { + foreach (Type supportedType in _supportedTypes) + { + if (supportedType == type) + return true; + } + + foreach (Type inheritedSupportedType in _supportedInheritedTypes) + { + if (type.IsSubclassOf(inheritedSupportedType)) + return true; + } + + return false; + } + public void CreateGraph(Assembly assembly) + { + if (_checkedAssemblies.Contains(assembly)) + return; + + _checkedAssemblies.Add(assembly); + + foreach (Type type in assembly.GetTypes()) + { + object[] attributes = type.GetCustomAttributes(typeof(CustomPropertyDrawer), false); + + foreach (object attribute in attributes) + { + if (attribute is CustomPropertyDrawer) + { + CustomPropertyDrawer drawerData = attribute as CustomPropertyDrawer; + + bool useForChildren = (bool)typeof(CustomPropertyDrawer).GetField("m_UseForChildren", _fieldBindingsFlag).GetValue(drawerData); + Type targetType = (Type)typeof(CustomPropertyDrawer).GetField("m_Type", _fieldBindingsFlag).GetValue(drawerData); + + if (useForChildren) + { + _supportedInheritedTypes.Add(targetType); + } + else + { + _supportedTypes.Add(targetType); + } + } + } + } + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/SOArchitecture_EditorUtility.cs.meta b/Architecture/ScriptableObjects/Editor/SOArchitecture_EditorUtility.cs.meta new file mode 100644 index 0000000..07e82a8 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/SOArchitecture_EditorUtility.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 45cecdd8c6ef04e4c87e6e9f916004ed +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Editor/ScriptableObject-Architecture.Editor.asmdef b/Architecture/ScriptableObjects/Editor/ScriptableObject-Architecture.Editor.asmdef new file mode 100644 index 0000000..4f6d9de --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/ScriptableObject-Architecture.Editor.asmdef @@ -0,0 +1,16 @@ +{ + "name": "ScriptableObject-Architecture.Editor", + "references": [ + "ScriptableObject-Architecture" + ], + "optionalUnityReferences": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [] +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Editor/ScriptableObject-Architecture.Editor.asmdef.meta b/Architecture/ScriptableObjects/Editor/ScriptableObject-Architecture.Editor.asmdef.meta new file mode 100644 index 0000000..76295e1 --- /dev/null +++ b/Architecture/ScriptableObjects/Editor/ScriptableObject-Architecture.Editor.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: cdb30503fc431034480da3ad5e66c268 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events.meta b/Architecture/ScriptableObjects/Events.meta new file mode 100644 index 0000000..87860c1 --- /dev/null +++ b/Architecture/ScriptableObjects/Events.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ba76e8ee46a6dbb4991c2f34691550e9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events.meta b/Architecture/ScriptableObjects/Events/Game Events.meta new file mode 100644 index 0000000..9868ca4 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d10a27ada69ebf14eba38f1a0d322ff6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/AudioClipGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/AudioClipGameEvent.cs new file mode 100644 index 0000000..84c7f6e --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/AudioClipGameEvent.cs @@ -0,0 +1,14 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "AudioClipGameEvent.asset", + menuName = SOArchitecture_Utility.ADVANCED_GAME_EVENT + "AudioClip", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 5)] + public sealed class AudioClipGameEvent : GameEventBase + { + + } +} diff --git a/Architecture/ScriptableObjects/Events/Game Events/AudioClipGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/AudioClipGameEvent.cs.meta new file mode 100644 index 0000000..ea75b97 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/AudioClipGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 96c62cae1d494005aee595768eefb7ae +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 0215332f5b2955c4680cdc966f6d9270, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/BoolGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/BoolGameEvent.cs new file mode 100644 index 0000000..e017b03 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/BoolGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "BoolGameEvent.asset", + menuName = SOArchitecture_Utility.GAME_EVENT + "bool", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 5)] + public sealed class BoolGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/BoolGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/BoolGameEvent.cs.meta new file mode 100644 index 0000000..dabe44a --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/BoolGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cbe4d59e612f226418a9f7ddf54c95bf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 346c4474e35a8914295939193925b5f3, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/ByteGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/ByteGameEvent.cs new file mode 100644 index 0000000..8fd1ac7 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/ByteGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "ByteGameEvent.asset", + menuName = SOArchitecture_Utility.ADVANCED_GAME_EVENT + "byte", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 6)] + public sealed class ByteGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/ByteGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/ByteGameEvent.cs.meta new file mode 100644 index 0000000..e5987e4 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/ByteGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b37258a6106d5444aaa4d3c6ce5cca1e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 261c21d547ee3ca48b6243d4316763d7, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/CharGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/CharGameEvent.cs new file mode 100644 index 0000000..7520499 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/CharGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "CharGameEvent.asset", + menuName = SOArchitecture_Utility.ADVANCED_GAME_EVENT + "char", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 7)] + public sealed class CharGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/CharGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/CharGameEvent.cs.meta new file mode 100644 index 0000000..c1328ec --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/CharGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9ed61fd17e854134d916bb356965a6b2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 51b477982b434b240ac6bd2864fb4e94, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/DoubleGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/DoubleGameEvent.cs new file mode 100644 index 0000000..34d17f8 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/DoubleGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "DoubleGameEvent.asset", + menuName = SOArchitecture_Utility.ADVANCED_GAME_EVENT + "double", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 8)] + public sealed class DoubleGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/DoubleGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/DoubleGameEvent.cs.meta new file mode 100644 index 0000000..e39d96c --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/DoubleGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5983630b18b750040ab695cb500dbd87 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 85a0261a15fb1d34b9da3b33673abe91, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/FloatGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/FloatGameEvent.cs new file mode 100644 index 0000000..e6afd38 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/FloatGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "FloatGameEvent.asset", + menuName = SOArchitecture_Utility.GAME_EVENT + "float", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 3)] + public sealed class FloatGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/FloatGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/FloatGameEvent.cs.meta new file mode 100644 index 0000000..98f6c76 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/FloatGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 001ce7190bfda8a4d9ca56a17f8fdd0b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 0ee88e5fd0ae9db4ebb33c80616911b4, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/GameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/GameEvent.cs new file mode 100644 index 0000000..7a0c057 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/GameEvent.cs @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [CreateAssetMenu( + fileName = "GameEvent.asset", + menuName = SOArchitecture_Utility.GAME_EVENT + "Game Event", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS - 1)] + public sealed class GameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/GameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/GameEvent.cs.meta new file mode 100644 index 0000000..87e5df8 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/GameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7a78c7052899406438e9fc79486b45c0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 046d8c41d9c7fd746aeab61a9386572e, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/GameEventBase.cs b/Architecture/ScriptableObjects/Events/Game Events/GameEventBase.cs new file mode 100644 index 0000000..523466c --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/GameEventBase.cs @@ -0,0 +1,114 @@ +using UnityEngine; +using System.Collections.Generic; + +namespace ScriptableObjectArchitecture +{ + public abstract class GameEventBase : GameEventBase, IGameEvent, IStackTraceObject + { + private readonly List> _typedListeners = new List>(); + private readonly List> _typedActions = new List>(); + + [SerializeField] + protected T _debugValue = default(T); + + public void Raise(T value) + { + AddStackTrace(value); + + for (int i = _typedListeners.Count - 1; i >= 0; i--) + _typedListeners[i].OnEventRaised(value); + + for (int i = _listeners.Count - 1; i >= 0; i--) + _listeners[i].OnEventRaised(); + + for (int i = _typedActions.Count - 1; i >= 0; i--) + _typedActions[i](value); + + for (int i = _actions.Count - 1; i >= 0; i--) + _actions[i](); + } + public void AddListener(IGameEventListener listener) + { + if (!_typedListeners.Contains(listener)) + _typedListeners.Add(listener); + } + public void RemoveListener(IGameEventListener listener) + { + if (_typedListeners.Contains(listener)) + _typedListeners.Remove(listener); + } + public void AddListener(System.Action action) + { + if (!_typedActions.Contains(action)) + _typedActions.Add(action); + } + public void RemoveListener(System.Action action) + { + if (_typedActions.Contains(action)) + _typedActions.Remove(action); + } + public override string ToString() + { + return "GameEventBase<" + typeof(T) + ">"; + } + } + public abstract class GameEventBase : SOArchitectureBaseObject, IGameEvent, IStackTraceObject + { + protected readonly List _listeners = new List(); + protected readonly List _actions = new List(); + + public List StackTraces { get { return _stackTraces; } } + private List _stackTraces = new List(); + + public void AddStackTrace() + { +#if UNITY_EDITOR + if (SOArchitecturePreferences.IsDebugEnabled) + _stackTraces.Insert(0, StackTraceEntry.Create()); +#endif + } + public void AddStackTrace(object value) + { +#if UNITY_EDITOR + if(SOArchitecturePreferences.IsDebugEnabled) + _stackTraces.Insert(0, StackTraceEntry.Create(value)); +#endif + } + + public void Raise() + { + AddStackTrace(); + + for (int i = _listeners.Count - 1; i >= 0; i--) + _listeners[i].OnEventRaised(); + + for (int i = _actions.Count - 1; i >= 0; i--) + _actions[i](); + } + public void AddListener(IGameEventListener listener) + { + if (!_listeners.Contains(listener)) + _listeners.Add(listener); + } + public void RemoveListener(IGameEventListener listener) + { + if (_listeners.Contains(listener)) + _listeners.Remove(listener); + } + public void AddListener(System.Action action) + { + if (!_actions.Contains(action)) + _actions.Add(action); + } + public void RemoveListener(System.Action action) + { + if (_actions.Contains(action)) + _actions.Remove(action); + } + public virtual void RemoveAll() + { + _listeners.RemoveRange(0, _listeners.Count); + _actions.RemoveRange(0, _actions.Count); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/GameEventBase.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/GameEventBase.cs.meta new file mode 100644 index 0000000..145ba56 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/GameEventBase.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fc6ee850ba5b8284d94ee16b623cfad4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/GameEventStackTrace.cs b/Architecture/ScriptableObjects/Events/Game Events/GameEventStackTrace.cs new file mode 100644 index 0000000..914e987 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/GameEventStackTrace.cs @@ -0,0 +1,82 @@ +using System; +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + public class StackTraceEntry : IEquatable + { + private StackTraceEntry(string trace) + { + _id = UnityEngine.Random.Range(int.MinValue, int.MaxValue); + _stackTrace = trace; + + if (Application.isPlaying) + { + _frameCount = Time.frameCount; + } + } + private StackTraceEntry(string trace, object value) + { + _value = value; + _constructedWithValue = true; + _id = UnityEngine.Random.Range(int.MinValue, int.MaxValue); + _stackTrace = trace; + + if (Application.isPlaying) + { + _frameCount = Time.frameCount; + } + } + + private readonly int _id; + private readonly int _frameCount; + private readonly string _stackTrace; + private readonly object _value; + private readonly bool _constructedWithValue = false; + + public static StackTraceEntry Create(object obj) + { + return new StackTraceEntry(Environment.StackTrace, obj); + } + public static StackTraceEntry Create() + { + return new StackTraceEntry(Environment.StackTrace); + } + public override bool Equals(object obj) + { + if (obj == null) + return false; + + if (obj is StackTraceEntry) + { + return Equals(obj as StackTraceEntry); + } + + return false; + } + public bool Equals(StackTraceEntry other) + { + return other._id == this._id; + } + public override int GetHashCode() + { + return _id; + } + public override string ToString() + { + if (_constructedWithValue) + { + return string.Format("{1} [{0}] {2}", _value == null ? "null" : _value.ToString(), _frameCount, _stackTrace); + } + else + { + return string.Format("{0} {1}", _frameCount, _stackTrace); + } + } + + public static implicit operator string(StackTraceEntry trace) + { + return trace.ToString(); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/GameEventStackTrace.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/GameEventStackTrace.cs.meta new file mode 100644 index 0000000..a05592f --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/GameEventStackTrace.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b6e1b7131723ac74686ec443f88ae0d9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/GameObjectGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/GameObjectGameEvent.cs new file mode 100644 index 0000000..cb52249 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/GameObjectGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "GameObjectGameEvent.asset", + menuName = SOArchitecture_Utility.GAME_EVENT + "GameObject", + order = 120)] + public sealed class GameObjectGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/GameObjectGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/GameObjectGameEvent.cs.meta new file mode 100644 index 0000000..0d49efa --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/GameObjectGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 61f5bf7fd976bb142aca9af402f46e44 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 326c0a60277b55744a9dfb77fb6a9a47, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/IGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/IGameEvent.cs new file mode 100644 index 0000000..0e29b79 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/IGameEvent.cs @@ -0,0 +1,17 @@ +namespace ScriptableObjectArchitecture +{ + public interface IGameEvent + { + void Raise(T value); + void AddListener(IGameEventListener listener); + void RemoveListener(IGameEventListener listener); + void RemoveAll(); + } + public interface IGameEvent + { + void Raise(); + void AddListener(IGameEventListener listener); + void RemoveListener(IGameEventListener listener); + void RemoveAll(); + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/IGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/IGameEvent.cs.meta new file mode 100644 index 0000000..8906621 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/IGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b9008e8ef37249b4d9087dd71f2967bd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/IntGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/IntGameEvent.cs new file mode 100644 index 0000000..b8b5e20 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/IntGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "IntGameEvent.asset", + menuName = SOArchitecture_Utility.GAME_EVENT + "int", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 4)] + public sealed class IntGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/IntGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/IntGameEvent.cs.meta new file mode 100644 index 0000000..449a4df --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/IntGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8ea29b4887d65ef45a35c9c5add9005e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: b907a9c0990bd324799f845c0e473882, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/LongGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/LongGameEvent.cs new file mode 100644 index 0000000..f7736b9 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/LongGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "LongGameEvent.asset", + menuName = SOArchitecture_Utility.ADVANCED_GAME_EVENT + "long", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 9)] + public sealed class LongGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/LongGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/LongGameEvent.cs.meta new file mode 100644 index 0000000..8b539d8 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/LongGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b1afbd111fdba03459561f36c653092c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 05d05b25c35be304c830ae58521193f9, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/ObjectGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/ObjectGameEvent.cs new file mode 100644 index 0000000..31b510f --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/ObjectGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "ObjectGameEvent.asset", + menuName = SOArchitecture_Utility.GAME_EVENT + "Object", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 1)] + public class ObjectGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/ObjectGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/ObjectGameEvent.cs.meta new file mode 100644 index 0000000..a34e6b5 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/ObjectGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f16245789bedaa2449b94fe62a519ba3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: b6ba1c484fe92cf4ca131d9a900eb7da, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/QuaternionGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/QuaternionGameEvent.cs new file mode 100644 index 0000000..e661140 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/QuaternionGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "QuaternionGameEvent.asset", + menuName = SOArchitecture_Utility.GAME_EVENT + "Structs/Quaternion", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 13)] + public sealed class QuaternionGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/QuaternionGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/QuaternionGameEvent.cs.meta new file mode 100644 index 0000000..8eeac0f --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/QuaternionGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9b9c527c9791f364e86829c02168d055 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 649cb6e3d04877d44838fd8093210cde, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/SByteGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/SByteGameEvent.cs new file mode 100644 index 0000000..b90462d --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/SByteGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "SignedByteGameEvent.asset", + menuName = SOArchitecture_Utility.ADVANCED_GAME_EVENT + "sbyte", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 15)] + public sealed class SByteGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/SByteGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/SByteGameEvent.cs.meta new file mode 100644 index 0000000..dc62f8b --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/SByteGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f11ef7e8d55015d44afc5eb7f051d851 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 41126a9a6ed026a4bb723749749d3a16, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/ShortGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/ShortGameEvent.cs new file mode 100644 index 0000000..487b8dd --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/ShortGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "ShortGameEvent.asset", + menuName = SOArchitecture_Utility.ADVANCED_GAME_EVENT + "short", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 14)] + public sealed class ShortGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/ShortGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/ShortGameEvent.cs.meta new file mode 100644 index 0000000..5288162 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/ShortGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4b2ad2934275c7a4bb10fec5297ed911 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: ae8f79ed377703549991ef63a3b5daec, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/StringGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/StringGameEvent.cs new file mode 100644 index 0000000..a5bf8b0 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/StringGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "StringGameEvent.asset", + menuName = SOArchitecture_Utility.GAME_EVENT + "string", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 2)] + public sealed class StringGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/StringGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/StringGameEvent.cs.meta new file mode 100644 index 0000000..163ca2f --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/StringGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d315e0b31d04a074e89c0e5e55e9de48 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: a258685c72c006742a28776d98cc662e, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/UIntGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/UIntGameEvent.cs new file mode 100644 index 0000000..5a2c788 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/UIntGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "UnsignedIntGameEvent.asset", + menuName = SOArchitecture_Utility.ADVANCED_GAME_EVENT + "uint", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 16)] + public sealed class UIntGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/UIntGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/UIntGameEvent.cs.meta new file mode 100644 index 0000000..2ee2444 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/UIntGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f428c233983fc624ea50f5d7d073889e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: d09943ccbb1d70f4f9555806dacec150, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/ULongGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/ULongGameEvent.cs new file mode 100644 index 0000000..f1f46c7 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/ULongGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "UnsignedLongGameEvent.asset", + menuName = SOArchitecture_Utility.ADVANCED_GAME_EVENT + "ulong", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 17)] + public sealed class ULongGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/ULongGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/ULongGameEvent.cs.meta new file mode 100644 index 0000000..7a0c6d3 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/ULongGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: df3fc86357b8e664c86577b7995611f0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 1643f7d1398fa9a408e6ae88fb0d7309, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/UShortGameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/UShortGameEvent.cs new file mode 100644 index 0000000..33a6e7d --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/UShortGameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "UnsignedShortGameEvent.asset", + menuName = SOArchitecture_Utility.ADVANCED_GAME_EVENT + "ushort", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 18)] + public sealed class UShortGameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/UShortGameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/UShortGameEvent.cs.meta new file mode 100644 index 0000000..2780ecd --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/UShortGameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c781637f5d55d314c837294ff44bcaf1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5d72435736900dc41a79e248ea04ed82, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/Vector2GameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/Vector2GameEvent.cs new file mode 100644 index 0000000..7e2f63b --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/Vector2GameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "Vector2GameEvent.asset", + menuName = SOArchitecture_Utility.GAME_EVENT + "Structs/Vector2", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 10)] + public sealed class Vector2GameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/Vector2GameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/Vector2GameEvent.cs.meta new file mode 100644 index 0000000..cf43873 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/Vector2GameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: af431fd991bb72547b8ce3cfddedc849 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 0741d3e29c24e99459047844e03d4ea0, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/Vector3GameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/Vector3GameEvent.cs new file mode 100644 index 0000000..316eac3 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/Vector3GameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "Vector3GameEvent.asset", + menuName = SOArchitecture_Utility.GAME_EVENT + "Structs/Vector3", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 11)] + public sealed class Vector3GameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/Vector3GameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/Vector3GameEvent.cs.meta new file mode 100644 index 0000000..cb8fa35 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/Vector3GameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b75938839174f924db08cf0efcf049f1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 080a7a46359356e4583460b1fe0e33a6, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Game Events/Vector4GameEvent.cs b/Architecture/ScriptableObjects/Events/Game Events/Vector4GameEvent.cs new file mode 100644 index 0000000..c71eddd --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/Vector4GameEvent.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + [CreateAssetMenu( + fileName = "Vector4GameEvent.asset", + menuName = SOArchitecture_Utility.GAME_EVENT + "Structs/Vector4", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_EVENTS + 12)] + public sealed class Vector4GameEvent : GameEventBase + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Game Events/Vector4GameEvent.cs.meta b/Architecture/ScriptableObjects/Events/Game Events/Vector4GameEvent.cs.meta new file mode 100644 index 0000000..2eb0195 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Game Events/Vector4GameEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b636b9a32c4132249954f829d103165e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 754d99873c117874bbec827216ab237c, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners.meta b/Architecture/ScriptableObjects/Events/Listeners.meta new file mode 100644 index 0000000..b21c884 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6d7451bd0ddefb548a9eb989bfcf1543 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/AudioClipGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/AudioClipGameEventListener.cs new file mode 100644 index 0000000..df41aae --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/AudioClipGameEventListener.cs @@ -0,0 +1,10 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "AudioClip Event Listener")] + public sealed class AudioClipGameEventListener : BaseGameEventListener + { + + } +} diff --git a/Architecture/ScriptableObjects/Events/Listeners/AudioClipGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/AudioClipGameEventListener.cs.meta new file mode 100644 index 0000000..c67d645 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/AudioClipGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1b59f62474a8441eb57693365ea24e83 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 36a2235e5afe05546bc4fec9c7e453c4, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/BaseGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/BaseGameEventListener.cs new file mode 100644 index 0000000..36f6ae2 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/BaseGameEventListener.cs @@ -0,0 +1,299 @@ +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.Events; + +#if UNITY_EDITOR +using UnityEditor; +#endif + +namespace ScriptableObjectArchitecture +{ + public abstract class BaseGameEventListener : DebuggableGameEventListener, IGameEventListener +where TEvent : GameEventBase +where TResponse : UnityEvent + { + protected override ScriptableObject GameEvent { get { return _event; } } + protected override UnityEventBase Response { get { return _response; } } + + [SerializeField] + private TEvent _previouslyRegisteredEvent = default(TEvent); + [SerializeField] + private TEvent _event = default(TEvent); + [SerializeField] + private TResponse _response = default(TResponse); + + [SerializeField] + protected TType _debugValue = default(TType); + + public void OnEventRaised(TType value) + { + RaiseResponse(value); + + CreateDebugEntry(_response); + + AddStackTrace(value); + } + private void RaiseResponse(TType value) + { + _response.Invoke(value); + } + private void OnEnable() + { + if (_event != null) + Register(); + } + private void OnDisable() + { + if (_event != null) + _event.RemoveListener(this); + } + private void Register() + { + if (_previouslyRegisteredEvent != null) + { + _previouslyRegisteredEvent.RemoveListener(this); + } + + _event.AddListener(this); + _previouslyRegisteredEvent = _event; + } + } + public abstract class BaseGameEventListener : DebuggableGameEventListener, IGameEventListener + where TEvent : GameEventBase + where TResponse : UnityEvent + { + protected override ScriptableObject GameEvent { get { return _event; } } + protected override UnityEventBase Response { get { return _response; } } + + [SerializeField] + private TEvent _previouslyRegisteredEvent = default(TEvent); + [SerializeField] + private TEvent _event = default(TEvent); + [SerializeField] + private TResponse _response = default(TResponse); + + public void OnEventRaised() + { + RaiseResponse(); + + CreateDebugEntry(_response); + + AddStackTrace(); + } + protected void RaiseResponse() + { + _response.Invoke(); + } + private void OnEnable() + { + if (_event != null) + Register(); + } + private void OnDisable() + { + if (_event != null) + _event.RemoveListener(this); + } + private void Register() + { + if (_previouslyRegisteredEvent != null) + { + _previouslyRegisteredEvent.RemoveListener(this); + } + + _event.AddListener(this); + _previouslyRegisteredEvent = _event; + } + } + public abstract class DebuggableGameEventListener : SOArchitectureBaseMonobehaviour, IStackTraceObject + { +#pragma warning disable 0414 + [SerializeField] + private bool _showDebugFields = false; + [SerializeField] + private bool _enableGizmoDebugging = true; + [SerializeField] + private Color _debugColor = Color.cyan; +#pragma warning restore + + public List StackTraces { get { return _stackTraces; } } + private List _stackTraces = new List(); + + protected abstract ScriptableObject GameEvent { get; } + protected abstract UnityEventBase Response { get; } + + public void AddStackTrace(object obj) + { +#if UNITY_EDITOR + StackTraces.Insert(0, StackTraceEntry.Create(obj)); +#endif + } + public void AddStackTrace() + { +#if UNITY_EDITOR + StackTraces.Insert(0, StackTraceEntry.Create()); +#endif + } + protected void CreateDebugEntry(UnityEventBase response) + { +#if UNITY_EDITOR + for (int i = 0; i < response.GetPersistentEventCount(); i++) + { + GameObject gameObjectTarget = GetGameObject(response.GetPersistentTarget(i)); + + if (gameObject == null || gameObjectTarget == null) + continue; + + if (Vector3.Distance(gameObject.transform.position, gameObjectTarget.transform.position) <= EVENT_MIN_DISTANCE) + continue; + + string targetName = gameObject ? gameObject.name : "Null"; + + string functionName = string.Format("{0} ({1})", targetName, response.GetPersistentMethodName(i)); + + _debugEntries.Add(new DebugEvent(gameObjectTarget, functionName)); + } +#endif + } + +#if UNITY_EDITOR + private const float DOTTED_LINE_LENGTH = 5; + private const float DOT_LENGTH = 0.5f; + private const float DOT_WIDTH = 3; + private const float EVENT_MOVEMENT_SPEED = 3; + private const float EVENT_MIN_DISTANCE = 0.3f; + + private List _debugEntries = new List(); + + private static class Styles + { + static Styles() + { + TextStyle = new GUIStyle(); + TextStyle.alignment = TextAnchor.UpperCenter; + } + + public static GUIStyle TextStyle; + } + private void OnDrawGizmos() + { + UpdateDebugInfo(); + } + private void UpdateDebugInfo() + { + Handles.color = _debugColor; + Styles.TextStyle.normal.textColor = _debugColor; + + DrawLine(); + DrawEvents(); + } + private void DrawEvents() + { + for (int i = _debugEntries.Count - 1; i >= 0; i--) + { + DrawEvent(i); + } + } + private void DrawEvent(int index) + { + DebugEvent debugEvent = _debugEntries[index]; + + if (debugEvent.Target == null) + return; + + debugEvent.Offset += EVENT_MOVEMENT_SPEED * Time.deltaTime; + + Vector3 delta = (debugEvent.Target.transform.position - gameObject.transform.position).normalized; + Vector3 position = gameObject.transform.position + (delta * debugEvent.Offset); + + DrawPoint(position, delta); + DrawText(position, debugEvent); + + if (debugEvent.Offset >= Vector3.Distance(gameObject.transform.position, debugEvent.Target.transform.position)) + { + _debugEntries.RemoveAt(index); + } + } + private void DrawText(Vector3 position, DebugEvent debugEvent) + { + if (!EnableGizmoDebuggin()) + return; + + string text = string.Join("\n", new string[] { GameEvent.name, debugEvent.FunctionName }); + + Handles.Label(position, text, Styles.TextStyle); + } + private void DrawLine() + { + if (!EnableGizmoDebuggin()) + return; + + List listeningObjects = new List(); + + for (int i = 0; i < Response.GetPersistentEventCount(); i++) + { + AddObject(listeningObjects, Response.GetPersistentTarget(i)); + } + + foreach (GameObject obj in listeningObjects) + { + if (gameObject == obj) + continue; + + Handles.DrawDottedLine(transform.position, obj.transform.position, DOTTED_LINE_LENGTH); + } + } + private void DrawPoint(Vector3 position, Vector3 direction) + { + if (EnableGizmoDebuggin()) + Handles.DrawAAPolyLine(DOT_WIDTH, position, position + (direction.normalized * DOT_LENGTH)); + } + private bool EnableGizmoDebuggin() + { + if (!SOArchitecturePreferences.AreGizmosEnabled) + return false; + + return _enableGizmoDebugging; + } + private void AddObject(List listeningObjects, Object obj) + { + GameObject toAdd = GetGameObject(obj); + + if (!listeningObjects.Contains(toAdd) && toAdd != null) + { + listeningObjects.Add(toAdd); + } + } + private GameObject GetGameObject(Object obj) + { + if (obj is Component) + { + Component component = obj as Component; + + return component.gameObject; + } + else if (obj is GameObject) + { + return obj as GameObject; + } + else + { + return null; + } + } + private class DebugEvent + { + public DebugEvent(GameObject target, string methodName) + { + FunctionName = methodName; + Target = target; + Offset = 0; + } + + public float Offset; + public GameObject Target; + public string FunctionName; + } +#endif + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/BaseGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/BaseGameEventListener.cs.meta new file mode 100644 index 0000000..b6fce82 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/BaseGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d82959ddb81d24849a535c0f50cd5da0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/BoolGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/BoolGameEventListener.cs new file mode 100644 index 0000000..08b2dc4 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/BoolGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "bool Event Listener")] + public sealed class BoolGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/BoolGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/BoolGameEventListener.cs.meta new file mode 100644 index 0000000..11d0f3d --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/BoolGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 791e3eca91bfc2e41b38477d0ecfaf1b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 0a7ed637e2dd165478285bafdb1250e6, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/ByteGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/ByteGameEventListener.cs new file mode 100644 index 0000000..ccdbaf7 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/ByteGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "byte Event Listener")] + public sealed class ByteGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/ByteGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/ByteGameEventListener.cs.meta new file mode 100644 index 0000000..394e355 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/ByteGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f6194dca413170b4b925eefba3cb241d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 1366bcc91c88f8d49af86093a00675ca, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/CharGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/CharGameEventListener.cs new file mode 100644 index 0000000..b681cab --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/CharGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "char Event Listener")] + public sealed class CharGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/CharGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/CharGameEventListener.cs.meta new file mode 100644 index 0000000..72c2669 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/CharGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1871aebd7c0e4f94e98915573eadb3bb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 7e74d7e3dbfe03141aaabb8bec5594dd, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/DoubleGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/DoubleGameEventListener.cs new file mode 100644 index 0000000..fe0b9fe --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/DoubleGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "double Event Listener")] + public sealed class DoubleGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/DoubleGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/DoubleGameEventListener.cs.meta new file mode 100644 index 0000000..e434333 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/DoubleGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8f1a200f48d0a584c9e8eed9b0b42f2b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 93a3623d2d3a46340ab7381b57d8bb5e, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/FloatGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/FloatGameEventListener.cs new file mode 100644 index 0000000..66f651d --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/FloatGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "float Event Listener")] + public sealed class FloatGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/FloatGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/FloatGameEventListener.cs.meta new file mode 100644 index 0000000..7bc7e9e --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/FloatGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d803b71d5100f2f43b3d93b8d7210303 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 371b4f30d6038eb469aee486b44a7477, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/GameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/GameEventListener.cs new file mode 100644 index 0000000..24d8a8e --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/GameEventListener.cs @@ -0,0 +1,11 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "Game Event Listener")] + [ExecuteInEditMode] + public sealed class GameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/GameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/GameEventListener.cs.meta new file mode 100644 index 0000000..9e07b06 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/GameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5758ca93461aeeb4589456a052b07d74 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 07bf2c049b0c8c4429bb340d0e8ced0a, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/GameObjectGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/GameObjectGameEventListener.cs new file mode 100644 index 0000000..0b0daf6 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/GameObjectGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "GameObject Event Listener")] + public sealed class GameObjectGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/GameObjectGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/GameObjectGameEventListener.cs.meta new file mode 100644 index 0000000..727c230 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/GameObjectGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6781b467167175a45a272c3787c44109 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: fea60d815ebdac44b8d8e6caff43ff47, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/IGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/IGameEventListener.cs new file mode 100644 index 0000000..27b09f6 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/IGameEventListener.cs @@ -0,0 +1,11 @@ +namespace ScriptableObjectArchitecture +{ + public interface IGameEventListener + { + void OnEventRaised(T value); + } + public interface IGameEventListener + { + void OnEventRaised(); + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/IGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/IGameEventListener.cs.meta new file mode 100644 index 0000000..34ef8fa --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/IGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: eedb9bf0e89513e45b659223e5eb8d37 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/IntGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/IntGameEventListener.cs new file mode 100644 index 0000000..e24ca91 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/IntGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "int Event Listener")] + public sealed class IntGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/IntGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/IntGameEventListener.cs.meta new file mode 100644 index 0000000..54a3f69 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/IntGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 094217878ac039741aa004dbc1f81b20 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: ec13abd4acac26f498ad89c93b09cf0d, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/LongGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/LongGameEventListener.cs new file mode 100644 index 0000000..07f86fa --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/LongGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "long Event Listener")] + public sealed class LongGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/LongGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/LongGameEventListener.cs.meta new file mode 100644 index 0000000..57bd8bf --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/LongGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 94cbef02f7f71544dbcec12dedfe5151 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5302bfcf6cc90f644b97ab8014833aac, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/ObjectGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/ObjectGameEventListener.cs new file mode 100644 index 0000000..6ae7035 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/ObjectGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "Object Event Listener")] + public class ObjectGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/ObjectGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/ObjectGameEventListener.cs.meta new file mode 100644 index 0000000..ba7ce58 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/ObjectGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e75cfec541807964a9e0c8e7a9eff17d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 982f0ec9d767e9049ac1fdca7b8cdd1e, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/QuaternionGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/QuaternionGameEventListener.cs new file mode 100644 index 0000000..b9dec09 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/QuaternionGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "Quaternion Event Listener")] + public sealed class QuaternionGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/QuaternionGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/QuaternionGameEventListener.cs.meta new file mode 100644 index 0000000..ba7844e --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/QuaternionGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 88796d412edcc8f48b60be693e50cb8d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 16810fefe2a316d43bfcc74d75303450, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/SByteGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/SByteGameEventListener.cs new file mode 100644 index 0000000..4368b91 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/SByteGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "sbyte Event Listener")] + public sealed class SByteGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/SByteGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/SByteGameEventListener.cs.meta new file mode 100644 index 0000000..0435765 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/SByteGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4adf1a65d9cd10648a881a2cf35dd83c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 8ee0d00280544c942bc17b01d58957e0, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/ShortGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/ShortGameEventListener.cs new file mode 100644 index 0000000..cdc43ae --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/ShortGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "short Event Listener")] + public sealed class ShortGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/ShortGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/ShortGameEventListener.cs.meta new file mode 100644 index 0000000..f056c91 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/ShortGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6e9a0b17e101d3c4190657efdb38f1e6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 22351f9129a3e6c4cbfde628035c9536, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/StringGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/StringGameEventListener.cs new file mode 100644 index 0000000..cfe9ece --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/StringGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "string Event Listener")] + public sealed class StringGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/StringGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/StringGameEventListener.cs.meta new file mode 100644 index 0000000..a7eaee9 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/StringGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 636b72f8fc644b4418a9e8ad0f4f804f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: e97e7e05814646c42bea6f15dde77ec7, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/UIntGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/UIntGameEventListener.cs new file mode 100644 index 0000000..95f6351 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/UIntGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "uint Event Listener")] + public sealed class UIntGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/UIntGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/UIntGameEventListener.cs.meta new file mode 100644 index 0000000..ac50aa5 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/UIntGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a5091be38cc20704b89afed3c2b69bd6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 8a31b7cfff051734e89376e9ec642e00, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/ULongGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/ULongGameEventListener.cs new file mode 100644 index 0000000..dc584ed --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/ULongGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "ulong Event Listener")] + public sealed class ULongGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/ULongGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/ULongGameEventListener.cs.meta new file mode 100644 index 0000000..6ec2625 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/ULongGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 03901376b0e91c74bac7eda1446b713b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 3abdecaad047e2843a1ef76f56b5bc49, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/UShortGameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/UShortGameEventListener.cs new file mode 100644 index 0000000..a53d4bd --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/UShortGameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "ushort Event Listener")] + public sealed class UShortGameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/UShortGameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/UShortGameEventListener.cs.meta new file mode 100644 index 0000000..1a5df03 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/UShortGameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9d76aea420767b245834c888f014446f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 75495cf3dcb9a53418f9ee3d6dd765bd, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/Vector2GameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/Vector2GameEventListener.cs new file mode 100644 index 0000000..7ad7527 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/Vector2GameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "Vector2 Event Listener")] + public sealed class Vector2GameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/Vector2GameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/Vector2GameEventListener.cs.meta new file mode 100644 index 0000000..15387af --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/Vector2GameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4b54fa01acca67d41bb950e0d324bfcf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 37ea5f5d3b06f5d4ab8fc2ecbcec891b, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/Vector3GameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/Vector3GameEventListener.cs new file mode 100644 index 0000000..45143b5 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/Vector3GameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "Vector3 Event Listener")] + public sealed class Vector3GameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/Vector3GameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/Vector3GameEventListener.cs.meta new file mode 100644 index 0000000..6561748 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/Vector3GameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ac2fc5a78b7e63945bfa39128a8eefc4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 93f8ba988ec5d26429a948bdde52d41b, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Listeners/Vector4GameEventListener.cs b/Architecture/ScriptableObjects/Events/Listeners/Vector4GameEventListener.cs new file mode 100644 index 0000000..dd45131 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/Vector4GameEventListener.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [AddComponentMenu(SOArchitecture_Utility.EVENT_LISTENER_SUBMENU + "Vector4 Event Listener")] + public sealed class Vector4GameEventListener : BaseGameEventListener + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Listeners/Vector4GameEventListener.cs.meta b/Architecture/ScriptableObjects/Events/Listeners/Vector4GameEventListener.cs.meta new file mode 100644 index 0000000..228d0e7 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Listeners/Vector4GameEventListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 29210de1b924b2447875a0db5f4aa28a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5aaf554fc7cbc374696da1e7fef6f36d, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses.meta b/Architecture/ScriptableObjects/Events/Responses.meta new file mode 100644 index 0000000..4cb3f9f --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e533ae2ef8c16bd439b946276b4f0f4e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/AudioClipUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/AudioClipUnityEvent.cs new file mode 100644 index 0000000..36b05e7 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/AudioClipUnityEvent.cs @@ -0,0 +1,11 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class AudioClipUnityEvent : UnityEvent + { + + } +} diff --git a/Architecture/ScriptableObjects/Events/Responses/AudioClipUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/AudioClipUnityEvent.cs.meta new file mode 100644 index 0000000..17292c2 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/AudioClipUnityEvent.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 7dfc7e5eb87c48ffbd1ea05999025055 +timeCreated: 1572335662 \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/BoolUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/BoolUnityEvent.cs new file mode 100644 index 0000000..bf2078e --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/BoolUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class BoolUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/BoolUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/BoolUnityEvent.cs.meta new file mode 100644 index 0000000..7663d6e --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/BoolUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 85a8329bdc5c13f4dbb905211376f2ad +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/ByteUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/ByteUnityEvent.cs new file mode 100644 index 0000000..896b6c8 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/ByteUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class ByteUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/ByteUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/ByteUnityEvent.cs.meta new file mode 100644 index 0000000..18e18c8 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/ByteUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c2241684fa1fedc469507f17bf259e44 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/CharUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/CharUnityEvent.cs new file mode 100644 index 0000000..34c1bb9 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/CharUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class CharUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/CharUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/CharUnityEvent.cs.meta new file mode 100644 index 0000000..fbf0623 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/CharUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fa9c2325dbea90247b69a5e39fe44929 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/DoubleUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/DoubleUnityEvent.cs new file mode 100644 index 0000000..4a6c3c0 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/DoubleUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class DoubleUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/DoubleUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/DoubleUnityEvent.cs.meta new file mode 100644 index 0000000..88f56d8 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/DoubleUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d8e441c654518c648ba6faed2b5b443d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/FloatUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/FloatUnityEvent.cs new file mode 100644 index 0000000..9782181 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/FloatUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class FloatUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/FloatUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/FloatUnityEvent.cs.meta new file mode 100644 index 0000000..b349923 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/FloatUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8075f21c92d426b4ca92c55ed46d31bd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/GameObjectUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/GameObjectUnityEvent.cs new file mode 100644 index 0000000..f424068 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/GameObjectUnityEvent.cs @@ -0,0 +1,10 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class GameObjectUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/GameObjectUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/GameObjectUnityEvent.cs.meta new file mode 100644 index 0000000..0a25d74 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/GameObjectUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 87bc7ad0fb0d4ff469462e972686f019 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/IntUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/IntUnityEvent.cs new file mode 100644 index 0000000..c7eb57a --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/IntUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class IntUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/IntUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/IntUnityEvent.cs.meta new file mode 100644 index 0000000..103f7e8 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/IntUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d35c6c1d85dc4f24b9526988c34762d2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/LongUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/LongUnityEvent.cs new file mode 100644 index 0000000..b2c609e --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/LongUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class LongUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/LongUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/LongUnityEvent.cs.meta new file mode 100644 index 0000000..54ac35c --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/LongUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8158f91dc68860c41abf5704cf27eec0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/ObjectUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/ObjectUnityEvent.cs new file mode 100644 index 0000000..96dbe21 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/ObjectUnityEvent.cs @@ -0,0 +1,10 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class ObjectUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/ObjectUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/ObjectUnityEvent.cs.meta new file mode 100644 index 0000000..52c584b --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/ObjectUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d1c067324aabdea479affacf96ec6b92 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/QuaternionUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/QuaternionUnityEvent.cs new file mode 100644 index 0000000..20898d7 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/QuaternionUnityEvent.cs @@ -0,0 +1,10 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class QuaternionUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/QuaternionUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/QuaternionUnityEvent.cs.meta new file mode 100644 index 0000000..1680ff2 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/QuaternionUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: eec6843bac8cb934999ae49f526afead +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/SByteUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/SByteUnityEvent.cs new file mode 100644 index 0000000..cd3be28 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/SByteUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class SByteUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/SByteUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/SByteUnityEvent.cs.meta new file mode 100644 index 0000000..c2a160a --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/SByteUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: de217fae323e68a41a520765f0837e41 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/ShortUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/ShortUnityEvent.cs new file mode 100644 index 0000000..38eb02e --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/ShortUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class ShortUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/ShortUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/ShortUnityEvent.cs.meta new file mode 100644 index 0000000..002337c --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/ShortUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 990760babbaa73149b6982e48a1abacb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/StringUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/StringUnityEvent.cs new file mode 100644 index 0000000..8d08042 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/StringUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class StringUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/StringUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/StringUnityEvent.cs.meta new file mode 100644 index 0000000..9e003c4 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/StringUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4975f08f908c73d4a8c24d675cf25b54 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/UIntUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/UIntUnityEvent.cs new file mode 100644 index 0000000..e1f49be --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/UIntUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class UIntUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/UIntUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/UIntUnityEvent.cs.meta new file mode 100644 index 0000000..e11da17 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/UIntUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0a32a8728790bae42a6073656a66766f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/ULongUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/ULongUnityEvent.cs new file mode 100644 index 0000000..a4f7568 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/ULongUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class ULongUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/ULongUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/ULongUnityEvent.cs.meta new file mode 100644 index 0000000..6d9267d --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/ULongUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 449e2717b5b8f8a4a83b881126ab93b8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/UShortUnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/UShortUnityEvent.cs new file mode 100644 index 0000000..e14fbf0 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/UShortUnityEvent.cs @@ -0,0 +1,9 @@ +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class UShortUnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/UShortUnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/UShortUnityEvent.cs.meta new file mode 100644 index 0000000..a3dc672 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/UShortUnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1179e155f19fb0a4b8d51f23854b257f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/Vector2UnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/Vector2UnityEvent.cs new file mode 100644 index 0000000..2f4cfa0 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/Vector2UnityEvent.cs @@ -0,0 +1,10 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class Vector2UnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/Vector2UnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/Vector2UnityEvent.cs.meta new file mode 100644 index 0000000..4dcddcc --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/Vector2UnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 04056892f5e8cfc41bff0d2709f85263 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/Vector3UnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/Vector3UnityEvent.cs new file mode 100644 index 0000000..e6471e7 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/Vector3UnityEvent.cs @@ -0,0 +1,10 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class Vector3UnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/Vector3UnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/Vector3UnityEvent.cs.meta new file mode 100644 index 0000000..e84bd73 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/Vector3UnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 77b5b9fa517d55e439c2886283c1c640 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Events/Responses/Vector4UnityEvent.cs b/Architecture/ScriptableObjects/Events/Responses/Vector4UnityEvent.cs new file mode 100644 index 0000000..434f429 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/Vector4UnityEvent.cs @@ -0,0 +1,10 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class Vector4UnityEvent : UnityEvent + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Events/Responses/Vector4UnityEvent.cs.meta b/Architecture/ScriptableObjects/Events/Responses/Vector4UnityEvent.cs.meta new file mode 100644 index 0000000..0ff32d0 --- /dev/null +++ b/Architecture/ScriptableObjects/Events/Responses/Vector4UnityEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 28ebf41b05633bf4cb7d8894199971c6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples.meta b/Architecture/ScriptableObjects/Examples.meta new file mode 100644 index 0000000..81feabb --- /dev/null +++ b/Architecture/ScriptableObjects/Examples.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 02eee3f6dbfff4541a51da4284249326 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Objects.meta b/Architecture/ScriptableObjects/Examples/Objects.meta new file mode 100644 index 0000000..d05ce07 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 96b3bcd047eb5b641baf9ba5331b24af +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Objects/OnDisableRandomThing.asset b/Architecture/ScriptableObjects/Examples/Objects/OnDisableRandomThing.asset new file mode 100644 index 0000000..03f0ede --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/OnDisableRandomThing.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7a78c7052899406438e9fc79486b45c0, type: 3} + m_Name: OnDisableRandomThing + m_EditorClassIdentifier: + DeveloperDescription: + _value: diff --git a/Architecture/ScriptableObjects/Examples/Objects/OnDisableRandomThing.asset.meta b/Architecture/ScriptableObjects/Examples/Objects/OnDisableRandomThing.asset.meta new file mode 100644 index 0000000..18677fa --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/OnDisableRandomThing.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: aa89c184710051e43b3123245794dda6 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Objects/OnPlayerDamaged.asset b/Architecture/ScriptableObjects/Examples/Objects/OnPlayerDamaged.asset new file mode 100644 index 0000000..9ab99a0 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/OnPlayerDamaged.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7a78c7052899406438e9fc79486b45c0, type: 3} + m_Name: OnPlayerDamaged + m_EditorClassIdentifier: + DeveloperDescription: + _value: diff --git a/Architecture/ScriptableObjects/Examples/Objects/OnPlayerDamaged.asset.meta b/Architecture/ScriptableObjects/Examples/Objects/OnPlayerDamaged.asset.meta new file mode 100644 index 0000000..9cec074 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/OnPlayerDamaged.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6205baf386184bf4c879e8216918a90a +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Objects/Player Health.asset b/Architecture/ScriptableObjects/Examples/Objects/Player Health.asset new file mode 100644 index 0000000..2ce4bb7 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/Player Health.asset @@ -0,0 +1,21 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f9377ffeb64ba30478a995a8ffc78ae8, type: 3} + m_Name: Player Health + m_EditorClassIdentifier: + DeveloperDescription: 'It''s important to remember that Scriptable Objects will + not reset when you exit playmode. This means that player health is not automatically + reset + + + Simply have a separate object that contains the starting health of your player, + and make sure the health component resets on awake' + _value: -60 diff --git a/Architecture/ScriptableObjects/Examples/Objects/Player Health.asset.meta b/Architecture/ScriptableObjects/Examples/Objects/Player Health.asset.meta new file mode 100644 index 0000000..a3d19b5 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/Player Health.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 00040033833585f4b940c1e6c8d5d2e1 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Objects/Player Move Speed.asset b/Architecture/ScriptableObjects/Examples/Objects/Player Move Speed.asset new file mode 100644 index 0000000..750bd8f --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/Player Move Speed.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f9377ffeb64ba30478a995a8ffc78ae8, type: 3} + m_Name: Player Move Speed + m_EditorClassIdentifier: + DeveloperDescription: + _value: 0.2 diff --git a/Architecture/ScriptableObjects/Examples/Objects/Player Move Speed.asset.meta b/Architecture/ScriptableObjects/Examples/Objects/Player Move Speed.asset.meta new file mode 100644 index 0000000..3729174 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/Player Move Speed.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e764e13357fec0248ba927f62fde9779 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Objects/Player Starting Health.asset b/Architecture/ScriptableObjects/Examples/Objects/Player Starting Health.asset new file mode 100644 index 0000000..f2b9ae1 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/Player Starting Health.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f9377ffeb64ba30478a995a8ffc78ae8, type: 3} + m_Name: Player Starting Health + m_EditorClassIdentifier: + DeveloperDescription: + _value: 100 diff --git a/Architecture/ScriptableObjects/Examples/Objects/Player Starting Health.asset.meta b/Architecture/ScriptableObjects/Examples/Objects/Player Starting Health.asset.meta new file mode 100644 index 0000000..619eab0 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/Player Starting Health.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b786e1b7e7eaff2459e2286b5f95b019 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Objects/Sphere Of Pain Damage.asset b/Architecture/ScriptableObjects/Examples/Objects/Sphere Of Pain Damage.asset new file mode 100644 index 0000000..c9d328e --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/Sphere Of Pain Damage.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f9377ffeb64ba30478a995a8ffc78ae8, type: 3} + m_Name: Sphere Of Pain Damage + m_EditorClassIdentifier: + DeveloperDescription: + _value: 10 diff --git a/Architecture/ScriptableObjects/Examples/Objects/Sphere Of Pain Damage.asset.meta b/Architecture/ScriptableObjects/Examples/Objects/Sphere Of Pain Damage.asset.meta new file mode 100644 index 0000000..9d7c940 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/Sphere Of Pain Damage.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6a37932d0acd09746b3d2a9b91fc143e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Objects/Thing Collection.asset b/Architecture/ScriptableObjects/Examples/Objects/Thing Collection.asset new file mode 100644 index 0000000..8edc130 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/Thing Collection.asset @@ -0,0 +1,18 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 156f4052644faf645bba864aa1fd4e16, type: 3} + m_Name: Thing Collection + m_EditorClassIdentifier: + DeveloperDescription: + _value: + _items: + - {fileID: 0} + - {fileID: 1522689786157718, guid: 3768c23610dfe9140af281dcf25e1b38, type: 2} diff --git a/Architecture/ScriptableObjects/Examples/Objects/Thing Collection.asset.meta b/Architecture/ScriptableObjects/Examples/Objects/Thing Collection.asset.meta new file mode 100644 index 0000000..0af6f92 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Objects/Thing Collection.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 711814e21a7beb249833d6173e4082cc +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Prefabs.meta b/Architecture/ScriptableObjects/Examples/Prefabs.meta new file mode 100644 index 0000000..43fa937 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Prefabs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dfd56da64f9e81a4b9c6be1660c4ab2c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Prefabs/Event Example Player.prefab b/Architecture/ScriptableObjects/Examples/Prefabs/Event Example Player.prefab new file mode 100644 index 0000000..3094e3b --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Prefabs/Event Example Player.prefab @@ -0,0 +1,4861 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 0} + m_RootGameObject: {fileID: 1522689786157718} + m_IsPrefabAsset: 1 +--- !u!1 &1347073845552512 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 6 + m_Component: + - component: {fileID: 4956627087005180} + - component: {fileID: 198271439376483466} + - component: {fileID: 199587267899567076} + - component: {fileID: 114723287923023254} + m_Layer: 0 + m_Name: Particle System + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &1522689786157718 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 6 + m_Component: + - component: {fileID: 4790722713147504} + - component: {fileID: 54678892930059536} + - component: {fileID: 33804990608882674} + - component: {fileID: 23728631493493720} + - component: {fileID: 65094364359253274} + - component: {fileID: 114771994480412342} + - component: {fileID: 114212140993495922} + m_Layer: 0 + m_Name: Event Example Player + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4790722713147504 +Transform: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 4956627087005180} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &4956627087005180 +Transform: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1347073845552512} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 4790722713147504} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &23728631493493720 +MeshRenderer: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 4294967295 + m_Materials: + - {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &33804990608882674 +MeshFilter: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!54 &54678892930059536 +Rigidbody: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + serializedVersion: 2 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_UseGravity: 0 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!65 &65094364359253274 +BoxCollider: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &114212140993495922 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 96e1b83887e9c9d4e8300e77aaa4f9c6, type: 3} + m_Name: + m_EditorClassIdentifier: + Health: + _useConstant: 0 + _constantValue: 0 + _variable: {fileID: 11400000, guid: 00040033833585f4b940c1e6c8d5d2e1, type: 2} + _resetOnStartup: 1 + _startingHealth: + _useConstant: 0 + _constantValue: 100 + _variable: {fileID: 11400000, guid: b786e1b7e7eaff2459e2286b5f95b019, type: 2} +--- !u!114 &114723287923023254 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1347073845552512} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5758ca93461aeeb4589456a052b07d74, type: 3} + m_Name: + m_EditorClassIdentifier: + DeveloperDescription: + _value: + _debugColor: {r: 0, g: 1, b: 1, a: 1} + _event: {fileID: 11400000, guid: 6205baf386184bf4c879e8216918a90a, type: 2} + _response: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 198271439376483466} + m_MethodName: Emit + m_Mode: 3 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 10 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + m_TypeName: UnityEngine.Events.UnityEvent, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!114 &114771994480412342 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8d7b74a36443f534fb69a2c2b26eb5ab, type: 3} + m_Name: + m_EditorClassIdentifier: + _moveSpeed: + _useConstant: 0 + _constantValue: 0 + _variable: {fileID: 11400000, guid: e764e13357fec0248ba927f62fde9779, type: 2} +--- !u!198 &198271439376483466 +ParticleSystem: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1347073845552512} + serializedVersion: 5 + lengthInSec: 1 + simulationSpeed: 1 + stopAction: 0 + looping: 0 + prewarm: 0 + playOnAwake: 0 + useUnscaledTime: 0 + autoRandomSeed: 1 + useRigidbodyForVelocity: 1 + startDelay: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + moveWithTransform: 1 + moveWithCustomTransform: {fileID: 0} + scalingMode: 1 + randomSeed: 0 + InitialModule: + serializedVersion: 3 + enabled: 1 + startLifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.6 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 5 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startColor: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 0, b: 0, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + startSize: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotation: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + randomizeRotationDirection: 0 + maxNumParticles: 1000 + size3D: 0 + rotation3D: 0 + gravityModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ShapeModule: + serializedVersion: 5 + enabled: 1 + type: 0 + angle: 25 + length: 5 + boxThickness: {x: 0, y: 0, z: 0} + radiusThickness: 1 + donutRadius: 0.2 + m_Position: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0} + m_Scale: {x: 1, y: 1, z: 1} + placementMode: 0 + m_MeshMaterialIndex: 0 + m_MeshNormalOffset: 0 + m_Mesh: {fileID: 0} + m_MeshRenderer: {fileID: 0} + m_SkinnedMeshRenderer: {fileID: 0} + m_Sprite: {fileID: 0} + m_SpriteRenderer: {fileID: 0} + m_UseMeshMaterialIndex: 0 + m_UseMeshColors: 1 + alignToDirection: 0 + m_Texture: {fileID: 0} + m_TextureClipChannel: 3 + m_TextureClipThreshold: 0 + m_TextureUVChannel: 0 + m_TextureColorAffectsParticles: 1 + m_TextureAlphaAffectsParticles: 1 + m_TextureBilinearFiltering: 0 + randomDirectionAmount: 0 + sphericalDirectionAmount: 0 + randomPositionAmount: 0 + radius: + value: 1 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + arc: + value: 360 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + EmissionModule: + enabled: 1 + serializedVersion: 4 + rateOverTime: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 10 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rateOverDistance: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BurstCount: 1 + m_Bursts: + - serializedVersion: 2 + time: 0 + countCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 30 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + cycleCount: 1 + repeatInterval: 0.01 + SizeModule: + enabled: 1 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0.515892 + value: 1 + inSlope: -3.630075 + outSlope: -3.630075 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0.117649995 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + RotationModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + ColorModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 1, g: 1, b: 1, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 65535 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 56090 + atime2: 65535 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 3 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + UVModule: + enabled: 0 + mode: 0 + frameOverTime: + serializedVersion: 2 + minMaxState: 1 + scalar: 0.9999 + minScalar: 0.9999 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startFrame: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + tilesX: 1 + tilesY: 1 + animationType: 0 + rowIndex: 0 + cycles: 1 + uvChannelMask: -1 + flipU: 0 + flipV: 0 + randomRow: 1 + sprites: + - sprite: {fileID: 0} + VelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + radial: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + InheritVelocityModule: + enabled: 0 + m_Mode: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ForceModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + randomizePerFrame: 0 + ExternalForcesModule: + enabled: 0 + multiplier: 1 + ClampVelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + magnitude: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxis: 0 + inWorldSpace: 0 + multiplyDragByParticleSize: 1 + multiplyDragByParticleVelocity: 1 + dampen: 0 + drag: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + NoiseModule: + enabled: 0 + strength: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + frequency: 0.5 + damping: 1 + octaves: 1 + octaveMultiplier: 0.5 + octaveScale: 2 + quality: 2 + scrollSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remap: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapY: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapZ: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapEnabled: 0 + positionAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rotationAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + sizeAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + SizeBySpeedModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + range: {x: 0, y: 1} + separateAxes: 0 + RotationBySpeedModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + range: {x: 0, y: 1} + ColorBySpeedModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + range: {x: 0, y: 1} + CollisionModule: + enabled: 0 + serializedVersion: 3 + type: 0 + collisionMode: 0 + colliderForce: 0 + multiplyColliderForceByParticleSize: 0 + multiplyColliderForceByParticleSpeed: 0 + multiplyColliderForceByCollisionAngle: 1 + plane0: {fileID: 0} + plane1: {fileID: 0} + plane2: {fileID: 0} + plane3: {fileID: 0} + plane4: {fileID: 0} + plane5: {fileID: 0} + m_Dampen: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Bounce: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_EnergyLossOnCollision: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minKillSpeed: 0 + maxKillSpeed: 10000 + radiusScale: 1 + collidesWith: + serializedVersion: 2 + m_Bits: 4294967295 + maxCollisionShapes: 256 + quality: 0 + voxelSize: 0.5 + collisionMessages: 0 + collidesWithDynamic: 1 + interiorCollisions: 0 + TriggerModule: + enabled: 0 + collisionShape0: {fileID: 0} + collisionShape1: {fileID: 0} + collisionShape2: {fileID: 0} + collisionShape3: {fileID: 0} + collisionShape4: {fileID: 0} + collisionShape5: {fileID: 0} + inside: 1 + outside: 0 + enter: 0 + exit: 0 + radiusScale: 1 + SubModule: + serializedVersion: 2 + enabled: 0 + subEmitters: + - serializedVersion: 2 + emitter: {fileID: 0} + type: 0 + properties: 0 + LightsModule: + enabled: 0 + ratio: 0 + light: {fileID: 0} + randomDistribution: 1 + color: 1 + range: 1 + intensity: 1 + rangeCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + intensityCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + maxLights: 20 + TrailModule: + enabled: 0 + mode: 0 + ratio: 1 + lifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minVertexDistance: 0.2 + textureMode: 0 + ribbonCount: 1 + worldSpace: 0 + dieWithParticles: 1 + sizeAffectsWidth: 1 + sizeAffectsLifetime: 0 + inheritParticleColor: 1 + generateLightingData: 0 + splitSubEmitterRibbons: 0 + colorOverLifetime: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + widthOverTrail: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorOverTrail: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + CustomDataModule: + enabled: 0 + mode0: 0 + vectorComponentCount0: 4 + color0: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel0: Color + vector0_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_0: X + vector0_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_1: Y + vector0_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_2: Z + vector0_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_3: W + mode1: 0 + vectorComponentCount1: 4 + color1: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel1: Color + vector1_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_0: X + vector1_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_1: Y + vector1_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_2: Z + vector1_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_3: W +--- !u!199 &199587267899567076 +ParticleSystemRenderer: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1347073845552512} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RenderingLayerMask: 4294967295 + m_Materials: + - {fileID: 10301, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_RenderMode: 0 + m_SortMode: 0 + m_MinParticleSize: 0 + m_MaxParticleSize: 0.5 + m_CameraVelocityScale: 0 + m_VelocityScale: 0 + m_LengthScale: 2 + m_SortingFudge: 0 + m_NormalDirection: 1 + m_RenderAlignment: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_UseCustomVertexStreams: 0 + m_EnableGPUInstancing: 1 + m_ApplyActiveColorSpace: 1 + m_VertexStreams: 00010304 + m_Mesh: {fileID: 0} + m_Mesh1: {fileID: 0} + m_Mesh2: {fileID: 0} + m_Mesh3: {fileID: 0} + m_MaskInteraction: 0 diff --git a/Architecture/ScriptableObjects/Examples/Prefabs/Event Example Player.prefab.meta b/Architecture/ScriptableObjects/Examples/Prefabs/Event Example Player.prefab.meta new file mode 100644 index 0000000..cb8103b --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Prefabs/Event Example Player.prefab.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c478e907c947a8f4fbf1ac2ffce44704 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 100100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Prefabs/Healtbar.prefab b/Architecture/ScriptableObjects/Examples/Prefabs/Healtbar.prefab new file mode 100644 index 0000000..880e0fc --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Prefabs/Healtbar.prefab @@ -0,0 +1,173 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 0} + m_RootGameObject: {fileID: 1259392919135328} + m_IsPrefabAsset: 1 +--- !u!1 &1259392919135328 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 6 + m_Component: + - component: {fileID: 224795495137418836} + - component: {fileID: 222110132855040950} + - component: {fileID: 114484129694845770} + m_Layer: 5 + m_Name: Healtbar + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &1701639925345028 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 6 + m_Component: + - component: {fileID: 224638073084407046} + - component: {fileID: 222957463557399966} + - component: {fileID: 114477794528480230} + - component: {fileID: 114413626718171422} + m_Layer: 5 + m_Name: Fill + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &114413626718171422 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1701639925345028} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6b4a9d4ae717c8646a08e19ec31e859c, type: 3} + m_Name: + m_EditorClassIdentifier: + _variable: + _useConstant: 0 + _constantValue: 0 + _variable: {fileID: 11400000, guid: 00040033833585f4b940c1e6c8d5d2e1, type: 2} + _maxValue: + _useConstant: 0 + _constantValue: 0 + _variable: {fileID: 11400000, guid: b786e1b7e7eaff2459e2286b5f95b019, type: 2} + _imageTarget: {fileID: 114477794528480230} +--- !u!114 &114477794528480230 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1701639925345028} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.6698113, g: 0.18009077, b: 0.18009077, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_Sprite: {fileID: 21300000, guid: 3a202efd49d4b2a4c87c4c4ea231854b, type: 3} + m_Type: 3 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 0 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &114484129694845770 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1259392919135328} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!222 &222110132855040950 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1259392919135328} + m_CullTransparentMesh: 0 +--- !u!222 &222957463557399966 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1701639925345028} + m_CullTransparentMesh: 0 +--- !u!224 &224638073084407046 +RectTransform: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1701639925345028} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 224795495137418836} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: -10, y: -10} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!224 &224795495137418836 +RectTransform: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1259392919135328} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 224638073084407046} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 10, y: -10} + m_SizeDelta: {x: 400, y: 50} + m_Pivot: {x: 0, y: 1} diff --git a/Architecture/ScriptableObjects/Examples/Prefabs/Healtbar.prefab.meta b/Architecture/ScriptableObjects/Examples/Prefabs/Healtbar.prefab.meta new file mode 100644 index 0000000..5ec5131 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Prefabs/Healtbar.prefab.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 30898bb5526f8f542aa93bfaac20d996 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 100100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Prefabs/Reference Example Player.prefab b/Architecture/ScriptableObjects/Examples/Prefabs/Reference Example Player.prefab new file mode 100644 index 0000000..a0b91fe --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Prefabs/Reference Example Player.prefab @@ -0,0 +1,151 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 0} + m_RootGameObject: {fileID: 1522689786157718} + m_IsPrefabAsset: 1 +--- !u!1 &1522689786157718 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 6 + m_Component: + - component: {fileID: 4790722713147504} + - component: {fileID: 54678892930059536} + - component: {fileID: 33804990608882674} + - component: {fileID: 23728631493493720} + - component: {fileID: 65094364359253274} + - component: {fileID: 114771994480412342} + - component: {fileID: 114212140993495922} + m_Layer: 0 + m_Name: Reference Example Player + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4790722713147504 +Transform: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &23728631493493720 +MeshRenderer: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 4294967295 + m_Materials: + - {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &33804990608882674 +MeshFilter: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!54 &54678892930059536 +Rigidbody: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + serializedVersion: 2 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_UseGravity: 0 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!65 &65094364359253274 +BoxCollider: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &114212140993495922 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 96e1b83887e9c9d4e8300e77aaa4f9c6, type: 3} + m_Name: + m_EditorClassIdentifier: + Health: + _useConstant: 0 + _constantValue: 0 + _variable: {fileID: 11400000, guid: 00040033833585f4b940c1e6c8d5d2e1, type: 2} + _resetOnStartup: 1 + _startingHealth: + _useConstant: 0 + _constantValue: 100 + _variable: {fileID: 11400000, guid: b786e1b7e7eaff2459e2286b5f95b019, type: 2} +--- !u!114 &114771994480412342 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1522689786157718} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8d7b74a36443f534fb69a2c2b26eb5ab, type: 3} + m_Name: + m_EditorClassIdentifier: + _moveSpeed: + _useConstant: 0 + _constantValue: 0 + _variable: {fileID: 11400000, guid: e764e13357fec0248ba927f62fde9779, type: 2} diff --git a/Architecture/ScriptableObjects/Examples/Prefabs/Reference Example Player.prefab.meta b/Architecture/ScriptableObjects/Examples/Prefabs/Reference Example Player.prefab.meta new file mode 100644 index 0000000..b47a520 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Prefabs/Reference Example Player.prefab.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3768c23610dfe9140af281dcf25e1b38 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 100100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Prefabs/Sphere Of Pain With Event.prefab b/Architecture/ScriptableObjects/Examples/Prefabs/Sphere Of Pain With Event.prefab new file mode 100644 index 0000000..e900d11 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Prefabs/Sphere Of Pain With Event.prefab @@ -0,0 +1,115 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 0} + m_RootGameObject: {fileID: 1881607898596468} + m_IsPrefabAsset: 1 +--- !u!1 &1881607898596468 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 6 + m_Component: + - component: {fileID: 4839017886741306} + - component: {fileID: 33320241699146126} + - component: {fileID: 23010049106258886} + - component: {fileID: 135838003564223064} + - component: {fileID: 114978623595468858} + m_Layer: 0 + m_Name: Sphere Of Pain With Event + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4839017886741306 +Transform: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1881607898596468} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 2.11, y: 1.93, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &23010049106258886 +MeshRenderer: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1881607898596468} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 4294967295 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &33320241699146126 +MeshFilter: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1881607898596468} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &114978623595468858 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1881607898596468} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6091c23144d06c64b860bdfa9200353d, type: 3} + m_Name: + m_EditorClassIdentifier: + _damageAmount: + _useConstant: 0 + _constantValue: 0 + _variable: {fileID: 11400000, guid: 6a37932d0acd09746b3d2a9b91fc143e, type: 2} + _onDamagedEvent: {fileID: 11400000, guid: 6205baf386184bf4c879e8216918a90a, type: 2} +--- !u!135 &135838003564223064 +SphereCollider: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1881607898596468} + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.5 + m_Center: {x: 0, y: 0, z: 0} diff --git a/Architecture/ScriptableObjects/Examples/Prefabs/Sphere Of Pain With Event.prefab.meta b/Architecture/ScriptableObjects/Examples/Prefabs/Sphere Of Pain With Event.prefab.meta new file mode 100644 index 0000000..5b49f01 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Prefabs/Sphere Of Pain With Event.prefab.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4be13ed8fe0751a4093279a926769b1b +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 100100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Prefabs/Sphere Of Pain.prefab b/Architecture/ScriptableObjects/Examples/Prefabs/Sphere Of Pain.prefab new file mode 100644 index 0000000..df377e8 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Prefabs/Sphere Of Pain.prefab @@ -0,0 +1,114 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 0} + m_RootGameObject: {fileID: 1881607898596468} + m_IsPrefabAsset: 1 +--- !u!1 &1881607898596468 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 6 + m_Component: + - component: {fileID: 4839017886741306} + - component: {fileID: 33320241699146126} + - component: {fileID: 23010049106258886} + - component: {fileID: 135838003564223064} + - component: {fileID: 114838005575915090} + m_Layer: 0 + m_Name: Sphere Of Pain + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4839017886741306 +Transform: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1881607898596468} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -2.11, y: 1.93, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &23010049106258886 +MeshRenderer: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1881607898596468} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 4294967295 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &33320241699146126 +MeshFilter: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1881607898596468} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &114838005575915090 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1881607898596468} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0a7bd50eba8549846a5c70229ab69aff, type: 3} + m_Name: + m_EditorClassIdentifier: + _damageAmount: + _useConstant: 0 + _constantValue: 0 + _variable: {fileID: 11400000, guid: 6a37932d0acd09746b3d2a9b91fc143e, type: 2} +--- !u!135 &135838003564223064 +SphereCollider: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1881607898596468} + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.5 + m_Center: {x: 0, y: 0, z: 0} diff --git a/Architecture/ScriptableObjects/Examples/Prefabs/Sphere Of Pain.prefab.meta b/Architecture/ScriptableObjects/Examples/Prefabs/Sphere Of Pain.prefab.meta new file mode 100644 index 0000000..a4e4c93 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Prefabs/Sphere Of Pain.prefab.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4af3f7bae9508154aa309138a5831b06 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 100100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scenes.meta b/Architecture/ScriptableObjects/Examples/Scenes.meta new file mode 100644 index 0000000..ea6a528 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scenes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e7f435969415ad84385e64eb097a6c9c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scenes/Example #01 - References.unity b/Architecture/ScriptableObjects/Examples/Scenes/Example #01 - References.unity new file mode 100644 index 0000000..d58b1f3 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scenes/Example #01 - References.unity @@ -0,0 +1,781 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0.44657898, g: 0.4964133, b: 0.5748178, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_TemporalCoherenceThreshold: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_LightmapEditorSettings: + serializedVersion: 10 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringMode: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ShowResolutionOverlay: 1 + m_LightingDataAsset: {fileID: 0} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &147608476 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 147608479} + - component: {fileID: 147608478} + - component: {fileID: 147608477} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &147608477 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 147608476} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1077351063, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &147608478 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 147608476} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -619905303, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &147608479 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 147608476} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 6 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &214446042 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 214446043} + - component: {fileID: 214446047} + - component: {fileID: 214446046} + - component: {fileID: 214446045} + - component: {fileID: 214446044} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &214446043 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 214446042} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2111935889} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -190.94} + m_SizeDelta: {x: 371.04, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &214446044 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 214446042} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1741964061, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalFit: 0 + m_VerticalFit: 2 +--- !u!114 &214446045 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 214446042} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1573420865, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 0.5} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 1 +--- !u!114 &214446046 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 214446042} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 17 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 1 + m_MaxSize: 115 + m_Alignment: 0 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'You can use WASD to move the cube into the spheres. Notice how the HP will + decrease. Take some time to explore the objects in the scene and their source + code. + + + You should get a picture of how the Scriptable Objects tie this together' +--- !u!222 &214446047 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 214446042} + m_CullTransparentMesh: 0 +--- !u!1 &598580665 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 598580667} + - component: {fileID: 598580666} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &598580666 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 598580665} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 1 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &598580667 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 598580665} + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1001 &1134496304 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalPosition.x + value: -2.11 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalPosition.y + value: 1.93 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 1881607898596468, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_Name + value: Sphere Of Pain (1) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + m_IsPrefabAsset: 0 +--- !u!1001 &1711526035 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4790722713147504, guid: 3768c23610dfe9140af281dcf25e1b38, type: 2} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: 3768c23610dfe9140af281dcf25e1b38, type: 2} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: 3768c23610dfe9140af281dcf25e1b38, type: 2} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: 3768c23610dfe9140af281dcf25e1b38, type: 2} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: 3768c23610dfe9140af281dcf25e1b38, type: 2} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: 3768c23610dfe9140af281dcf25e1b38, type: 2} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: 3768c23610dfe9140af281dcf25e1b38, type: 2} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: 3768c23610dfe9140af281dcf25e1b38, type: 2} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 114212140993495922, guid: 3768c23610dfe9140af281dcf25e1b38, + type: 2} + propertyPath: PlayerHealth._useConstant + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 114212140993495922, guid: 3768c23610dfe9140af281dcf25e1b38, + type: 2} + propertyPath: PlayerHealth._variable + value: + objectReference: {fileID: 11400000, guid: 00040033833585f4b940c1e6c8d5d2e1, + type: 2} + - target: {fileID: 114212140993495922, guid: 3768c23610dfe9140af281dcf25e1b38, + type: 2} + propertyPath: Health._variable + value: + objectReference: {fileID: 11400000, guid: 00040033833585f4b940c1e6c8d5d2e1, + type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3768c23610dfe9140af281dcf25e1b38, type: 2} + m_IsPrefabAsset: 0 +--- !u!224 &1728092915 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + m_PrefabInternal: {fileID: 2066489708} +--- !u!1001 &1951695168 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalPosition.x + value: 2.11 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalPosition.y + value: 1.93 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 135838003564223064, guid: 4af3f7bae9508154aa309138a5831b06, + type: 2} + propertyPath: m_IsTrigger + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4af3f7bae9508154aa309138a5831b06, type: 2} + m_IsPrefabAsset: 0 +--- !u!1 &2032243762 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2032243765} + - component: {fileID: 2032243764} + - component: {fileID: 2032243763} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &2032243763 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2032243762} + m_Enabled: 1 +--- !u!20 &2032243764 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2032243762} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &2032243765 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2032243762} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 1, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &2066489708 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 2111935889} + m_Modifications: + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_AnchoredPosition.x + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_AnchoredPosition.y + value: -10 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_SizeDelta.x + value: 400 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_SizeDelta.y + value: 50 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_AnchorMin.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_Pivot.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_Pivot.y + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 30898bb5526f8f542aa93bfaac20d996, type: 2} + m_IsPrefabAsset: 0 +--- !u!1 &2111935885 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2111935889} + - component: {fileID: 2111935888} + - component: {fileID: 2111935887} + - component: {fileID: 2111935886} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &2111935886 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2111935885} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &2111935887 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2111935885} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 +--- !u!223 &2111935888 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2111935885} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &2111935889 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2111935885} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 1728092915} + - {fileID: 214446043} + m_Father: {fileID: 0} + m_RootOrder: 5 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} diff --git a/Architecture/ScriptableObjects/Examples/Scenes/Example #01 - References.unity.meta b/Architecture/ScriptableObjects/Examples/Scenes/Example #01 - References.unity.meta new file mode 100644 index 0000000..95063f0 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scenes/Example #01 - References.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: aa169694de7c0d046ad1b5fdb65c8cb5 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scenes/Example #02 - Events.unity b/Architecture/ScriptableObjects/Examples/Scenes/Example #02 - Events.unity new file mode 100644 index 0000000..28feb57 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scenes/Example #02 - Events.unity @@ -0,0 +1,760 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0.44657898, g: 0.4964133, b: 0.5748178, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_TemporalCoherenceThreshold: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_LightmapEditorSettings: + serializedVersion: 10 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringMode: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ShowResolutionOverlay: 1 + m_LightingDataAsset: {fileID: 0} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &147608476 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 147608479} + - component: {fileID: 147608478} + - component: {fileID: 147608477} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &147608477 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 147608476} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1077351063, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &147608478 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 147608476} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -619905303, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &147608479 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 147608476} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 6 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &214446042 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 214446043} + - component: {fileID: 214446047} + - component: {fileID: 214446046} + - component: {fileID: 214446045} + - component: {fileID: 214446044} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &214446043 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 214446042} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2111935889} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -190.94} + m_SizeDelta: {x: 371.04, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &214446044 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 214446042} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1741964061, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalFit: 0 + m_VerticalFit: 2 +--- !u!114 &214446045 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 214446042} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1573420865, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 0.5} + m_EffectDistance: {x: 1, y: -1} + m_UseGraphicAlpha: 1 +--- !u!114 &214446046 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 214446042} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 17 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 1 + m_MaxSize: 115 + m_Alignment: 0 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'Now we''re going to add some particles whenever the player is damaged. + We obviously don''t want to check the player health every frame to see when this + occurs, so instead we''re going to implement an event using Scriptable Objects + + + Notice how the Particle System is hooked up without a single line of code being + written' +--- !u!222 &214446047 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 214446042} + m_CullTransparentMesh: 0 +--- !u!1 &598580665 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 598580667} + - component: {fileID: 598580666} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &598580666 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 598580665} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 1 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &598580667 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 598580665} + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!224 &1728092915 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + m_PrefabInternal: {fileID: 2066489708} +--- !u!1001 &1771019333 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalPosition.x + value: 2.11 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalPosition.y + value: 1.93 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 1881607898596468, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_Name + value: Sphere Of Pain With Event (1) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + m_IsPrefabAsset: 0 +--- !u!1001 &1967340088 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4790722713147504, guid: c478e907c947a8f4fbf1ac2ffce44704, type: 2} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: c478e907c947a8f4fbf1ac2ffce44704, type: 2} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: c478e907c947a8f4fbf1ac2ffce44704, type: 2} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: c478e907c947a8f4fbf1ac2ffce44704, type: 2} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: c478e907c947a8f4fbf1ac2ffce44704, type: 2} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: c478e907c947a8f4fbf1ac2ffce44704, type: 2} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: c478e907c947a8f4fbf1ac2ffce44704, type: 2} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4790722713147504, guid: c478e907c947a8f4fbf1ac2ffce44704, type: 2} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: c478e907c947a8f4fbf1ac2ffce44704, type: 2} + m_IsPrefabAsset: 0 +--- !u!1001 &1991808075 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalPosition.x + value: -2.11 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalPosition.y + value: 1.93 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4839017886741306, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4be13ed8fe0751a4093279a926769b1b, type: 2} + m_IsPrefabAsset: 0 +--- !u!1 &2032243762 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2032243765} + - component: {fileID: 2032243764} + - component: {fileID: 2032243763} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &2032243763 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2032243762} + m_Enabled: 1 +--- !u!20 &2032243764 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2032243762} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &2032243765 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2032243762} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 1, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &2066489708 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 2111935889} + m_Modifications: + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_AnchoredPosition.x + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_AnchoredPosition.y + value: -10 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_SizeDelta.x + value: 400 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_SizeDelta.y + value: 50 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_AnchorMin.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_Pivot.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 224795495137418836, guid: 30898bb5526f8f542aa93bfaac20d996, + type: 2} + propertyPath: m_Pivot.y + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 30898bb5526f8f542aa93bfaac20d996, type: 2} + m_IsPrefabAsset: 0 +--- !u!1 &2111935885 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2111935889} + - component: {fileID: 2111935888} + - component: {fileID: 2111935887} + - component: {fileID: 2111935886} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &2111935886 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2111935885} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &2111935887 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2111935885} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 +--- !u!223 &2111935888 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2111935885} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &2111935889 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2111935885} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 1728092915} + - {fileID: 214446043} + m_Father: {fileID: 0} + m_RootOrder: 5 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} diff --git a/Architecture/ScriptableObjects/Examples/Scenes/Example #02 - Events.unity.meta b/Architecture/ScriptableObjects/Examples/Scenes/Example #02 - Events.unity.meta new file mode 100644 index 0000000..d1c9458 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scenes/Example #02 - Events.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 576c8d711e4aec1478245fb49d7f0147 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scenes/Example #03 - Collections.unity b/Architecture/ScriptableObjects/Examples/Scenes/Example #03 - Collections.unity new file mode 100644 index 0000000..68fb87f --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scenes/Example #03 - Collections.unity @@ -0,0 +1,1369 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0.44657898, g: 0.4964133, b: 0.5748178, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_TemporalCoherenceThreshold: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_LightmapEditorSettings: + serializedVersion: 10 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringMode: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ShowResolutionOverlay: 1 + m_LightingDataAsset: {fileID: 0} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &143058984 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 143058985} + - component: {fileID: 143058989} + - component: {fileID: 143058988} + - component: {fileID: 143058987} + - component: {fileID: 143058986} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &143058985 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 143058984} + m_LocalRotation: {x: -0.2658467, y: 0.3938678, z: 0.022657603, w: 0.87959105} + m_LocalPosition: {x: -1.4200001, y: 1.9000001, z: 11.01} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 386911664} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: -29.047, y: 51.15, z: -11.184001} +--- !u!114 &143058986 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 143058984} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e1e58c123a9f8b8418deb29f883e6e1a, type: 3} + m_Name: + m_EditorClassIdentifier: + _targetCollection: {fileID: 11400000, guid: 711814e21a7beb249833d6173e4082cc, type: 2} +--- !u!65 &143058987 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 143058984} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &143058988 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 143058984} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 4294967295 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &143058989 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 143058984} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &194935388 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 194935390} + - component: {fileID: 194935389} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &194935389 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 194935388} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 1 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &194935390 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 194935388} + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1 &203921093 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 203921096} + - component: {fileID: 203921095} + - component: {fileID: 203921094} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &203921094 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 203921093} + m_Enabled: 1 +--- !u!20 &203921095 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 203921093} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.21960786, g: 0.21960786, b: 0.21960786, a: 1} + m_projectionMatrixMode: 1 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &203921096 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 203921093} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -1.21, y: -1.72, z: 1.17} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &208817286 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 208817287} + - component: {fileID: 208817291} + - component: {fileID: 208817290} + - component: {fileID: 208817289} + - component: {fileID: 208817288} + m_Layer: 0 + m_Name: Cube (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &208817287 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 208817286} + m_LocalRotation: {x: -0.30734205, y: 0.30298218, z: -0.059703387, w: 0.90009904} + m_LocalPosition: {x: 0.07976246, y: -2.86, z: 9.471018} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 386911664} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: -31.138002, y: 42.853, z: -20.069} +--- !u!114 &208817288 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 208817286} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e1e58c123a9f8b8418deb29f883e6e1a, type: 3} + m_Name: + m_EditorClassIdentifier: + _targetCollection: {fileID: 11400000, guid: 711814e21a7beb249833d6173e4082cc, type: 2} +--- !u!65 &208817289 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 208817286} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &208817290 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 208817286} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 4294967295 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &208817291 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 208817286} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &386911663 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 386911664} + m_Layer: 0 + m_Name: Things + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &386911664 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 386911663} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -1.21, y: -1.72, z: 1.17} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 143058985} + - {fileID: 208817287} + - {fileID: 1702463284} + - {fileID: 1698434810} + - {fileID: 2065690086} + m_Father: {fileID: 0} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &456171950 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 456171951} + - component: {fileID: 456171953} + - component: {fileID: 456171952} + - component: {fileID: 456171954} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &456171951 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 456171950} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 562309166} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 40.9} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &456171952 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 456171950} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 1 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: There are 0 things +--- !u!222 &456171953 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 456171950} + m_CullTransparentMesh: 0 +--- !u!114 &456171954 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 456171950} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8664d5f52b89af247a1dd684a075694b, type: 3} + m_Name: + m_EditorClassIdentifier: + _textTarget: {fileID: 456171952} + _setTarget: {fileID: 11400000, guid: 711814e21a7beb249833d6173e4082cc, type: 2} + _textFormat: There are {0} things. +--- !u!1 &562309165 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 562309166} + - component: {fileID: 562309168} + - component: {fileID: 562309167} + m_Layer: 5 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &562309166 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 562309165} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 456171951} + - {fileID: 869005046} + m_Father: {fileID: 1986632949} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -259.25, y: -205.56} + m_SizeDelta: {x: 277.5, y: 142.88} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &562309167 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 562309165} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 0.30980393} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!222 &562309168 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 562309165} + m_CullTransparentMesh: 0 +--- !u!1 &869005045 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 869005046} + - component: {fileID: 869005050} + - component: {fileID: 869005049} + - component: {fileID: 869005048} + m_Layer: 5 + m_Name: Button + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &869005046 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 869005045} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1205746815} + m_Father: {fileID: 562309166} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -15.28} + m_SizeDelta: {x: 160, y: 60.55} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &869005048 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 869005045} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 869005049} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400000, guid: aa89c184710051e43b3123245794dda6, type: 2} + m_MethodName: Raise + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!114 &869005049 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 869005045} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!222 &869005050 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 869005045} + m_CullTransparentMesh: 0 +--- !u!1 &943850016 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 943850019} + - component: {fileID: 943850018} + - component: {fileID: 943850017} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &943850017 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 943850016} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1077351063, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &943850018 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 943850016} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -619905303, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &943850019 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 943850016} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 5 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1205746814 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1205746815} + - component: {fileID: 1205746817} + - component: {fileID: 1205746816} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1205746815 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1205746814} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 869005046} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1205746816 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1205746814} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Disable Random +--- !u!222 &1205746817 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1205746814} + m_CullTransparentMesh: 0 +--- !u!1 &1698434809 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1698434810} + - component: {fileID: 1698434814} + - component: {fileID: 1698434813} + - component: {fileID: 1698434812} + - component: {fileID: 1698434811} + m_Layer: 0 + m_Name: Cube (3) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1698434810 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1698434809} + m_LocalRotation: {x: -0.35567194, y: -0.17583321, z: -0.27030697, w: 0.87721974} + m_LocalPosition: {x: -3.13, y: -0.18999994, z: 9.05} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 386911664} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: -45.977, y: -9.626, z: -30.161001} +--- !u!114 &1698434811 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1698434809} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e1e58c123a9f8b8418deb29f883e6e1a, type: 3} + m_Name: + m_EditorClassIdentifier: + _targetCollection: {fileID: 11400000, guid: 711814e21a7beb249833d6173e4082cc, type: 2} +--- !u!65 &1698434812 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1698434809} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1698434813 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1698434809} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 4294967295 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &1698434814 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1698434809} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1702463283 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1702463284} + - component: {fileID: 1702463288} + - component: {fileID: 1702463287} + - component: {fileID: 1702463286} + - component: {fileID: 1702463285} + m_Layer: 0 + m_Name: Cube (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1702463284 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1702463283} + m_LocalRotation: {x: -0.078005016, y: 0.06665332, z: -0.021680418, w: 0.99448603} + m_LocalPosition: {x: 3.19, y: -0.78, z: 10.11} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 386911664} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: -8.758, y: 7.9070005, z: -3.104} +--- !u!114 &1702463285 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1702463283} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e1e58c123a9f8b8418deb29f883e6e1a, type: 3} + m_Name: + m_EditorClassIdentifier: + _targetCollection: {fileID: 11400000, guid: 711814e21a7beb249833d6173e4082cc, type: 2} +--- !u!65 &1702463286 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1702463283} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1702463287 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1702463283} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 4294967295 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &1702463288 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1702463283} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1986632945 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1986632949} + - component: {fileID: 1986632948} + - component: {fileID: 1986632947} + - component: {fileID: 1986632946} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1986632946 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986632945} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &1986632947 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986632945} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 +--- !u!223 &1986632948 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986632945} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &1986632949 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986632945} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 562309166} + m_Father: {fileID: 0} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!1 &2012918653 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2012918656} + - component: {fileID: 2012918655} + - component: {fileID: 2012918654} + m_Layer: 0 + m_Name: Disabler + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &2012918654 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2012918653} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5758ca93461aeeb4589456a052b07d74, type: 3} + m_Name: + m_EditorClassIdentifier: + DeveloperDescription: + _value: + _debugColor: {r: 0, g: 1, b: 1, a: 1} + _event: {fileID: 11400000, guid: aa89c184710051e43b3123245794dda6, type: 2} + _response: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 2012918655} + m_MethodName: DisableRandom + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + m_TypeName: UnityEngine.Events.UnityEvent, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!114 &2012918655 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2012918653} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 651639a1af81856448caf334816f4406, type: 3} + m_Name: + m_EditorClassIdentifier: + _targetSet: {fileID: 11400000, guid: 711814e21a7beb249833d6173e4082cc, type: 2} +--- !u!4 &2012918656 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2012918653} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 171.41136, y: 143.78856, z: -0.125} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2065690085 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2065690086} + - component: {fileID: 2065690090} + - component: {fileID: 2065690089} + - component: {fileID: 2065690088} + - component: {fileID: 2065690087} + m_Layer: 0 + m_Name: Cube (4) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2065690086 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2065690085} + m_LocalRotation: {x: -0.014305452, y: 0.57186216, z: 0.27356863, w: 0.7732589} + m_LocalPosition: {x: 3.55, y: 1.32, z: 11.33} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 386911664} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: -19.573002, y: 68.486, z: 25.573002} +--- !u!114 &2065690087 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2065690085} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e1e58c123a9f8b8418deb29f883e6e1a, type: 3} + m_Name: + m_EditorClassIdentifier: + _targetCollection: {fileID: 11400000, guid: 711814e21a7beb249833d6173e4082cc, type: 2} +--- !u!65 &2065690088 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2065690085} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &2065690089 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2065690085} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 4294967295 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &2065690090 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2065690085} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} diff --git a/Architecture/ScriptableObjects/Examples/Scenes/Example #03 - Collections.unity.meta b/Architecture/ScriptableObjects/Examples/Scenes/Example #03 - Collections.unity.meta new file mode 100644 index 0000000..34b49ee --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scenes/Example #03 - Collections.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: bdeea8d3973c52d40a7f13c01cf59f39 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scripts.meta b/Architecture/ScriptableObjects/Examples/Scripts.meta new file mode 100644 index 0000000..145a163 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3cdd264f3ec77d142b7b8cfd496277a3 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scripts/CollectionCountDisplayer.cs b/Architecture/ScriptableObjects/Examples/Scripts/CollectionCountDisplayer.cs new file mode 100644 index 0000000..91eb576 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/CollectionCountDisplayer.cs @@ -0,0 +1,20 @@ +using UnityEngine; +using UnityEngine.UI; + +namespace ScriptableObjectArchitecture.Examples +{ + public class CollectionCountDisplayer : MonoBehaviour + { + [SerializeField] + private Text _textTarget = default(Text); + [SerializeField] + private BaseCollection _setTarget = default(BaseCollection); + [SerializeField] + private string _textFormat = "There are {0} things."; + + private void Update() + { + _textTarget.text = string.Format(_textFormat, _setTarget.Count); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Examples/Scripts/CollectionCountDisplayer.cs.meta b/Architecture/ScriptableObjects/Examples/Scripts/CollectionCountDisplayer.cs.meta new file mode 100644 index 0000000..f28c003 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/CollectionCountDisplayer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8664d5f52b89af247a1dd684a075694b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scripts/DamageDealer.cs b/Architecture/ScriptableObjects/Examples/Scripts/DamageDealer.cs new file mode 100644 index 0000000..bd8ecc2 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/DamageDealer.cs @@ -0,0 +1,22 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture.Examples +{ + public class DamageDealer : MonoBehaviour + { + [SerializeField] + private FloatReference _damageAmount = default(FloatReference); + + private void OnTriggerEnter(Collider other) + { + UnitHealth targetHealth = other.gameObject.GetComponent(); + + if (targetHealth != null) + DealDamage(targetHealth); + } + protected virtual void DealDamage(UnitHealth target) + { + target.Health.Value -= _damageAmount.Value; + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Examples/Scripts/DamageDealer.cs.meta b/Architecture/ScriptableObjects/Examples/Scripts/DamageDealer.cs.meta new file mode 100644 index 0000000..211ab28 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/DamageDealer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0a7bd50eba8549846a5c70229ab69aff +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scripts/DamageDealerWithEvent.cs b/Architecture/ScriptableObjects/Examples/Scripts/DamageDealerWithEvent.cs new file mode 100644 index 0000000..637ab51 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/DamageDealerWithEvent.cs @@ -0,0 +1,17 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture.Examples +{ + public class DamageDealerWithEvent : DamageDealer + { + [SerializeField] + private GameEvent _onDamagedEvent = default(GameEvent); + + protected override void DealDamage(UnitHealth target) + { + base.DealDamage(target); + + _onDamagedEvent.Raise(); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Examples/Scripts/DamageDealerWithEvent.cs.meta b/Architecture/ScriptableObjects/Examples/Scripts/DamageDealerWithEvent.cs.meta new file mode 100644 index 0000000..14bdcff --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/DamageDealerWithEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6091c23144d06c64b860bdfa9200353d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scripts/Disabler.cs b/Architecture/ScriptableObjects/Examples/Scripts/Disabler.cs new file mode 100644 index 0000000..8b668f5 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/Disabler.cs @@ -0,0 +1,21 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture.Examples +{ + public class Disabler : MonoBehaviour + { + [SerializeField] + private GameObjectCollection _targetSet = default(GameObjectCollection); + + public void DisableRandom() + { + if (_targetSet.Count > 0) + { + int index = Random.Range(0, _targetSet.Count); + + GameObject objToDisable = _targetSet[index]; + objToDisable.SetActive(false); + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Examples/Scripts/Disabler.cs.meta b/Architecture/ScriptableObjects/Examples/Scripts/Disabler.cs.meta new file mode 100644 index 0000000..f44cda9 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/Disabler.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 651639a1af81856448caf334816f4406 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scripts/ImageFillSetter.cs b/Architecture/ScriptableObjects/Examples/Scripts/ImageFillSetter.cs new file mode 100644 index 0000000..d946681 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/ImageFillSetter.cs @@ -0,0 +1,21 @@ +using UnityEngine; +using UnityEngine.UI; + +namespace ScriptableObjectArchitecture.Examples +{ + public class ImageFillSetter : MonoBehaviour + { + [SerializeField] + private FloatReference _variable = default(FloatReference); + [SerializeField] + private FloatReference _maxValue = default(FloatReference); + [SerializeField] + private Image _imageTarget = default(Image); + + private void Update() + { + _imageTarget.fillAmount = Mathf.Clamp01(_variable.Value / _maxValue.Value); + } + + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Examples/Scripts/ImageFillSetter.cs.meta b/Architecture/ScriptableObjects/Examples/Scripts/ImageFillSetter.cs.meta new file mode 100644 index 0000000..fdf474d --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/ImageFillSetter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6b4a9d4ae717c8646a08e19ec31e859c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scripts/KeyboardMover.cs b/Architecture/ScriptableObjects/Examples/Scripts/KeyboardMover.cs new file mode 100644 index 0000000..3bd9ea1 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/KeyboardMover.cs @@ -0,0 +1,25 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture.Examples +{ + public class KeyboardMover : MonoBehaviour + { + [SerializeField] + private FloatReference _moveSpeed = default(FloatReference); + + private void Update() + { + if (Input.GetKey(KeyCode.W) || Input.GetKey(KeyCode.UpArrow)) + transform.position += Vector3.up * _moveSpeed.Value; + + if (Input.GetKey(KeyCode.S) || Input.GetKey(KeyCode.DownArrow)) + transform.position += Vector3.down * _moveSpeed.Value; + + if (Input.GetKey(KeyCode.D) || Input.GetKey(KeyCode.RightArrow)) + transform.position += Vector3.right * _moveSpeed.Value; + + if (Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.LeftArrow)) + transform.position += Vector3.left * _moveSpeed.Value; + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Examples/Scripts/KeyboardMover.cs.meta b/Architecture/ScriptableObjects/Examples/Scripts/KeyboardMover.cs.meta new file mode 100644 index 0000000..d4360f2 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/KeyboardMover.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8d7b74a36443f534fb69a2c2b26eb5ab +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scripts/ObjectAdder.cs b/Architecture/ScriptableObjects/Examples/Scripts/ObjectAdder.cs new file mode 100644 index 0000000..7379eaa --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/ObjectAdder.cs @@ -0,0 +1,19 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture.Examples +{ + public class ObjectAdder : MonoBehaviour + { + [SerializeField] + private GameObjectCollection _targetCollection = default(GameObjectCollection); + + private void OnEnable() + { + _targetCollection.Add(gameObject); + } + private void OnDisable() + { + _targetCollection.Remove(gameObject); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Examples/Scripts/ObjectAdder.cs.meta b/Architecture/ScriptableObjects/Examples/Scripts/ObjectAdder.cs.meta new file mode 100644 index 0000000..4b28f9b --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/ObjectAdder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e1e58c123a9f8b8418deb29f883e6e1a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Scripts/UnitHealth.cs b/Architecture/ScriptableObjects/Examples/Scripts/UnitHealth.cs new file mode 100644 index 0000000..b93dc41 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/UnitHealth.cs @@ -0,0 +1,20 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture.Examples +{ + public class UnitHealth : MonoBehaviour + { + public FloatReference Health; + + [SerializeField] + private bool _resetOnStartup = true; + [SerializeField] + private FloatReference _startingHealth = default(FloatReference); + + private void Start() + { + if (_resetOnStartup) + Health.Value = _startingHealth.Value; + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Examples/Scripts/UnitHealth.cs.meta b/Architecture/ScriptableObjects/Examples/Scripts/UnitHealth.cs.meta new file mode 100644 index 0000000..51bb946 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Scripts/UnitHealth.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 96e1b83887e9c9d4e8300e77aaa4f9c6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Textures.meta b/Architecture/ScriptableObjects/Examples/Textures.meta new file mode 100644 index 0000000..b4178b8 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Textures.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c433a440140e3944ab16a5a356a09d08 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Examples/Textures/White.png b/Architecture/ScriptableObjects/Examples/Textures/White.png new file mode 100644 index 0000000..10d2598 Binary files /dev/null and b/Architecture/ScriptableObjects/Examples/Textures/White.png differ diff --git a/Architecture/ScriptableObjects/Examples/Textures/White.png.meta b/Architecture/ScriptableObjects/Examples/Textures/White.png.meta new file mode 100644 index 0000000..c742cd0 --- /dev/null +++ b/Architecture/ScriptableObjects/Examples/Textures/White.png.meta @@ -0,0 +1,103 @@ +fileFormatVersion: 2 +guid: 3a202efd49d4b2a4c87c4c4ea231854b +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: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: -1 + mipBias: -100 + 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: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + 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/Architecture/ScriptableObjects/Extensions.meta b/Architecture/ScriptableObjects/Extensions.meta new file mode 100644 index 0000000..1df4e31 --- /dev/null +++ b/Architecture/ScriptableObjects/Extensions.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 4d23a1b5eda94e5484e3e8835e3c754d +timeCreated: 1555707444 \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Extensions/QuaternionExtensions.cs b/Architecture/ScriptableObjects/Extensions/QuaternionExtensions.cs new file mode 100644 index 0000000..4ff8c86 --- /dev/null +++ b/Architecture/ScriptableObjects/Extensions/QuaternionExtensions.cs @@ -0,0 +1,21 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + /// + /// Internal extension methods for . + /// + internal static class QuaternionExtensions + { + /// + /// Returns a instance where the component values are equal to this + /// 's components. + /// + /// + /// + public static Vector4 ToVector4(this Quaternion quaternion) + { + return new Vector4(quaternion.x, quaternion.y, quaternion.z, quaternion.w); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Extensions/QuaternionExtensions.cs.meta b/Architecture/ScriptableObjects/Extensions/QuaternionExtensions.cs.meta new file mode 100644 index 0000000..444b10e --- /dev/null +++ b/Architecture/ScriptableObjects/Extensions/QuaternionExtensions.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 519b10e3cd564520adb5118a5b996f43 +timeCreated: 1555707619 \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Extensions/Vector4Extensions.cs b/Architecture/ScriptableObjects/Extensions/Vector4Extensions.cs new file mode 100644 index 0000000..0b44468 --- /dev/null +++ b/Architecture/ScriptableObjects/Extensions/Vector4Extensions.cs @@ -0,0 +1,21 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + /// + /// Internal extension methods for . + /// + internal static class Vector4Extensions + { + /// + /// Returns a instance where the component values are equal to this + /// 's components. + /// + /// + /// + public static Quaternion ToQuaternion(this Vector4 vector4) + { + return new Quaternion(vector4.x, vector4.y, vector4.z, vector4.w); + } + } +} diff --git a/Architecture/ScriptableObjects/Extensions/Vector4Extensions.cs.meta b/Architecture/ScriptableObjects/Extensions/Vector4Extensions.cs.meta new file mode 100644 index 0000000..d2ac93a --- /dev/null +++ b/Architecture/ScriptableObjects/Extensions/Vector4Extensions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f82581906385ab740af135269a99379d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References.meta b/Architecture/ScriptableObjects/References.meta new file mode 100644 index 0000000..e54b63b --- /dev/null +++ b/Architecture/ScriptableObjects/References.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a6cc8d773c3664e4cbfb696cc7c4e072 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/AnimationCurveReference.cs b/Architecture/ScriptableObjects/References/AnimationCurveReference.cs new file mode 100644 index 0000000..8596f35 --- /dev/null +++ b/Architecture/ScriptableObjects/References/AnimationCurveReference.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class AnimationCurveReference : BaseReference + { + public AnimationCurveReference() : base() { } + public AnimationCurveReference(AnimationCurve value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/AnimationCurveReference.cs.meta b/Architecture/ScriptableObjects/References/AnimationCurveReference.cs.meta new file mode 100644 index 0000000..57ec592 --- /dev/null +++ b/Architecture/ScriptableObjects/References/AnimationCurveReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 70979cb7a8fa57d4cb4faac1c2be5e03 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/AudioClipReference.cs b/Architecture/ScriptableObjects/References/AudioClipReference.cs new file mode 100644 index 0000000..f6f366b --- /dev/null +++ b/Architecture/ScriptableObjects/References/AudioClipReference.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class AudioClipReference : BaseReference + { + public AudioClipReference() : base() { } + public AudioClipReference(AudioClip value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/AudioClipReference.cs.meta b/Architecture/ScriptableObjects/References/AudioClipReference.cs.meta new file mode 100644 index 0000000..73401fa --- /dev/null +++ b/Architecture/ScriptableObjects/References/AudioClipReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 52e7847854d0f4944a2d82290aa86222 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/BaseReference.cs b/Architecture/ScriptableObjects/References/BaseReference.cs new file mode 100644 index 0000000..78adbbf --- /dev/null +++ b/Architecture/ScriptableObjects/References/BaseReference.cs @@ -0,0 +1,86 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class BaseReference : BaseReference where TVariable : BaseVariable + { + public BaseReference() { } + public BaseReference(TBase baseValue) + { + _useConstant = true; + _constantValue = baseValue; + } + + [SerializeField] + protected bool _useConstant = false; + [SerializeField] + protected TBase _constantValue = default(TBase); + [SerializeField] + protected TVariable _variable = default(TVariable); + + public TBase Value + { + get + { + return (_useConstant || _variable == null) ? _constantValue : _variable.Value; + } + set + { + if (!_useConstant && _variable != null) + { + _variable.Value = value; + } + else + { + _useConstant = true; + _constantValue = value; + } + } + } + public bool IsValueDefined + { + get + { + return _useConstant || _variable != null; + } + } + + public BaseReference CreateCopy() + { + BaseReference copy = (BaseReference)System.Activator.CreateInstance(GetType()); + copy._useConstant = _useConstant; + copy._constantValue = _constantValue; + copy._variable = _variable; + + return copy; + } + public void AddListener(IGameEventListener listener) + { + if (_variable != null) + _variable.AddListener(listener); + } + public void RemoveListener(IGameEventListener listener) + { + if (_variable != null) + _variable.RemoveListener(listener); + } + public void AddListener(System.Action action) + { + if (_variable != null) + _variable.AddListener(action); + } + public void RemoveListener(System.Action action) + { + if (_variable != null) + _variable.RemoveListener(action); + } + public override string ToString() + { + return Value.ToString(); + } + } + + //Can't get property drawer to work with generic arguments + public abstract class BaseReference { } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/BaseReference.cs.meta b/Architecture/ScriptableObjects/References/BaseReference.cs.meta new file mode 100644 index 0000000..2498057 --- /dev/null +++ b/Architecture/ScriptableObjects/References/BaseReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6738f50cc15d5ff4d8bc4791985d871d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/BoolReference.cs b/Architecture/ScriptableObjects/References/BoolReference.cs new file mode 100644 index 0000000..2deba03 --- /dev/null +++ b/Architecture/ScriptableObjects/References/BoolReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class BoolReference : BaseReference + { + public BoolReference() : base() { } + public BoolReference(bool value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/BoolReference.cs.meta b/Architecture/ScriptableObjects/References/BoolReference.cs.meta new file mode 100644 index 0000000..ebf43e9 --- /dev/null +++ b/Architecture/ScriptableObjects/References/BoolReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e5582f02dce3df04b8b99a29cdcb7610 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/ByteReference.cs b/Architecture/ScriptableObjects/References/ByteReference.cs new file mode 100644 index 0000000..692095a --- /dev/null +++ b/Architecture/ScriptableObjects/References/ByteReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class ByteReference : BaseReference + { + public ByteReference() : base() { } + public ByteReference(byte value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/ByteReference.cs.meta b/Architecture/ScriptableObjects/References/ByteReference.cs.meta new file mode 100644 index 0000000..afcfd4c --- /dev/null +++ b/Architecture/ScriptableObjects/References/ByteReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0bdcbd847bbed28459771965dd905377 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/CharReference.cs b/Architecture/ScriptableObjects/References/CharReference.cs new file mode 100644 index 0000000..707c48a --- /dev/null +++ b/Architecture/ScriptableObjects/References/CharReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class CharReference : BaseReference + { + public CharReference() : base() { } + public CharReference(char value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/CharReference.cs.meta b/Architecture/ScriptableObjects/References/CharReference.cs.meta new file mode 100644 index 0000000..b18eb1a --- /dev/null +++ b/Architecture/ScriptableObjects/References/CharReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dd41b15834f5a4044955f107ea10a6f6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/Color32Reference.cs b/Architecture/ScriptableObjects/References/Color32Reference.cs new file mode 100644 index 0000000..d507326 --- /dev/null +++ b/Architecture/ScriptableObjects/References/Color32Reference.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class Color32Reference : BaseReference + { + public Color32Reference() : base() { } + public Color32Reference(Color32 value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/Color32Reference.cs.meta b/Architecture/ScriptableObjects/References/Color32Reference.cs.meta new file mode 100644 index 0000000..937ab8c --- /dev/null +++ b/Architecture/ScriptableObjects/References/Color32Reference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ac6f79df808649f4d8eec1176cfe5a76 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/ColorReference.cs b/Architecture/ScriptableObjects/References/ColorReference.cs new file mode 100644 index 0000000..55319b8 --- /dev/null +++ b/Architecture/ScriptableObjects/References/ColorReference.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class ColorReference : BaseReference + { + public ColorReference() : base() { } + public ColorReference(Color value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/ColorReference.cs.meta b/Architecture/ScriptableObjects/References/ColorReference.cs.meta new file mode 100644 index 0000000..6727c20 --- /dev/null +++ b/Architecture/ScriptableObjects/References/ColorReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5aec35cfb26f5ac408e7f6c0f77eb012 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/DoubleReference.cs b/Architecture/ScriptableObjects/References/DoubleReference.cs new file mode 100644 index 0000000..acc109e --- /dev/null +++ b/Architecture/ScriptableObjects/References/DoubleReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class DoubleReference : BaseReference + { + public DoubleReference() : base() { } + public DoubleReference(double value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/DoubleReference.cs.meta b/Architecture/ScriptableObjects/References/DoubleReference.cs.meta new file mode 100644 index 0000000..9edd946 --- /dev/null +++ b/Architecture/ScriptableObjects/References/DoubleReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bd3ad0d83631c3b4993f3486362f4f83 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/FloatReference.cs b/Architecture/ScriptableObjects/References/FloatReference.cs new file mode 100644 index 0000000..2478490 --- /dev/null +++ b/Architecture/ScriptableObjects/References/FloatReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class FloatReference : BaseReference + { + public FloatReference() : base() { } + public FloatReference(float value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/FloatReference.cs.meta b/Architecture/ScriptableObjects/References/FloatReference.cs.meta new file mode 100644 index 0000000..ecae2d4 --- /dev/null +++ b/Architecture/ScriptableObjects/References/FloatReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 45e4e566bec8e294ebf9015daabbd47a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/GameObjectReference.cs b/Architecture/ScriptableObjects/References/GameObjectReference.cs new file mode 100644 index 0000000..60c43e6 --- /dev/null +++ b/Architecture/ScriptableObjects/References/GameObjectReference.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class GameObjectReference : BaseReference + { + public GameObjectReference() : base() { } + public GameObjectReference(GameObject value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/GameObjectReference.cs.meta b/Architecture/ScriptableObjects/References/GameObjectReference.cs.meta new file mode 100644 index 0000000..e42b144 --- /dev/null +++ b/Architecture/ScriptableObjects/References/GameObjectReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e370b4c81b41e6b4fb53e08e9930022d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/IntReference.cs b/Architecture/ScriptableObjects/References/IntReference.cs new file mode 100644 index 0000000..531155b --- /dev/null +++ b/Architecture/ScriptableObjects/References/IntReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class IntReference : BaseReference + { + public IntReference() : base() { } + public IntReference(int value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/IntReference.cs.meta b/Architecture/ScriptableObjects/References/IntReference.cs.meta new file mode 100644 index 0000000..995c38f --- /dev/null +++ b/Architecture/ScriptableObjects/References/IntReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 93ba956e2c53d574c95488ca50fde378 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/LayerMaskReference.cs b/Architecture/ScriptableObjects/References/LayerMaskReference.cs new file mode 100644 index 0000000..7e054ab --- /dev/null +++ b/Architecture/ScriptableObjects/References/LayerMaskReference.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class LayerMaskReference : BaseReference + { + public LayerMaskReference() : base() { } + public LayerMaskReference(LayerMask value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/LayerMaskReference.cs.meta b/Architecture/ScriptableObjects/References/LayerMaskReference.cs.meta new file mode 100644 index 0000000..98b6c23 --- /dev/null +++ b/Architecture/ScriptableObjects/References/LayerMaskReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e390a6289e5530c4d8f4d38ccdbfcc5a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/LongReference.cs b/Architecture/ScriptableObjects/References/LongReference.cs new file mode 100644 index 0000000..37cad1e --- /dev/null +++ b/Architecture/ScriptableObjects/References/LongReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class LongReference : BaseReference + { + public LongReference() : base() { } + public LongReference(long value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/LongReference.cs.meta b/Architecture/ScriptableObjects/References/LongReference.cs.meta new file mode 100644 index 0000000..274466f --- /dev/null +++ b/Architecture/ScriptableObjects/References/LongReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3a7a5d47dd727e84baafb293c8258762 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/ObjectReference.cs b/Architecture/ScriptableObjects/References/ObjectReference.cs new file mode 100644 index 0000000..657499b --- /dev/null +++ b/Architecture/ScriptableObjects/References/ObjectReference.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class ObjectReference : BaseReference + { + public ObjectReference() : base() { } + public ObjectReference(Object value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/ObjectReference.cs.meta b/Architecture/ScriptableObjects/References/ObjectReference.cs.meta new file mode 100644 index 0000000..0c86840 --- /dev/null +++ b/Architecture/ScriptableObjects/References/ObjectReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 87174a1877b3e9a458ac90765af07134 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/QuaternionReference.cs b/Architecture/ScriptableObjects/References/QuaternionReference.cs new file mode 100644 index 0000000..cd3db1d --- /dev/null +++ b/Architecture/ScriptableObjects/References/QuaternionReference.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class QuaternionReference : BaseReference + { + public QuaternionReference() : base() { } + public QuaternionReference(Quaternion value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/QuaternionReference.cs.meta b/Architecture/ScriptableObjects/References/QuaternionReference.cs.meta new file mode 100644 index 0000000..9a57bf5 --- /dev/null +++ b/Architecture/ScriptableObjects/References/QuaternionReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d06b85eaff3bd7740a6f4fbf25c16af6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/SByteReference.cs b/Architecture/ScriptableObjects/References/SByteReference.cs new file mode 100644 index 0000000..65fce36 --- /dev/null +++ b/Architecture/ScriptableObjects/References/SByteReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class SByteReference : BaseReference + { + public SByteReference() : base() { } + public SByteReference(sbyte value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/SByteReference.cs.meta b/Architecture/ScriptableObjects/References/SByteReference.cs.meta new file mode 100644 index 0000000..158299c --- /dev/null +++ b/Architecture/ScriptableObjects/References/SByteReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 39a0e4e41b487204893a43b7b46ff322 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/SceneReference.cs b/Architecture/ScriptableObjects/References/SceneReference.cs new file mode 100644 index 0000000..708de45 --- /dev/null +++ b/Architecture/ScriptableObjects/References/SceneReference.cs @@ -0,0 +1,13 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class SceneReference : BaseReference + { + public SceneReference() + { + } + public SceneReference(SceneInfo value) : base(value) + { + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/SceneReference.cs.meta b/Architecture/ScriptableObjects/References/SceneReference.cs.meta new file mode 100644 index 0000000..a0244e1 --- /dev/null +++ b/Architecture/ScriptableObjects/References/SceneReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dfdb025a7a4bc3c4e9314278ae0ae78d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/ShortReference.cs b/Architecture/ScriptableObjects/References/ShortReference.cs new file mode 100644 index 0000000..eb91fae --- /dev/null +++ b/Architecture/ScriptableObjects/References/ShortReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class ShortReference : BaseReference + { + public ShortReference() : base() { } + public ShortReference(short value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/ShortReference.cs.meta b/Architecture/ScriptableObjects/References/ShortReference.cs.meta new file mode 100644 index 0000000..4072672 --- /dev/null +++ b/Architecture/ScriptableObjects/References/ShortReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1cc6dfafebc3ad6469a4b7f9bf0799ac +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/StringReference.cs b/Architecture/ScriptableObjects/References/StringReference.cs new file mode 100644 index 0000000..f526a7a --- /dev/null +++ b/Architecture/ScriptableObjects/References/StringReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class StringReference : BaseReference + { + public StringReference() : base() { } + public StringReference(string value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/StringReference.cs.meta b/Architecture/ScriptableObjects/References/StringReference.cs.meta new file mode 100644 index 0000000..a19ab21 --- /dev/null +++ b/Architecture/ScriptableObjects/References/StringReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 921808a75f2595945b386e9913d022f7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/UIntReference.cs b/Architecture/ScriptableObjects/References/UIntReference.cs new file mode 100644 index 0000000..3daa55c --- /dev/null +++ b/Architecture/ScriptableObjects/References/UIntReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class UIntReference : BaseReference + { + public UIntReference() : base() { } + public UIntReference(uint value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/UIntReference.cs.meta b/Architecture/ScriptableObjects/References/UIntReference.cs.meta new file mode 100644 index 0000000..e452a82 --- /dev/null +++ b/Architecture/ScriptableObjects/References/UIntReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8775823ba8c3c3f43b2bc6b2e4a0d489 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/ULongReference.cs b/Architecture/ScriptableObjects/References/ULongReference.cs new file mode 100644 index 0000000..7250e43 --- /dev/null +++ b/Architecture/ScriptableObjects/References/ULongReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class ULongReference : BaseReference + { + public ULongReference() : base() { } + public ULongReference(ulong value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/ULongReference.cs.meta b/Architecture/ScriptableObjects/References/ULongReference.cs.meta new file mode 100644 index 0000000..d91d23c --- /dev/null +++ b/Architecture/ScriptableObjects/References/ULongReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 77a1d06e9d3e2d04d850147e0c5da2aa +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/UShortReference.cs b/Architecture/ScriptableObjects/References/UShortReference.cs new file mode 100644 index 0000000..15d3815 --- /dev/null +++ b/Architecture/ScriptableObjects/References/UShortReference.cs @@ -0,0 +1,9 @@ +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class UShortReference : BaseReference + { + public UShortReference() : base() { } + public UShortReference(ushort value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/UShortReference.cs.meta b/Architecture/ScriptableObjects/References/UShortReference.cs.meta new file mode 100644 index 0000000..a0019b2 --- /dev/null +++ b/Architecture/ScriptableObjects/References/UShortReference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d64b5a7ff70881b4a829380159685c6c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/Vector2Reference.cs b/Architecture/ScriptableObjects/References/Vector2Reference.cs new file mode 100644 index 0000000..56af7ff --- /dev/null +++ b/Architecture/ScriptableObjects/References/Vector2Reference.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class Vector2Reference : BaseReference + { + public Vector2Reference() : base() { } + public Vector2Reference(Vector2 value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/Vector2Reference.cs.meta b/Architecture/ScriptableObjects/References/Vector2Reference.cs.meta new file mode 100644 index 0000000..2db02a3 --- /dev/null +++ b/Architecture/ScriptableObjects/References/Vector2Reference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ef0936609868992419e6c4ea361c1a9e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/Vector3Reference.cs b/Architecture/ScriptableObjects/References/Vector3Reference.cs new file mode 100644 index 0000000..a33da6e --- /dev/null +++ b/Architecture/ScriptableObjects/References/Vector3Reference.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class Vector3Reference : BaseReference + { + public Vector3Reference() : base() { } + public Vector3Reference(Vector3 value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/Vector3Reference.cs.meta b/Architecture/ScriptableObjects/References/Vector3Reference.cs.meta new file mode 100644 index 0000000..d29d7f6 --- /dev/null +++ b/Architecture/ScriptableObjects/References/Vector3Reference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 20ec0092943f80b4eb02bd1816878998 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/References/Vector4Reference.cs b/Architecture/ScriptableObjects/References/Vector4Reference.cs new file mode 100644 index 0000000..a00cd69 --- /dev/null +++ b/Architecture/ScriptableObjects/References/Vector4Reference.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public sealed class Vector4Reference : BaseReference + { + public Vector4Reference() : base() { } + public Vector4Reference(Vector4 value) : base(value) { } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/References/Vector4Reference.cs.meta b/Architecture/ScriptableObjects/References/Vector4Reference.cs.meta new file mode 100644 index 0000000..52b2803 --- /dev/null +++ b/Architecture/ScriptableObjects/References/Vector4Reference.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cec4099000882f643916df3733445f2b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/RuntimeSets.meta b/Architecture/ScriptableObjects/RuntimeSets.meta new file mode 100644 index 0000000..8af21cc --- /dev/null +++ b/Architecture/ScriptableObjects/RuntimeSets.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5d4aeffddee253346bece1700851153d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/SOArchitecturePreferences.cs b/Architecture/ScriptableObjects/SOArchitecturePreferences.cs new file mode 100644 index 0000000..ed6075a --- /dev/null +++ b/Architecture/ScriptableObjects/SOArchitecturePreferences.cs @@ -0,0 +1,187 @@ +#if UNITY_EDITOR + +using UnityEditor; +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + /// + /// An editor class for managing project and user preferences for the SOArchitecture library. This is kept + /// in the runtime assembly for the purpose of enabling editor-only additional features when playing such as + /// gizmos and debugging. + /// + public static class SOArchitecturePreferences + { + /// + /// Returns true if debug features should be enabled, otherwise false. + /// + public static bool IsDebugEnabled + { + get { return GetBoolPref(ENABLE_DEBUG_PREF, ENABLE_DEBUG_DEFAULT); } + } + + /// + /// Returns true if Gizmos should be enabled, otherwise false. + /// + public static bool AreGizmosEnabled + { + get { return GetBoolPref(DRAW_EVENT_GIZMOS_PREF, DRAW_EVENT_GIZMOS_DEFAULT); } + } + + // UI + private const string PREFERENCES_TITLE_PATH = "Preferences/SOArchitecture"; + private const string PROJECT_TITLE_PATH = "Project/SOArchitecture"; + + private const string USER_PREFERENCES_HEADER = "User Preferences"; + private const string PROJECT_REFERENCES_HEADER = "Project Preferences"; + + private const string CODE_GEN_DIRECTORY_LABEL = "Code Generation Output Directory"; + private const string CODE_GEN_DIRECTORY_DESCRIPTION + = "The directory where the output of code generation will write to."; + + private const string ALLOW_OVERWRITE_LABEL = "Allow Code Generation to Overwrite"; + private const string ALLOW_OVERWRITE_DESCRIPTION = + "Allow newly generated code files to overwrite existing ones."; + + private const string ASSET_MENU_ORDER_LABEL = "Create Asset Menu Order"; + private const string ASSET_MENU_ORDER_DESCRIPTION = + "This determines the order in which the CreateAsset Context Menu will be placed into."; + + private static readonly GUILayoutOption MAX_WIDTH; + +#if UNITY_2018_3_OR_NEWER + // Searchable Fields + private static readonly string[] KEYWORDS = + { + "Scriptable", + "Architecture" + }; +#endif + + // User Editor Preferences + private const string DRAW_EVENT_GIZMOS_PREF = "SOArchitecture.DrawEventGizmoos"; + private const string ENABLE_DEBUG_PREF = "SOArchitecture.EnableDebug"; + + private const bool DRAW_EVENT_GIZMOS_DEFAULT = true; + private const bool ENABLE_DEBUG_DEFAULT = true; + + static SOArchitecturePreferences() + { + MAX_WIDTH = GUILayout.MaxWidth(200f); + } + +#if UNITY_2018_3_OR_NEWER + [SettingsProvider] + private static SettingsProvider CreateProjectPreferenceSettingsProvider() + { + return new SettingsProvider(PROJECT_TITLE_PATH, SettingsScope.Project) + { + guiHandler = DrawProjectGUI, + keywords = KEYWORDS + }; + } + + [SettingsProvider] + private static SettingsProvider CreatePersonalPreferenceSettingsProvider() + { + return new SettingsProvider(PREFERENCES_TITLE_PATH, SettingsScope.User) + { + guiHandler = DrawPersonalPrefsGUI, + keywords = KEYWORDS + }; + } +#endif + private static void DrawAllGUI() + { + DrawProjectGUI(); + DrawPersonalPrefsGUI(); + } + + private static void DrawProjectGUI(string value = "") + { + EditorGUILayout.LabelField(PROJECT_REFERENCES_HEADER, EditorStyles.boldLabel); + + var settings = SOArchitecture_Settings.Instance; + + GUI.changed = false; + + // Code Generation Target Directory + EditorGUILayout.HelpBox(CODE_GEN_DIRECTORY_DESCRIPTION, MessageType.Info); + using (new EditorGUILayout.HorizontalScope()) + { + EditorGUILayout.LabelField(new GUIContent(CODE_GEN_DIRECTORY_LABEL), MAX_WIDTH); + var directory = EditorGUILayout.TextField(settings.CodeGenerationTargetDirectory); + settings.CodeGenerationTargetDirectory = directory; + } + + // Code Generation Allow Overwrite + EditorGUILayout.HelpBox(ALLOW_OVERWRITE_DESCRIPTION, MessageType.Info); + using (new EditorGUILayout.HorizontalScope()) + { + EditorGUILayout.LabelField(new GUIContent(ALLOW_OVERWRITE_LABEL), MAX_WIDTH); + var newOverwrite = EditorGUILayout.Toggle(settings.CodeGenerationAllowOverwrite); + settings.CodeGenerationAllowOverwrite = newOverwrite; + } + + // Default Create Asset Menu Order + EditorGUILayout.HelpBox(ASSET_MENU_ORDER_DESCRIPTION, MessageType.Info); + using (new EditorGUILayout.HorizontalScope()) + { + EditorGUILayout.LabelField(ASSET_MENU_ORDER_LABEL, MAX_WIDTH); + var newMenuOrder = EditorGUILayout.IntField(settings.DefaultCreateAssetMenuOrder); + settings.DefaultCreateAssetMenuOrder = newMenuOrder; + } + + if (GUI.changed) + { + EditorUtility.SetDirty(settings); + } + } + + private static void DrawPersonalPrefsGUI(string value = "") + { + EditorGUILayout.LabelField(USER_PREFERENCES_HEADER, EditorStyles.boldLabel); + + // Draw Event Gizmo + var drawEventPref = GetBoolPref(DRAW_EVENT_GIZMOS_PREF, DRAW_EVENT_GIZMOS_DEFAULT); + + GUI.changed = false; + drawEventPref = EditorGUILayout.Toggle("Draw Event Gizmo", drawEventPref); + if (GUI.changed) + { + EditorPrefs.SetBool(DRAW_EVENT_GIZMOS_PREF, drawEventPref); + } + + // Enable Debug + EditorGUILayout.HelpBox("This will enable debug features for troubleshooting purposes such as " + + "game events collecting stack traces. This will decrease performance " + + "in-editor.", MessageType.Info); + var enableDebugPref = GetBoolPref(ENABLE_DEBUG_PREF, ENABLE_DEBUG_DEFAULT); + + GUI.changed = false; + enableDebugPref = EditorGUILayout.Toggle("Enable Debug", enableDebugPref); + if (GUI.changed) + { + EditorPrefs.SetBool(ENABLE_DEBUG_PREF, enableDebugPref); + } + } + + /// + /// Returns the current bool preference; if none exists, the default is set and returned. + /// + /// + /// + /// + private static bool GetBoolPref(string key, bool defaultValue) + { + if (!EditorPrefs.HasKey(key)) + { + EditorPrefs.SetBool(key, defaultValue); + } + + return EditorPrefs.GetBool(key); + } + } +} + +#endif diff --git a/Architecture/ScriptableObjects/SOArchitecturePreferences.cs.meta b/Architecture/ScriptableObjects/SOArchitecturePreferences.cs.meta new file mode 100644 index 0000000..0cb356a --- /dev/null +++ b/Architecture/ScriptableObjects/SOArchitecturePreferences.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 9d0c49fe7eab4d7ca757da94725d8a49 +timeCreated: 1572336723 \ No newline at end of file diff --git a/Architecture/ScriptableObjects/ScriptableObject-Architecture.asmdef b/Architecture/ScriptableObjects/ScriptableObject-Architecture.asmdef new file mode 100644 index 0000000..5d2a99e --- /dev/null +++ b/Architecture/ScriptableObjects/ScriptableObject-Architecture.asmdef @@ -0,0 +1,3 @@ +{ + "name": "ScriptableObject-Architecture" +} diff --git a/Architecture/ScriptableObjects/ScriptableObject-Architecture.asmdef.meta b/Architecture/ScriptableObjects/ScriptableObject-Architecture.asmdef.meta new file mode 100644 index 0000000..8083725 --- /dev/null +++ b/Architecture/ScriptableObjects/ScriptableObject-Architecture.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 63ebd60d5c68886498ecfee04b5d6a12 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Utility.meta b/Architecture/ScriptableObjects/Utility.meta new file mode 100644 index 0000000..9f25f9c --- /dev/null +++ b/Architecture/ScriptableObjects/Utility.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b6479980cb49bd94da3fcf1a66ad0bea +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Utility/IStackTraceObject.cs b/Architecture/ScriptableObjects/Utility/IStackTraceObject.cs new file mode 100644 index 0000000..61d3d9c --- /dev/null +++ b/Architecture/ScriptableObjects/Utility/IStackTraceObject.cs @@ -0,0 +1,12 @@ +using System.Collections.Generic; + +namespace ScriptableObjectArchitecture +{ + public interface IStackTraceObject + { + List StackTraces { get; } + + void AddStackTrace(); + void AddStackTrace(object value); + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Utility/IStackTraceObject.cs.meta b/Architecture/ScriptableObjects/Utility/IStackTraceObject.cs.meta new file mode 100644 index 0000000..f262de2 --- /dev/null +++ b/Architecture/ScriptableObjects/Utility/IStackTraceObject.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 62f02be7097541046bd8fa50148dd42c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Utility/SOArchitectureBaseMonobehaviour.cs b/Architecture/ScriptableObjects/Utility/SOArchitectureBaseMonobehaviour.cs new file mode 100644 index 0000000..7e6cbcd --- /dev/null +++ b/Architecture/ScriptableObjects/Utility/SOArchitectureBaseMonobehaviour.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + /// + /// Base class for SOArchitecture assets + /// + public abstract class SOArchitectureBaseMonobehaviour : MonoBehaviour + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Utility/SOArchitectureBaseMonobehaviour.cs.meta b/Architecture/ScriptableObjects/Utility/SOArchitectureBaseMonobehaviour.cs.meta new file mode 100644 index 0000000..a17d54b --- /dev/null +++ b/Architecture/ScriptableObjects/Utility/SOArchitectureBaseMonobehaviour.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 092226688b5834b4f8fae4c6deee33be +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Utility/SOArchitectureBaseObject.cs b/Architecture/ScriptableObjects/Utility/SOArchitectureBaseObject.cs new file mode 100644 index 0000000..f7f5546 --- /dev/null +++ b/Architecture/ScriptableObjects/Utility/SOArchitectureBaseObject.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace ScriptableObjectArchitecture +{ + /// + /// Base class for SOArchitecture assets + /// + public abstract class SOArchitectureBaseObject : ScriptableObject + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Utility/SOArchitectureBaseObject.cs.meta b/Architecture/ScriptableObjects/Utility/SOArchitectureBaseObject.cs.meta new file mode 100644 index 0000000..e372c11 --- /dev/null +++ b/Architecture/ScriptableObjects/Utility/SOArchitectureBaseObject.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0cb41ac313513f9459c6e53f1a536e63 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Utility/SOArchitecture_Settings.cs b/Architecture/ScriptableObjects/Utility/SOArchitecture_Settings.cs new file mode 100644 index 0000000..1f4ae4c --- /dev/null +++ b/Architecture/ScriptableObjects/Utility/SOArchitecture_Settings.cs @@ -0,0 +1,111 @@ +using UnityEngine; +#if UNITY_EDITOR +using UnityEditor; +#endif + +namespace ScriptableObjectArchitecture +{ + public class SOArchitecture_Settings : ScriptableObject + { + #region Singleton + public static SOArchitecture_Settings Instance + { + get + { + if (_instance == null) + _instance = GetInstance(); + + return _instance; + } + } + private static SOArchitecture_Settings _instance; + + private static SOArchitecture_Settings GetInstance() + { +#if UNITY_EDITOR + SOArchitecture_Settings instance = FindInstanceInProject(); + + if (instance == null) + return CreateInstance(); + + return instance; +#else + return null; +#endif + } + private static SOArchitecture_Settings FindInstanceInProject() + { +#if UNITY_EDITOR + string[] settingsGUIDs = AssetDatabase.FindAssets(AssetDatabaseSearchString); + + if(settingsGUIDs.Length == 0) + { + return null; + } + else if(settingsGUIDs.Length > 1) + { + Debug.LogWarning("Found more than one instance of SOArchitecture_Settings, you've probably created several SOA settings objects." + + $"\nTo find all instances, type {AssetDatabaseSearchString} into the project view search bar"); + return null; + } + else + { + string settingsPath = AssetDatabase.GUIDToAssetPath(settingsGUIDs[0]); + return AssetDatabase.LoadAssetAtPath(settingsPath); + } +#else + throw new System.NullReferenceException(); +#endif + } + private static SOArchitecture_Settings CreateInstance() + { +#if UNITY_EDITOR + SOArchitecture_Settings newSettings = CreateInstance(); + + AssetDatabase.CreateAsset(newSettings, DefaultNewSettingsLocation + DefaultNewSettingsName); + AssetDatabase.SaveAssets(); + + Selection.activeObject = newSettings; + + Debug.LogWarning("No SOArchitecture_Settings asset found! " + + "Created new one at asset root, feel free to move it wherever you please in your project.", newSettings); + + return newSettings; +#else + throw new System.NullReferenceException(); +#endif + } + + private const string AssetDatabaseSearchString = "t:SOArchitecture_Settings"; + private const string DefaultNewSettingsLocation = "Assets\\"; + private const string DefaultNewSettingsName = "SOArchitecture_Settings.asset"; +#endregion + + public string CodeGenerationTargetDirectory + { + get { return _codeGenerationTargetDirectory; } + set { _codeGenerationTargetDirectory = value; } + } + + public bool CodeGenerationAllowOverwrite + { + get { return _codeGenerationAllowOverwrite; } + set { _codeGenerationAllowOverwrite = value; } + } + + public int DefaultCreateAssetMenuOrder + { + get { return _defualtCreateAssetMenuOrder; } + set { _defualtCreateAssetMenuOrder = value; } + } + + [SerializeField] + private string _codeGenerationTargetDirectory = "CODE_GENERATION"; + + [SerializeField, Tooltip("Allow newly generated code files to overwrite existing ones")] + private bool _codeGenerationAllowOverwrite = false; + + [SerializeField] + private int _defualtCreateAssetMenuOrder = 120; + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Utility/SOArchitecture_Settings.cs.meta b/Architecture/ScriptableObjects/Utility/SOArchitecture_Settings.cs.meta new file mode 100644 index 0000000..17bb5c4 --- /dev/null +++ b/Architecture/ScriptableObjects/Utility/SOArchitecture_Settings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f351fc1a6cf09e6429d7fcee563de780 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Utility/SOArchitecture_Utility.cs b/Architecture/ScriptableObjects/Utility/SOArchitecture_Utility.cs new file mode 100644 index 0000000..ece87a1 --- /dev/null +++ b/Architecture/ScriptableObjects/Utility/SOArchitecture_Utility.cs @@ -0,0 +1,21 @@ +namespace ScriptableObjectArchitecture +{ + public static class SOArchitecture_Utility + { + public const int ASSET_MENU_ORDER_VARIABLES = 121; + public const int ASSET_MENU_ORDER_EVENTS = 122; + public const int ASSET_MENU_ORDER_COLLECTIONS = 123; + + public const string VARIABLE_SUBMENU = "Variables/"; + public const string COLLECTION_SUBMENU = "Collections/"; + public const string GAME_EVENT = "Game Events/"; + + public const string ADVANCED_GAME_EVENT = GAME_EVENT + "Advanced/"; + public const string ADVANCED_VARIABLE_SUBMENU = VARIABLE_SUBMENU + "Advanced/"; + public const string ADVANCED_VARIABLE_COLLECTION = COLLECTION_SUBMENU + "Advanced/"; + + // Add Component Menus + public const string ADD_COMPONENT_ROOT_MENU = "SO Architecture/"; + public const string EVENT_LISTENER_SUBMENU = ADD_COMPONENT_ROOT_MENU + "Event Listeners/"; + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Utility/SOArchitecture_Utility.cs.meta b/Architecture/ScriptableObjects/Utility/SOArchitecture_Utility.cs.meta new file mode 100644 index 0000000..117609f --- /dev/null +++ b/Architecture/ScriptableObjects/Utility/SOArchitecture_Utility.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 10c95056b93db0b4780f5945f99cca43 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables.meta b/Architecture/ScriptableObjects/Variables.meta new file mode 100644 index 0000000..9a06541 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0697a6a25a02260479fb4e5c315a2b94 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/AnimationCurveVariable.cs b/Architecture/ScriptableObjects/Variables/AnimationCurveVariable.cs new file mode 100644 index 0000000..5e40101 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/AnimationCurveVariable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class AnimationCurveEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "AnimationCurveVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "AnimationCurve", + order = 120)] + public class AnimationCurveVariable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/AnimationCurveVariable.cs.meta b/Architecture/ScriptableObjects/Variables/AnimationCurveVariable.cs.meta new file mode 100644 index 0000000..bf432ca --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/AnimationCurveVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 279a0d9baabc0c24ebe3232f4a6f1805 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 90a6a74456e4a2d43a54b14515ea4e93, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/AudioClipVariable.cs b/Architecture/ScriptableObjects/Variables/AudioClipVariable.cs new file mode 100644 index 0000000..ef31b3e --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/AudioClipVariable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class AudioClipEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "AudioClipVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "AudioClip", + order = 120)] + public class AudioClipVariable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/AudioClipVariable.cs.meta b/Architecture/ScriptableObjects/Variables/AudioClipVariable.cs.meta new file mode 100644 index 0000000..02aa662 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/AudioClipVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 10e15471fce300141a1607882e72703d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 790f683b8bdc21549844ccedf9d4af47, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/BaseVariable.cs b/Architecture/ScriptableObjects/Variables/BaseVariable.cs new file mode 100644 index 0000000..35c5cc4 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/BaseVariable.cs @@ -0,0 +1,154 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + public abstract class BaseVariable : GameEventBase + { + public abstract bool IsClamped { get; } + public abstract bool Clampable { get; } + public abstract bool ReadOnly { get; } + public abstract System.Type Type { get; } + public abstract object BaseValue { get; set; } + } + public abstract class BaseVariable : BaseVariable + { + public virtual T Value + { + get + { + return _value; + } + set + { + _value = SetValue(value); + Raise(); + } + } + public virtual T MinClampValue + { + get + { + if(Clampable) + { + return _minClampedValue; + } + else + { + return default(T); + } + } + } + public virtual T MaxClampValue + { + get + { + if(Clampable) + { + return _maxClampedValue; + } + else + { + return default(T); + } + } + } + + public override bool Clampable { get { return false; } } + public override bool ReadOnly { get { return _readOnly; } } + public override bool IsClamped { get { return _isClamped; } } + public override System.Type Type { get { return typeof(T); } } + public override object BaseValue + { + get + { + return _value; + } + set + { + _value = SetValue((T)value); + Raise(); + } + } + + [SerializeField] + protected T _value = default(T); + [SerializeField] + private bool _readOnly = false; + [SerializeField] + private bool _raiseWarning = true; + [SerializeField] + protected bool _isClamped = false; + [SerializeField] + protected T _minClampedValue = default(T); + [SerializeField] + protected T _maxClampedValue = default(T); + + public virtual T SetValue(BaseVariable value) + { + return SetValue(value.Value); + } + public virtual T SetValue(T value) + { + if (_readOnly) + { + RaiseReadonlyWarning(); + return _value; + } + else if(Clampable && IsClamped) + { + return ClampValue(value); + } + + return value; + } + protected virtual T ClampValue(T value) + { + return value; + } + private void RaiseReadonlyWarning() + { + if (!_readOnly || !_raiseWarning) + return; + + Debug.LogWarning("Tried to set value on " + name + ", but value is readonly!", this); + } + public override string ToString() + { + return _value == null ? "null" : _value.ToString(); + } + public static implicit operator T(BaseVariable variable) + { + return variable.Value; + } + } + public abstract class BaseVariable : BaseVariable where TEvent : UnityEvent + { + [SerializeField] + private TEvent _event = default; + + public override T SetValue(T value) + { + T oldValue = _value; + T newValue = base.SetValue(value); + + if (!newValue.Equals(oldValue)) + _event.Invoke(newValue); + + return newValue; + } + public void AddListener(UnityAction callback) + { + _event.AddListener(callback); + } + public void RemoveListener(UnityAction callback) + { + _event.RemoveListener(callback); + } + public override void RemoveAll() + { + base.RemoveAll(); + _event.RemoveAllListeners(); + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/BaseVariable.cs.meta b/Architecture/ScriptableObjects/Variables/BaseVariable.cs.meta new file mode 100644 index 0000000..eb5739b --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/BaseVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 13734e69b3fe7d146b417327b51c47b5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/BoolVariable.cs b/Architecture/ScriptableObjects/Variables/BoolVariable.cs new file mode 100644 index 0000000..8993f51 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/BoolVariable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class BoolEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "BoolVariable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "bool", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 5)] + public sealed class BoolVariable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/BoolVariable.cs.meta b/Architecture/ScriptableObjects/Variables/BoolVariable.cs.meta new file mode 100644 index 0000000..5395158 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/BoolVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 168ff32065cd13747a95ae8c9d2a0232 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 9415e294b3c3de24a9395373a02b5381, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/ByteVariable.cs b/Architecture/ScriptableObjects/Variables/ByteVariable.cs new file mode 100644 index 0000000..f73485e --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/ByteVariable.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class ByteEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "ByteVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "byte", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 6)] + public class ByteVariable : BaseVariable + { + public override bool Clampable { get { return true; } } + protected override byte ClampValue(byte value) + { + if (value.CompareTo(MinClampValue) < 0) + { + return MinClampValue; + } + else if (value.CompareTo(MaxClampValue) > 0) + { + return MaxClampValue; + } + else + { + return value; + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/ByteVariable.cs.meta b/Architecture/ScriptableObjects/Variables/ByteVariable.cs.meta new file mode 100644 index 0000000..0ba198d --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/ByteVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f246d02ca9896ef4da3f5595979531c2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: f1f8f2ede6e8864479d57c5e218a4ae0, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/CharVariable.cs b/Architecture/ScriptableObjects/Variables/CharVariable.cs new file mode 100644 index 0000000..2c95e78 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/CharVariable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class CharEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "CharVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "char", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 7)] + public sealed class CharVariable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/CharVariable.cs.meta b/Architecture/ScriptableObjects/Variables/CharVariable.cs.meta new file mode 100644 index 0000000..c846805 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/CharVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c05c58558375b6c4c9669531f002410c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 9c5ff1f386b89d5428acb123510d9d83, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/Color32Variable.cs b/Architecture/ScriptableObjects/Variables/Color32Variable.cs new file mode 100644 index 0000000..8e3c0a9 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/Color32Variable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class Color32Event : UnityEvent { } + + [CreateAssetMenu( + fileName = "Color32Variable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "Structs/Color32", + order = 120)] + public class Color32Variable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/Color32Variable.cs.meta b/Architecture/ScriptableObjects/Variables/Color32Variable.cs.meta new file mode 100644 index 0000000..8088697 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/Color32Variable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 64a430afdb376314fbd89f089f535933 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: ec6c4534cdd1d2544ad50302d7cfae05, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/ColorVariable.cs b/Architecture/ScriptableObjects/Variables/ColorVariable.cs new file mode 100644 index 0000000..59b076d --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/ColorVariable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class ColorEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "ColorVariable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "Structs/Color", + order = 120)] + public class ColorVariable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/ColorVariable.cs.meta b/Architecture/ScriptableObjects/Variables/ColorVariable.cs.meta new file mode 100644 index 0000000..6026d5d --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/ColorVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c37f7adeea8d5df4aa3f5c6e8ff76260 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: ec6c4534cdd1d2544ad50302d7cfae05, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/DoubleVariable.cs b/Architecture/ScriptableObjects/Variables/DoubleVariable.cs new file mode 100644 index 0000000..525a782 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/DoubleVariable.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class DoubleEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "DoubleVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "double", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 8)] + public class DoubleVariable : BaseVariable + { + public override bool Clampable { get { return true; } } + protected override double ClampValue(double value) + { + if (value.CompareTo(MinClampValue) < 0) + { + return MinClampValue; + } + else if (value.CompareTo(MaxClampValue) > 0) + { + return MaxClampValue; + } + else + { + return value; + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/DoubleVariable.cs.meta b/Architecture/ScriptableObjects/Variables/DoubleVariable.cs.meta new file mode 100644 index 0000000..0aa8100 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/DoubleVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 286e3b61bce268347997b6dec5f26896 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 8c542e5e7854e2d4dbae9415a645693c, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/FloatVariable.cs b/Architecture/ScriptableObjects/Variables/FloatVariable.cs new file mode 100644 index 0000000..aed706d --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/FloatVariable.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class FloatEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "FloatVariable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "float", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 3)] + public class FloatVariable : BaseVariable + { + public override bool Clampable { get { return true; } } + protected override float ClampValue(float value) + { + if (value.CompareTo(MinClampValue) < 0) + { + return MinClampValue; + } + else if (value.CompareTo(MaxClampValue) > 0) + { + return MaxClampValue; + } + else + { + return value; + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/FloatVariable.cs.meta b/Architecture/ScriptableObjects/Variables/FloatVariable.cs.meta new file mode 100644 index 0000000..f14a2c4 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/FloatVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f9377ffeb64ba30478a995a8ffc78ae8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 73168a42c0edd8e429fbbd32b0d928db, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/GameObjectVariable.cs b/Architecture/ScriptableObjects/Variables/GameObjectVariable.cs new file mode 100644 index 0000000..2364422 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/GameObjectVariable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class GameObjectEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "GameObjectVariable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "GameObject", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 0)] + public sealed class GameObjectVariable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/GameObjectVariable.cs.meta b/Architecture/ScriptableObjects/Variables/GameObjectVariable.cs.meta new file mode 100644 index 0000000..e5f1112 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/GameObjectVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: edc690a6e84028a488f0c8e94cbc98bd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: a3544c3af310c8f44a5f4947b40c0d58, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/IntVariable.cs b/Architecture/ScriptableObjects/Variables/IntVariable.cs new file mode 100644 index 0000000..b864d49 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/IntVariable.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class IntEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "IntVariable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "int", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 4)] + public class IntVariable : BaseVariable + { + public override bool Clampable { get { return true; } } + protected override int ClampValue(int value) + { + if (value.CompareTo(MinClampValue) < 0) + { + return MinClampValue; + } + else if (value.CompareTo(MaxClampValue) > 0) + { + return MaxClampValue; + } + else + { + return value; + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/IntVariable.cs.meta b/Architecture/ScriptableObjects/Variables/IntVariable.cs.meta new file mode 100644 index 0000000..97a2eae --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/IntVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a56a9b97a78f01f4b97f217c74f00246 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 13e475cb7912eeb4894a465fb6731c8c, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/LayerMaskVariable.cs b/Architecture/ScriptableObjects/Variables/LayerMaskVariable.cs new file mode 100644 index 0000000..5481153 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/LayerMaskVariable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class LayerMaskEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "LayerMaskVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "LayerMask", + order = 120)] + public class LayerMaskVariable : BaseVariable + { + } +} diff --git a/Architecture/ScriptableObjects/Variables/LayerMaskVariable.cs.meta b/Architecture/ScriptableObjects/Variables/LayerMaskVariable.cs.meta new file mode 100644 index 0000000..3f676a5 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/LayerMaskVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4b26aa8462eb624458ecacd922a870e8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 773e015a7b5b1d04b90d89056380b2dd, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/LongVariable.cs b/Architecture/ScriptableObjects/Variables/LongVariable.cs new file mode 100644 index 0000000..2d22846 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/LongVariable.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class LongEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "LongVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "long", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 9)] + public class LongVariable : BaseVariable + { + public override bool Clampable { get { return true; } } + protected override long ClampValue(long value) + { + if (value.CompareTo(MinClampValue) < 0) + { + return MinClampValue; + } + else if (value.CompareTo(MaxClampValue) > 0) + { + return MaxClampValue; + } + else + { + return value; + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/LongVariable.cs.meta b/Architecture/ScriptableObjects/Variables/LongVariable.cs.meta new file mode 100644 index 0000000..eb66d95 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/LongVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 50e02b493210a474f8f6cde2ba9f6150 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 4263932218259524f8182efeb60b2bd8, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/ObjectVariable.cs b/Architecture/ScriptableObjects/Variables/ObjectVariable.cs new file mode 100644 index 0000000..f418192 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/ObjectVariable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class ObjectEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "ObjectVariable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "Object", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 1)] + public class ObjectVariable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/ObjectVariable.cs.meta b/Architecture/ScriptableObjects/Variables/ObjectVariable.cs.meta new file mode 100644 index 0000000..9a9fec1 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/ObjectVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d74bacc6470d5f64cbb226a9325213db +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: acd051de47773d84f9371e040d45f547, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/QuaternionVariable.cs b/Architecture/ScriptableObjects/Variables/QuaternionVariable.cs new file mode 100644 index 0000000..414bd42 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/QuaternionVariable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class QuaternionEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "QuaternionVariable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "Structs/Quaternion", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 13)] + public sealed class QuaternionVariable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/QuaternionVariable.cs.meta b/Architecture/ScriptableObjects/Variables/QuaternionVariable.cs.meta new file mode 100644 index 0000000..95be022 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/QuaternionVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f722081b3e7717849b9b80bdafe2891c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 33979cf2334958d41b7fc53c43132eda, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/SByteVariable.cs b/Architecture/ScriptableObjects/Variables/SByteVariable.cs new file mode 100644 index 0000000..dbe9f87 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/SByteVariable.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class SByteEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "SByteVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "sbyte", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 15)] + public class SByteVariable : BaseVariable + { + public override bool Clampable { get { return true; } } + protected override sbyte ClampValue(sbyte value) + { + if (value.CompareTo(MinClampValue) < 0) + { + return MinClampValue; + } + else if (value.CompareTo(MaxClampValue) > 0) + { + return MaxClampValue; + } + else + { + return value; + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/SByteVariable.cs.meta b/Architecture/ScriptableObjects/Variables/SByteVariable.cs.meta new file mode 100644 index 0000000..5473838 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/SByteVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ae0f30c5c8add434d8922440346dbddf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 16fe4ae2595371a4cbec816a6af044d0, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/SceneVariable.cs b/Architecture/ScriptableObjects/Variables/SceneVariable.cs new file mode 100644 index 0000000..b87beed --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/SceneVariable.cs @@ -0,0 +1,131 @@ +using System; +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class SceneInfoEvent : UnityEvent { } + + /// + /// is a scriptable constant variable whose scene values are assigned at + /// edit-time by assigning a instance to it. + /// + [CreateAssetMenu( + fileName = "SceneVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "Scene", + order = 120)] + public sealed class SceneVariable : BaseVariable + { + /// + /// Returns the of this instance. + /// + public override SceneInfo Value + { + get { return _value; } + } + + public override bool ReadOnly + { + get + { + // A scene variable is essentially a constant for edit-time modification only; there is not + // any kind of expectation for a user to be able to set this at runtime. + return true; + } + } + } + + [Serializable] + [MultiLine] + public sealed class SceneInfo : ISerializationCallbackReceiver + { + /// + /// Returns the fully-qualified name of the scene. + /// + public string SceneName + { + get { return _sceneName; } + } + + /// + /// Returns the index of the scene in the build settings; if not present, -1 will be returned instead. + /// + public int SceneIndex + { + get { return _sceneIndex; } + internal set { _sceneIndex = value; } + } + + /// + /// Returns true if the scene is present in the build settings, otherwise false. + /// + public bool IsSceneInBuildSettings + { + get { return _sceneIndex != -1; } + } + + /// + /// Returns true if the scene is enabled in the build settings, otherwise false. + /// + public bool IsSceneEnabled + { + get { return _isSceneEnabled; } + internal set { _isSceneEnabled = value; } + } + + #if UNITY_EDITOR + internal UnityEditor.SceneAsset Scene + { + get { return UnityEditor.AssetDatabase.LoadAssetAtPath(_sceneName); } + } + #endif + + #pragma warning disable 0649 + + [SerializeField] + private string _sceneName; + + [SerializeField] + private int _sceneIndex; + + [SerializeField] + private bool _isSceneEnabled; + + #pragma warning restore 0649 + + public SceneInfo() + { + _sceneIndex = -1; + } + + #region ISerializationCallbackReceiver + + public void OnBeforeSerialize() + { + #if UNITY_EDITOR + if (Scene != null) + { + var sceneAssetPath = UnityEditor.AssetDatabase.GetAssetPath(Scene); + var sceneAssetGUID = UnityEditor.AssetDatabase.AssetPathToGUID(sceneAssetPath); + var scenes = UnityEditor.EditorBuildSettings.scenes; + + SceneIndex = -1; + for (var i = 0; i < scenes.Length; i++) + { + if (scenes[i].guid.ToString() == sceneAssetGUID) + { + SceneIndex = i; + IsSceneEnabled = scenes[i].enabled; + break; + } + } + } + #endif + } + + public void OnAfterDeserialize(){} + + #endregion + } +} diff --git a/Architecture/ScriptableObjects/Variables/SceneVariable.cs.meta b/Architecture/ScriptableObjects/Variables/SceneVariable.cs.meta new file mode 100644 index 0000000..269679a --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/SceneVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2953c036c3bbfff4283215395edf0cd8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 9e50d8100875e98459ea1e86d378b9f8, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/ShortVariable.cs b/Architecture/ScriptableObjects/Variables/ShortVariable.cs new file mode 100644 index 0000000..7de7363 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/ShortVariable.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class ShortEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "ShortVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "short", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 14)] + public class ShortVariable : BaseVariable + { + public override bool Clampable { get { return true; } } + protected override short ClampValue(short value) + { + if (value.CompareTo(MinClampValue) < 0) + { + return MinClampValue; + } + else if (value.CompareTo(MaxClampValue) > 0) + { + return MaxClampValue; + } + else + { + return value; + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/ShortVariable.cs.meta b/Architecture/ScriptableObjects/Variables/ShortVariable.cs.meta new file mode 100644 index 0000000..9ace80f --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/ShortVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8c8c4010aabb6e64f9a0ea607a8730e0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 3fb47467c61128c46a353baea763fee2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/StringVariable.cs b/Architecture/ScriptableObjects/Variables/StringVariable.cs new file mode 100644 index 0000000..6ebe84b --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/StringVariable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class StringEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "StringVariable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "string", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 2)] + public sealed class StringVariable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/StringVariable.cs.meta b/Architecture/ScriptableObjects/Variables/StringVariable.cs.meta new file mode 100644 index 0000000..3a1eefe --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/StringVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2474e5d1f7070d64da66908d8dabfce4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: d03fb38302613674e9ff6a910ad8ae52, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/UIntVariable.cs b/Architecture/ScriptableObjects/Variables/UIntVariable.cs new file mode 100644 index 0000000..29d4591 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/UIntVariable.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class UIntEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "UnsignedIntVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "uint", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 16)] + public class UIntVariable : BaseVariable + { + public override bool Clampable { get { return true; } } + protected override uint ClampValue(uint value) + { + if (value.CompareTo(MinClampValue) < 0) + { + return MinClampValue; + } + else if (value.CompareTo(MaxClampValue) > 0) + { + return MaxClampValue; + } + else + { + return value; + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/UIntVariable.cs.meta b/Architecture/ScriptableObjects/Variables/UIntVariable.cs.meta new file mode 100644 index 0000000..e212136 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/UIntVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dc7ac7cf86ca53c4f97e83018dbbfb99 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: f014dd179639d1e46a063ea6f84ee6d2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/ULongVariable.cs b/Architecture/ScriptableObjects/Variables/ULongVariable.cs new file mode 100644 index 0000000..e1a3238 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/ULongVariable.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class ULongEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "UnsignedLongVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "ulong", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 17)] + public class ULongVariable : BaseVariable + { + public override bool Clampable { get { return true; } } + protected override ulong ClampValue(ulong value) + { + if (value.CompareTo(MinClampValue) < 0) + { + return MinClampValue; + } + else if (value.CompareTo(MaxClampValue) > 0) + { + return MaxClampValue; + } + else + { + return value; + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/ULongVariable.cs.meta b/Architecture/ScriptableObjects/Variables/ULongVariable.cs.meta new file mode 100644 index 0000000..62883b4 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/ULongVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: afaa7230249496e4e81d9dafaadec42d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 10bd55e7ce1b4a649aa36f7defd21160, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/UShortVariable.cs b/Architecture/ScriptableObjects/Variables/UShortVariable.cs new file mode 100644 index 0000000..673cf41 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/UShortVariable.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class UShortEvent : UnityEvent { } + + [CreateAssetMenu( + fileName = "UnsignedShortVariable.asset", + menuName = SOArchitecture_Utility.ADVANCED_VARIABLE_SUBMENU + "ushort", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 18)] + public class UShortVariable : BaseVariable + { + public override bool Clampable { get { return true; } } + protected override ushort ClampValue(ushort value) + { + if (value.CompareTo(MinClampValue) < 0) + { + return MinClampValue; + } + else if (value.CompareTo(MaxClampValue) > 0) + { + return MaxClampValue; + } + else + { + return value; + } + } + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/UShortVariable.cs.meta b/Architecture/ScriptableObjects/Variables/UShortVariable.cs.meta new file mode 100644 index 0000000..9aff9b2 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/UShortVariable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 38b4db19c88702e4f9fc8a0636c82fa3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 0e386ea6d4343594ca7fcd5e404ce74b, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/Vector2Variable.cs b/Architecture/ScriptableObjects/Variables/Vector2Variable.cs new file mode 100644 index 0000000..49f43bb --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/Vector2Variable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class Vector2Event : UnityEvent { } + + [CreateAssetMenu( + fileName = "Vector2Variable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "Structs/Vector2", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 10)] + public sealed class Vector2Variable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/Vector2Variable.cs.meta b/Architecture/ScriptableObjects/Variables/Vector2Variable.cs.meta new file mode 100644 index 0000000..5f6b17b --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/Vector2Variable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d6a231661af38844caae4ded01abd631 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 1149df5a9ef735d46a0403a67e3f9c6c, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/Vector3Variable.cs b/Architecture/ScriptableObjects/Variables/Vector3Variable.cs new file mode 100644 index 0000000..1ed1d28 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/Vector3Variable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class Vector3Event : UnityEvent { } + + [CreateAssetMenu( + fileName = "Vector3Variable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "Structs/Vector3", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 11)] + public sealed class Vector3Variable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/Vector3Variable.cs.meta b/Architecture/ScriptableObjects/Variables/Vector3Variable.cs.meta new file mode 100644 index 0000000..eca3c83 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/Vector3Variable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 55a1fbeb783df41428d5464d443e2265 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 330e0b02b1aba674ea99f0c98a4c582c, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/Variables/Vector4Variable.cs b/Architecture/ScriptableObjects/Variables/Vector4Variable.cs new file mode 100644 index 0000000..ace4f13 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/Vector4Variable.cs @@ -0,0 +1,16 @@ +using UnityEngine; +using UnityEngine.Events; + +namespace ScriptableObjectArchitecture +{ + [System.Serializable] + public class Vector4Event : UnityEvent { } + + [CreateAssetMenu( + fileName = "Vector4Variable.asset", + menuName = SOArchitecture_Utility.VARIABLE_SUBMENU + "Structs/Vector4", + order = SOArchitecture_Utility.ASSET_MENU_ORDER_COLLECTIONS + 12)] + public sealed class Vector4Variable : BaseVariable + { + } +} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/Variables/Vector4Variable.cs.meta b/Architecture/ScriptableObjects/Variables/Vector4Variable.cs.meta new file mode 100644 index 0000000..99260c7 --- /dev/null +++ b/Architecture/ScriptableObjects/Variables/Vector4Variable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9aafcfecb82f81d4bba4abd0e634e0a5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: ce89773a8f26fff4daed8453bd00649e, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Architecture/ScriptableObjects/package.json b/Architecture/ScriptableObjects/package.json new file mode 100644 index 0000000..70847a0 --- /dev/null +++ b/Architecture/ScriptableObjects/package.json @@ -0,0 +1 @@ +{"name":"com.danieleverland.scriptableobjectarchitecture","displayName":"ScriptableObject-Architecture","version":"1.6.4","unity":"2019.2","description":"Makes using Scriptable Objects as a fundamental part of your architecture in Unity super easy","keywords":["scriptableobject","architecture"],"category":"Tools"} \ No newline at end of file diff --git a/Architecture/ScriptableObjects/package.json.meta b/Architecture/ScriptableObjects/package.json.meta new file mode 100644 index 0000000..2145bf5 --- /dev/null +++ b/Architecture/ScriptableObjects/package.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d16c742e3eb26354bad67e373cfd1609 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: