refactor: dungeonFactory