using UnityEngine; using UnityEngine.Serialization; namespace UnityAtoms { public abstract class SetVariableValue : VoidAction where E1 : GameEvent where E2 : GameEvent where V : ScriptableObjectVariable where R : ScriptableObjectReference { [FormerlySerializedAs("Variable")] [SerializeField] private V _variable = null; [FormerlySerializedAs("Value")] [SerializeField] private R _value = null; public override void Do() { _variable.Value = _value.Value; } } }