unity delegate event
//Defining Delegate
public delegate void OnButtonClickDelegate();
public static OnButtonClickDelegate buttonClickDelegate;
//Subscribing to delegate
// eg. of Singlecast
buttonClickDelegate = myCustomMethod;
//eg. of Multicast Delegate
buttonClickDelegate += myCustomMethod;
buttonClickDelegate +=myAnotherCustomMethod
//Calling Delegates
buttonClickDelegate();
//UnSubscribing to Delegate
buttonClickDelegate -= myCustomMethod;
buttonClickDelegate -=myAnotherCustomMethod