implemented Event, edited LevelFactory