【C#スクリプト】トリガーと修飾入力 - x0oey6B8/KeyToKey-Web GitHub Wiki

目次

  1. トリガー
    1. トリガーの値を取得する
    2. トリガーが押されているかどうか
    3. 指定した値がトリガーかどうか
  2. 修飾入力
    1. 修飾入力の値を調べる
    2. 修飾入力が押されているかどうか

トリガー

マクロの実行する入力(キー、マウスのボタン、コントロラーのボタンやスティック)をまとめてトリガーと呼びます。

トリガーの値を取得する

// トリガーの値はobject型で実態はKeys型かControllerButtons型です。
if (Trigger.Value is Keys key)
{
    Console.WriteLine(key);
}
else if (Trigger.Value is ControllerButtons button)
{
    Console.WriteLine(button);
}

トリガーが押されているかどうか

if (Trigger.IsPressed)
{
    Console.WriteLine("押されています");
}
else
{
    Console.WriteLine("離されています");
}

指定した値がトリガーかどうか

if (IsTrigger(Keys.A))
{
}

if (IsTrigger(ControllerButtons.DPadDown))
{
}

修飾入力

トリガーと併用する入力(キー、マウスのボタン、コントロラーのボタンやスティック)をまとめて修飾入力と呼びます。

修飾入力の値を調べる

foreach (var input in Modifier.Inputs)
{
    // 値がKeys型かControllerButtons型にキャストできるかどうかを調べる
    if (input is Keys key)
    {
        Console.WriteLine(key);
    }
    else if (input is ControllerButtons button)
    {
        Console.WriteLine(button);
    }
}

修飾入力が押されているかどうか

if (Modifier.IsPressed)
{
    Console.WriteLine("押されています");
}
else
{
    Console.WriteLine("離されています");
}