Documentation index for AI agents (llms.txt) A Markdown version of every page is available: request the page's source under /docs/, follow the "alternate" link in this page's head, or start from /llms.txt.
Visual Script logo Manual

Last Input Device#

Input / Last Input Device

  • Can Read

  • Cannot Write

Description#

The name of the input device that was used most recently

Code#

using System;
using UnityEngine.InputSystem;
using VisualScript.Icons;

namespace VisualScript.Runtime
{
    [Get]

    [Title("Last Input Device")]
    [Category("Input/Last Input Device")]

    [Description("The name of the input device that was used most recently")]
    [Image(typeof(IconComputer), ColorTheme.Type.Blue, typeof(BadgeString))]

    [Keywords("Keyboard", "Mouse", "Gamepad", "Prompt", "Scheme", "Switch")]

    [Serializable]
    public class TypeStringInputLastDevice : TypeString
    {
        public override string Get(Args args)
        {
            InputDevice lastDevice = null;
            double lastUpdateTime = 0d;

            foreach (InputDevice device in InputSystem.devices)
            {
                if (device.lastUpdateTime <= lastUpdateTime) continue;

                lastUpdateTime = device.lastUpdateTime;
                lastDevice = device;
            }

            return lastDevice != null ? lastDevice.displayName : string.Empty;
        }

        public override string ToString()
        {
            return "Last Input Device";
        }

        protected override SubscriptionMode Subscription => SubscriptionMode.OnChange;
    }
}
Visual Script logoVisual Script © Catsoft Works 2026. All rights reserved.