mirror of
https://github.com/maxartz15/ScriptableData.git
synced 2025-06-24 02:54:32 +02:00
Scriptable Data & Events
This commit is contained in:
@ -1,5 +0,0 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace COMPANYNAME.PACKAGENAME
|
||||
{
|
||||
}
|
255
Runtime/ScriptableData.cs
Normal file
255
Runtime/ScriptableData.cs
Normal file
@ -0,0 +1,255 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
namespace ScriptableData
|
||||
{
|
||||
public class ScriptableData<T0> : ScriptableObject
|
||||
{
|
||||
public event Action<T0> OnValueChangedEvent;
|
||||
|
||||
private T0 _value;
|
||||
public T0 Value
|
||||
{
|
||||
get
|
||||
{
|
||||
return _value;
|
||||
}
|
||||
set
|
||||
{
|
||||
_value = value;
|
||||
OnValueChangedEvent?.Invoke(_value);
|
||||
}
|
||||
}
|
||||
|
||||
public void SetWithoutNotify(T0 value)
|
||||
{
|
||||
_value = value;
|
||||
}
|
||||
|
||||
public void Invoke(T0 value)
|
||||
{
|
||||
_value = value;
|
||||
OnValueChangedEvent?.Invoke(value);
|
||||
}
|
||||
}
|
||||
|
||||
public class ScriptableData<T0, T1> : ScriptableObject
|
||||
{
|
||||
public event Action<T0, T1> OnValueChangedEvent;
|
||||
|
||||
private T0 _value;
|
||||
public T0 Value
|
||||
{
|
||||
get
|
||||
{
|
||||
return _value;
|
||||
}
|
||||
set
|
||||
{
|
||||
_value = value;
|
||||
OnValueChangedEvent?.Invoke(_value, _value1);
|
||||
}
|
||||
}
|
||||
|
||||
private T1 _value1;
|
||||
public T1 Value1
|
||||
{
|
||||
get
|
||||
{
|
||||
return _value1;
|
||||
}
|
||||
set
|
||||
{
|
||||
_value1 = value;
|
||||
OnValueChangedEvent?.Invoke(_value, _value1);
|
||||
}
|
||||
}
|
||||
|
||||
public void SetWithoutNotify(T0 value)
|
||||
{
|
||||
_value = value;
|
||||
}
|
||||
|
||||
public void SetWithoutNotify(T0 value, T1 value1)
|
||||
{
|
||||
_value = value;
|
||||
_value1 = value1;
|
||||
}
|
||||
|
||||
public void Invoke(T0 value, T1 value1)
|
||||
{
|
||||
Value = value;
|
||||
Value1 = value1;
|
||||
OnValueChangedEvent?.Invoke(value, value1);
|
||||
}
|
||||
}
|
||||
|
||||
public class ScriptableData<T0, T1, T2> : ScriptableObject
|
||||
{
|
||||
public event Action<T0, T1, T2> OnValueChangedEvent;
|
||||
|
||||
private T0 _value;
|
||||
public T0 Value
|
||||
{
|
||||
get
|
||||
{
|
||||
return _value;
|
||||
}
|
||||
set
|
||||
{
|
||||
_value = value;
|
||||
OnValueChangedEvent?.Invoke(_value, _value1, _value2);
|
||||
}
|
||||
}
|
||||
|
||||
private T1 _value1;
|
||||
public T1 Value1
|
||||
{
|
||||
get
|
||||
{
|
||||
return _value1;
|
||||
}
|
||||
set
|
||||
{
|
||||
_value1 = value;
|
||||
OnValueChangedEvent?.Invoke(_value, _value1, _value2);
|
||||
}
|
||||
}
|
||||
|
||||
private T2 _value2;
|
||||
public T2 Value2
|
||||
{
|
||||
get
|
||||
{
|
||||
return _value2;
|
||||
}
|
||||
set
|
||||
{
|
||||
_value2 = value;
|
||||
OnValueChangedEvent?.Invoke(_value, _value1, _value2);
|
||||
}
|
||||
}
|
||||
|
||||
public void SetWithoutNotify(T0 value)
|
||||
{
|
||||
_value = value;
|
||||
}
|
||||
|
||||
public void SetWithoutNotify(T0 value, T1 value1)
|
||||
{
|
||||
_value = value;
|
||||
_value1 = value1;
|
||||
}
|
||||
|
||||
public void SetWithoutNotify(T0 value, T1 value1, T2 value2)
|
||||
{
|
||||
_value = value;
|
||||
_value1 = value1;
|
||||
_value2 = value2;
|
||||
}
|
||||
|
||||
public void Invoke(T0 value, T1 value1, T2 value2)
|
||||
{
|
||||
Value = value;
|
||||
Value1 = value1;
|
||||
Value2 = value2;
|
||||
OnValueChangedEvent?.Invoke(value, value1, value2);
|
||||
}
|
||||
}
|
||||
|
||||
public class ScriptableData<T0, T1, T2, T3> : ScriptableObject
|
||||
{
|
||||
public event Action<T0, T1, T2, T3> OnValueChangedEvent;
|
||||
|
||||
private T0 _value;
|
||||
public T0 Value
|
||||
{
|
||||
get
|
||||
{
|
||||
return _value;
|
||||
}
|
||||
set
|
||||
{
|
||||
_value = value;
|
||||
OnValueChangedEvent?.Invoke(_value, _value1, _value2, _value3);
|
||||
}
|
||||
}
|
||||
|
||||
private T1 _value1;
|
||||
public T1 Value1
|
||||
{
|
||||
get
|
||||
{
|
||||
return _value1;
|
||||
}
|
||||
set
|
||||
{
|
||||
_value1 = value;
|
||||
OnValueChangedEvent?.Invoke(_value, _value1, _value2, _value3);
|
||||
}
|
||||
}
|
||||
|
||||
private T2 _value2;
|
||||
public T2 Value2
|
||||
{
|
||||
get
|
||||
{
|
||||
return _value2;
|
||||
}
|
||||
set
|
||||
{
|
||||
_value2 = value;
|
||||
OnValueChangedEvent?.Invoke(_value, _value1, _value2, _value3);
|
||||
}
|
||||
}
|
||||
|
||||
private T3 _value3;
|
||||
public T3 Value3
|
||||
{
|
||||
get
|
||||
{
|
||||
return _value3;
|
||||
}
|
||||
set
|
||||
{
|
||||
_value3 = value;
|
||||
OnValueChangedEvent?.Invoke(_value, _value1, _value2, _value3);
|
||||
}
|
||||
}
|
||||
|
||||
public void SetWithoutNotify(T0 value)
|
||||
{
|
||||
_value = value;
|
||||
}
|
||||
|
||||
public void SetWithoutNotify(T0 value, T1 value1)
|
||||
{
|
||||
_value = value;
|
||||
_value1 = value1;
|
||||
}
|
||||
|
||||
public void SetWithoutNotify(T0 value, T1 value1, T2 value2)
|
||||
{
|
||||
_value = value;
|
||||
_value1 = value1;
|
||||
_value2 = value2;
|
||||
}
|
||||
|
||||
public void SetWithoutNotify(T0 value, T1 value1, T2 value2, T3 value3)
|
||||
{
|
||||
_value = value;
|
||||
_value1 = value1;
|
||||
_value2 = value2;
|
||||
_value3 = value3;
|
||||
}
|
||||
|
||||
public void Invoke(T0 value, T1 value1, T2 value2, T3 value3)
|
||||
{
|
||||
Value = value;
|
||||
Value1 = value1;
|
||||
Value2 = value2;
|
||||
Value3 = value3;
|
||||
OnValueChangedEvent?.Invoke(value, value1, value2, value3);
|
||||
}
|
||||
}
|
||||
}
|
11
Runtime/ScriptableData.cs.meta
Normal file
11
Runtime/ScriptableData.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: db3264973431f63458697af52994bf57
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
56
Runtime/ScriptableEvent.cs
Normal file
56
Runtime/ScriptableEvent.cs
Normal file
@ -0,0 +1,56 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
namespace ScriptableData
|
||||
{
|
||||
[CreateAssetMenu(menuName = "ScriptableData/Event/Event", order = 147)]
|
||||
public class ScriptableEvent : ScriptableObject
|
||||
{
|
||||
public event Action OnScriptableEvent;
|
||||
|
||||
public void Invoke()
|
||||
{
|
||||
OnScriptableEvent?.Invoke();
|
||||
}
|
||||
}
|
||||
|
||||
public class ScriptableEvent<T0> : ScriptableObject
|
||||
{
|
||||
public event Action<T0> OnScriptableEvent;
|
||||
|
||||
public void Invoke(T0 value)
|
||||
{
|
||||
OnScriptableEvent?.Invoke(value);
|
||||
}
|
||||
}
|
||||
|
||||
public class ScriptableEvent<T0, T1> : ScriptableObject
|
||||
{
|
||||
public event Action<T0, T1> OnScriptableEvent;
|
||||
|
||||
public void Invoke(T0 value, T1 value1)
|
||||
{
|
||||
OnScriptableEvent?.Invoke(value, value1);
|
||||
}
|
||||
}
|
||||
|
||||
public class ScriptableEvent<T0, T1, T2> : ScriptableObject
|
||||
{
|
||||
public event Action<T0, T1, T2> OnScriptableEvent;
|
||||
|
||||
public void Invoke(T0 value, T1 value1, T2 value2)
|
||||
{
|
||||
OnScriptableEvent?.Invoke(value, value1, value2);
|
||||
}
|
||||
}
|
||||
|
||||
public class ScriptableEvent<T0, T1, T2, T3> : ScriptableObject
|
||||
{
|
||||
public event Action<T0, T1, T2, T3> OnScriptableEvent;
|
||||
|
||||
public void Invoke(T0 value, T1 value1, T2 value2, T3 value3)
|
||||
{
|
||||
OnScriptableEvent?.Invoke(value, value1, value2, value3);
|
||||
}
|
||||
}
|
||||
}
|
11
Runtime/ScriptableEvent.cs.meta
Normal file
11
Runtime/ScriptableEvent.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 19a385034782e5145827449109c29d63
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -1,5 +1,6 @@
|
||||
{
|
||||
"name": "COMPANYNAME.PACKAGENAME",
|
||||
"name": "VertexColor.ScriptableData",
|
||||
"rootNamespace": "ScriptableData",
|
||||
"references": [],
|
||||
"includePlatforms": [],
|
||||
"excludePlatforms": [],
|
||||
@ -8,5 +9,6 @@
|
||||
"precompiledReferences": [],
|
||||
"autoReferenced": true,
|
||||
"defineConstraints": [],
|
||||
"versionDefines": []
|
||||
"versionDefines": [],
|
||||
"noEngineReferences": false
|
||||
}
|
7
Runtime/VertexColor.ScriptableData.asmdef.meta
Normal file
7
Runtime/VertexColor.ScriptableData.asmdef.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bd2fa452e376b7e4e8356eed741e5eea
|
||||
AssemblyDefinitionImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Reference in New Issue
Block a user