public void Notify(IEvent @event) { string topicDescription = @event.Topic.Description; switch (topicDescription) { case "FileDelete": FileDeleteEvent fileDeleteEvent = (FileDeleteEvent)@event; DeleteLevelFile(fileDeleteEvent.FileName); break; case "FileOverride": FileOverrideEvent fileOverrideEvent = (FileOverrideEvent)@event; OverrideLevelFile(fileOverrideEvent.FileName); break; case "FileLoad": LevelLoadEvent levelLoadEvent = (LevelLoadEvent)@event; LoadLevelFile(levelLoadEvent.FileName); break; case "UnlockedLevelsCountRequest": eventsCentre.Publish(new UnlockedLevelsCountReplyEvent(game.CompletedLevelCount)); break; default: throw new AssertionException("Error", "Error"); } }
public void OnEventRaised(LevelLoadEvent passedEvent) { data = passedEvent; LoadLevel(); }