Files
tianrunCRM/Assets/CoolapeFrame/Scripts/toolkit/Callback.cs

32 lines
1.1 KiB
C#
Raw Normal View History

2020-07-04 14:41:25 +08:00
/*
* Advanced C# messenger by Ilya Suzdalnitski. V1.0
*
* Based on Rod Hyde's "CSharpMessenger" and Magnus Wolffelt's "CSharpMessenger Extended".
*
* Features:
* Prevents a MissingReferenceException because of a reference to a destroyed message handler.
* Option to log all messages
* Extensive error detection, preventing silent bugs
*
* Usage examples:
1. Messenger.AddListener<GameObject>("prop collected", PropCollected);
Messenger.Broadcast<GameObject>("prop collected", prop);
2. Messenger.AddListener<float>("speed changed", SpeedChanged);
Messenger.Broadcast<float>("speed changed", 0.5f);
*
* Messenger cleans up its evenTable automatically upon loading of a new level.
*
* Don't forget that the messages that should survive the cleanup, should be marked with Messenger.MarkAsPermanent(string)
*
* http://wiki.unity3d.com/index.php?title=Advanced_CSharp_Messenger
*
*/
namespace Coolape
{
public delegate void Callback (params object[] objs);
public delegate void Callback<T> (T arg1);
public delegate void Callback<T, U> (T arg1, U arg2);
public delegate void Callback<T, U, V> (T arg1, U arg2, V arg3);
}