# Variable

[Variable](index.md) / **Variable**

<div class="grid cards" markdown>

* :red_circle: Cannot Read

* :green_circle: Can Write

</div>

## Description

The value of a Variable or Local Variable

## Code

```cs
using System;
using UnityEngine;
using VisualScript.Icons;

namespace VisualScript.Runtime
{
    [Set]
    
    [Title("Variable")]
    [Category("Variable/Variable")]
    
    [Description("The value of a Variable or Local Variable")]
    [Image(typeof(IconVariable), ColorTheme.Type.TextLight, typeof(BadgeVariable))]
    
    [Serializable]
    public class TypeSpriteVariableSet : TypeSprite
    {
        [SerializeField] private SetVariableValue m_Variable = new SetVariableValue();

        public override Sprite Get(Args args)
        {
            return this.m_Variable.Get<Sprite>(args);
        }
        
        public override void Set(Sprite value, Args args)
        {
            this.m_Variable.Set(value, args);
        }

        public override string ToString()
        {
            return this.m_Variable.ToString();
        }

        protected override SubscriptionMode Subscription => SubscriptionMode.OnChange;
    }
}
```

