Изменение значений переменных из внешних файлов в XNA 4.0 - PullRequest
2 голосов
/ 11 января 2012

Какой самый простой способ изменить значение переменной в игре XNA 4.0?

У меня есть несколько объектов, которые я хочу показать / скрыть (как программист, а не как пользователь) без перестройки самой игры.Я пытался сделать это с XML, но оказалось, что он продвинулся для моего уровня знаний XNA.Моя идея - иметь файл, который будет иметь простую структуру (name_of_variable1, value_of_variable1, name_of_variable2, value_of_variable2 ...).Поскольку существует ограниченное количество переменных, которые мне нужно изменить (4 или 5 bool переменных - я могу держать свои методы рисования внутри операторов if-else и затем контролировать их выполнение с помощью этих bool переменных);эти файлы будут стандартизированы.

Я хочу сделать следующее: когда я публикую свою программу, я хочу иметь файл в папке «Содержимое», который я могу изменить в любом текстовом редакторе икогда я запускаю свою программу, она читает этот файл и соответственно устанавливает значения этих переменных (будет только один файл, который я буду перезаписывать при необходимости).

Какой самый простой способ сделать это?

Спасибо

1 Ответ

0 голосов
/ 25 января 2012

Я бы порекомендовал использовать форматы файлов CSV, XML или INI, в зависимости от типа данных, которые вы хотите сохранить.

CSV отлично подходит для данных, в которых у вас есть заголовок, и большого количества записей этих данных.Например, Sprite_sheets.csv может содержать идентификатор заголовка, PATH, WIDTH, HEIGHT и строки используемых вами листов спрайтов.

INI отлично подходит для отдельных переменных параметров, таких как FPS = 60, FULLSCREEN = true и т. д..

XML отлично подходит для больших структур данных, таких как ваша MAP, которая содержит TILES, OBJECTS, SPRITES внутри, а также содержит некоторые другие объекты и т. Д.

Я обычно просто использую CSV, иЯ нашел этого действительно замечательного читателя / писателя C # CSV: http://www.codeproject.com/Articles/86973/C-CSV-Reader-and-Writer

Но вы можете использовать все, что вам подходит.

...