Thanks to visit codestin.com
Credit goes to github.com

Skip to content

darkon76/UnityEventManager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

UnityEventManager

Summary An Event System is a fast way to communicate GameObject with the advantage that they don't need to know each other.

Usage

  1. Put the desire event at eEvent.
public enum eEvent {
    RandomEventName,
    MAX
}

Enums are used to avoid errors, and helps searching event triggers and listeners.

  1. Create the function that listens to the Event Manager
void Foo(object[] args)
{
}

The array is for event communication, as bonus it's easier to identify an event function.

2.1) Listen to the Event Manager

void OnEnable()
{
     EventManager.Listen(eEvent.RandomEventName,OnFoo);
}

2.2) Important When you register a listener you need to unregister it.

void OnDisable()
{
     EventManager.Remove(eEvent.RandomEventName,OnFoo);
}

A good practice is, if you register at OnEnable unregister at OnDisable. It works the same way with Awake and OnDestroy.

You can register a listener any place but always unregister it.

  1. Trigger the event with
void OnDisable()
{
     EventManager.Trigger(eEvent.RandomEventName); //Trigger the listeners with null parameters.
     EventManager.Trigger(eEvent.RandomEventName, withParameters);
}

Trigger with the parameter enum, and all the parameters that we want to send.

About

Easy to use Event Manager.

Resources

License

Stars

0 stars

Watchers

2 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages