Unity小技 キー入力の連続押しを回避するスクリプト

Unity

説明

Unityでキーイベントを行ったとき、キー入力を1回だけで良いのに何回も連続で押されてしまうことってよくありますよね。

今回はUnityのスクリプトでGetKey(“space”)と設定し、スペースキーを押すと連続に押された状態にならないための回避方法を以下に示します。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Test : MonoBehaviour
{
    bool pushFlag = false;

    void Update()
    {
        if (Input.GetKey("space"))
        {
            if (pushFlag == false)  // 押しっぱなしではないとき
            {
                pushFlag = true;    // 押し状態にする
                // 何かする(弾を打つ、オブジェクトを出現させるなどのイベント)
            }
        }
        else
        {
            pushFlag = false;
        }
    }
}

このようにフラグをうまく使いこなせば簡単にできます。

以上です。

コメント

タイトルとURLをコピーしました