【Unity】EventTriggerをスクリプトから設定する

unity

イベントトリガーはクリックした時にイベントを発生させるコンポーネントです。

オブジェクトにアタッチして使用しますが、

「オブジェクトにEventTriggerを毎回手動で設定するのが面倒。」

という問題があります。

そのような場合にはスクリプトから設定すると便利です。

void Start()
    {
        //EventTriggerを設定する
        gameObject.AddComponent<EventTrigger>();
        EventTrigger trigger = gameObject.GetComponent<EventTrigger>();
        EventTrigger.Entry entry = new EventTrigger.Entry();
        entry.eventID = EventTriggerType.PointerClick;
        // 右側の{}内に登録したい関数名を書く。
        entry.callback.AddListener((eventDate) => { OnClickItem(); });
        trigger.triggers.Add(entry);
    }

注意点としては、インスペクタに表示されないことです。