# ScriptableData ## Data ScriptableData stores runtime data to be accessed by scripts that reference the ScriptableObject. It has a OnValueChangedEvent to subscribe when data changes. With this workflow you can remove dependencies and increase flexibility. ### Extendable Data: ```C# public class ScriptableData : ScriptableObject {} public class ScriptableData : ScriptableObject {} public class ScriptableData : ScriptableObject {} public class ScriptableData : ScriptableObject {} ``` ### Example: ```C# [CreateAssetMenu(menuName = "ScriptableData/Data/Vector3", order = 147)] public class SDVector3 : ScriptableData {} ``` ## Events ScriptableEvent does not contain any runtime data but can be used to send events (with data) around. ### Base Event ```C# [CreateAssetMenu(menuName = "ScriptableData/Event/Event", order = 147)] public class ScriptableEvent : ScriptableObject {} ``` ### Extendable Events: ```C# public class ScriptableEvent : ScriptableObject {} public class ScriptableEvent : ScriptableObject {} public class ScriptableEvent : ScriptableObject {} public class ScriptableEvent : ScriptableObject {} ``` ### Example: ```C# [CreateAssetMenu(menuName = "ScriptableData/Event/Vector3", order = 147)] public class SEVector3 : ScriptableEvent {} ``` ## Install [Installing from a Git URL](https://docs.unity3d.com/Manual/upm-ui-giturl.html) [Unitypackage](https://github.com/maxartz15/ScriptableData/releases) ## LICENSE Overall package is licensed under [MIT](/LICENSE.md), unless otherwise noted in the [3rd party licenses](/THIRD%20PARTY%20NOTICES.md) file and/or source code.