您最多选择25个主题
主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
30 行
638 B
30 行
638 B
using UnityEngine;
|
|
using UnityEngine.Events;
|
|
|
|
/// <summary>
|
|
/// A flexible handler for void events in the form of a MonoBehaviour. Responses can be connected directly from the Unity Inspector.
|
|
/// </summary>
|
|
public class VoidEventListener : MonoBehaviour
|
|
{
|
|
[SerializeField] private VoidEventChannelSO _channel = default;
|
|
|
|
public UnityEvent OnEventRaised;
|
|
|
|
private void OnEnable()
|
|
{
|
|
if (_channel != null)
|
|
_channel.OnEventRaised += Respond;
|
|
}
|
|
|
|
private void OnDisable()
|
|
{
|
|
if (_channel != null)
|
|
_channel.OnEventRaised -= Respond;
|
|
}
|
|
|
|
private void Respond()
|
|
{
|
|
if (OnEventRaised != null)
|
|
OnEventRaised.Invoke();
|
|
}
|
|
}
|