Input Action Binding#
Input / Input Action Binding
Can Read
Cannot Write
Description#
The human readable control that is bound to the specified Input Action
Code#
using System;
using UnityEngine;
using UnityEngine.InputSystem;
using VisualScript.Icons;
namespace VisualScript.Runtime
{
[Get]
[Title("Input Action Binding")]
[Category("Input/Input Action Binding")]
[Description("The human readable control that is bound to the specified Input Action")]
[Image(typeof(IconBoltOutline), ColorTheme.Type.Teal, typeof(BadgeString))]
[Keywords("Display", "Label", "Prompt", "Rebind", "Remap", "Scheme")]
[Serializable]
public class TypeStringInputActionBinding : TypeString
{
[SerializeField] private InputActionFromAsset m_InputAction = new InputActionFromAsset();
public override string Get(Args args)
{
UnityEngine.InputSystem.InputAction inputAction = this.m_InputAction.InputAction;
return inputAction != null ? inputAction.GetBindingDisplayString() : string.Empty;
}
public override string ToString()
{
return $"{this.m_InputAction} Binding";
}
protected override SubscriptionMode Subscription => SubscriptionMode.OnChange;
}
}