The current event handling in MultiplayerConnection is being replaced by a more intuitive and extensible EventBus implementation.
A new EventBus class is introduced, which manages the event handling in place of MultiplayerConnection.
The SystemBase class is extended to handle default event registration, deregistration and default deserialisation. Each system can override these functions as needed.
Clients are still able to register using callbacks, as before, the only difference being that the EventBus is now handling it.
The current event handling in MultiplayerConnection is being replaced by a more intuitive and extensible EventBus implementation. A new EventBus class is introduced, which manages the event handling in place of MultiplayerConnection. The SystemBase class is extended to handle default event registration, deregistration and default deserialisation. Each system can override these functions as needed. Clients are still able to register using callbacks, as before, the only difference being that the EventBus is now handling it.