public void SubscribeEvent(object eventPublisher, PublisherSubscribedEventArgs publisherSubscribedEventArgs) { //SubScribe to the targeted eventPublisher with the same type if (publisherSubscribedEventArgs.Publisher.GetType() == typeof(MazeConfigurator)) { MazeConfigurator mazeConfigurator = (MazeConfigurator)publisherSubscribedEventArgs.Publisher; mazeConfigurator.SpawnMazeEvent += OnMazeSpawned; } }
public void UnSubScribeEvent() { StaticReferences.EventSubject.PublisherSubscribed -= SubscribeEvent; foreach (IEventPublisher eventPublisher in StaticReferences.EventSubject.EventPublishers) { if (eventPublisher.GetType() == typeof(MazeConfigurator)) { MazeConfigurator mazeConfigurator = (MazeConfigurator)eventPublisher; mazeConfigurator.SpawnMazeEvent -= OnMazeSpawned; } } }