[UNITY]2DRPG開発日誌 #20 押されたボタンを検出する方法

押されたボタンを検出したい

複数あるボタンに同様の動きをさせたいけど、ボタン一つ一つに機能を設定するのは面倒な場合。

まず冒頭に

using UnityEngine.EventSystems;

と書きます。次に

[SerializeField] private EventSystem eventSystem; //押したボタンを検出するためのもの
private GameObject selectedButton; //EventSystem経由で押されたボタンを検出

こんな風に変数を定義して、eventSystemにはインスペクターからEventSystemオブジェクトをアタッチします。

最後に

 selectedButton = eventSystem.currentSelectedGameObject.gameObject;

こんな風に書けば押されたボタンを検出できます。

currentSelectedGameObject、便利ですね。