您最多选择25个主题
主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
38 行
931 B
38 行
931 B
using NaughtyAttributes;
|
|
using UnityEngine;
|
|
|
|
namespace GameplayIngredients.Events
|
|
{
|
|
public class OnMessageEvent : EventBase
|
|
{
|
|
public string MessageName = "Message";
|
|
|
|
[ReorderableList]
|
|
public Callable[] OnMessageRecieved;
|
|
|
|
void OnEnable()
|
|
{
|
|
Messager.RegisterMessage(MessageName, Execute);
|
|
}
|
|
|
|
void OnDisable()
|
|
{
|
|
Messager.RemoveMessage(MessageName, Execute);
|
|
}
|
|
|
|
void Execute(GameObject instigator)
|
|
{
|
|
try
|
|
{
|
|
Callable.Call(OnMessageRecieved, instigator);
|
|
}
|
|
catch(System.Exception e)
|
|
{
|
|
UnityEngine.Debug.LogError(string.Format("OnMessageEvent : Exception Caught while catching message '{0}' on Object '{1}'", MessageName, gameObject.name));
|
|
UnityEngine.Debug.LogException(e);
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|