Events Manager
Presented via IEventsManager interface, this system registers, listens and triggers various events.
To use this system, inject IEventsManager interface into your class, as shown below:
[Inject] private IEventsManager eventsManager;Available methods
void RegisterListener(string eventType, UnityAction listener)Registers event listener without parameters.
Examples:
eventsManager.RegisterListener("PlayerDeath", OnPlayerDeath);
eventsManager.RegisterListener("GameWin", () => { Debug.Log("Victory!"); });void RegisterListener<T>(string eventType, UnityAction<T> listener)Registers event listener with single parameter of any type.
Examples:
eventsManager.RegisterListener<int>("PlayerDamageGot", OnPlayerDamageGot);
eventsManager.RegisterListener("GameWin", (score) => { Debug.Log($"Victory! Score: {score}"); });void RegisterListener<T1, T2>(string eventType, UnityAction<T1, T2> listener)Registers event listener with 2 parameters of any types.
Example:
Unregisters event listener without parameters.
Example:
Unregisters event listener with 1 parameter of any type.
Example:
Unregisters event listener with 2 parameters of any types.
Example:
Triggers event without parameters.
Example:
Triggers event with 1 parameter of any type.
Example:
Triggers event with 2 parameters of any types.
Example:
Last updated