ボタン用の「onClick」イベントと同様の機能を任意のオブジェクトに付与するスクリプトです。
標準の Button の onClick(UnityEvent)と同じ仕組みを、
オブジェクトの有効化(OnEnable)時に発火させるスクリプトを用意します。
using UnityEngine;
using UnityEngine.Events;
public class OnEnableEvent : MonoBehaviour
{
[SerializeField] private UnityEvent onEnable;
private void OnEnable()
{
onEnable?.Invoke();
}
}
- 対象のゲームオブジェクトに OnEnableEvent.cs をアタッチします。
- インスペクターに Button の onClick と全く同じ見た目のイベント枠(On Enable ())が表示されます。
- + ボタンを押して、呼び出したいオブジェクトと関数を指定します。

これで、オブジェクトが SetActive(true) されるたびに指定した関数が自動的に実行されます。

コメント