Так что я строю игру с MonoGame в VS. Я использую Content конвейер из MonoGame (который генерирует файлы XNB).Как сканировать все файлы XNB в Content Manager?
Дело в том, что моя игра экспансивна (это игра rhytim, в которой пользователь может скачать песни/графики). Поэтому мне пришлось поддерживать «подключаемые» файлы XNB.
Итак, я уже сделал свой пользовательский импортер/читатель/писатель для своих пользовательских типов, но не могу найти способ сканирования папки содержимого, чтобы найти, какие xnb доступны. Например, если пользователь добавляет папку Song1.xnb в Content, как я буду (программно) знать, что файл есть?
Я не нашел ни одного showFiles или scanContent в ContentManager, чтобы перечислить все доступные файлы. Как я могу найти, какие файлы находятся в моей папке содержимого в кросс-платформенной форме?
Пример моей структуры:
Content
- Songs
- Song0
- 0.xnb
- 1.xnb
- Song0.xnb
- Song1
- 0.xnb
- Song0.xnb
Так моя папка песня всегда есть {Папка} .xnb файл, которые имеют структуру песен (а также ссылка на X.xnb (0, 1,2 ...)). Но я не могу найти, какие папки существуют на Песнях, поэтому я могу позвонить Load<Music>("Songs\\{SongFolder}\\{SongFolder}.xnb")
Спасибо!
Weird, он не seens работать здесь. Я получаю исключение из функции RootDir, потому что в моем Content.RootDirectory нет (это просто «Контент»). Также Directory.GetFiles (Content.RootDirectory) ничего не возвращает. –
Хорошо, поэтому моя ошибка. Я не видел, что GetFiles возвращает только файлы (и у меня нет файлов в папке, которую я искал). С GetDirectories это сработало. Благодаря! –