Я относительно новичок в C#, и я создаю базовую игру квеста для подземелий старой школы, чтобы помочь мне справиться с визуальной студией и окнами.C# использование массивов в качестве карты
Я хотел бы использовать массив объектов в качестве карты, которую я могу перемещать между (пожалуйста, дайте мне знать, если есть лучший способ). (редактирование для ясности) Так что, если я начал в currentroom = maparray [0,1], нажав левую бы изменить его currentroom = maparray [0,0]
Вот мой код массива:
public object area_init()
{Area hall = new Area("Hall", "big hall", "null", false, 1, 2, false);
Area room = new Area("Room", "room", "null", false, 1, 2, false);
Area[,] maparray = { { hall, room, hall },
{ hall,hall,room},
{ hall,room,room}
};
object[,] maparray = new object[3,3];
я тогда хотел, чтобы обратиться к комнате, я был в настоящее время, как это (я знаю, что это неправильно):
txtbox_ticker.AppendText("You are in a " + maparray[0,1]);
А затем обновить переменную «» currentroom сказать, в какой комнате я нахожусь в Могли бы. кто-нибудь скажет мне, как это сделать, и где я ошибаюсь?
A [Словарь] (https://msdn.microsoft.com/en-us/library/xfhwa508 (v = vs.110) .aspx) будет хорошо работать здесь. 'Словарь myDungeon'. –
Может ли словарь не позволять мне перемещаться в 2D-пространстве? Моя причина использования массива заключается в том, что строки и столбцы сортируются как основная карта. Если ваш текущий номер был maparray [0,1], нажатие левой кнопки приведет вас к maparray [0,0] и так далее. – Retro
Каждая область может иметь 'string left =" имя комнаты слева "как свойство. Затем вы можете получить новую область, вызвав 'myDungeon [currentArea.left]'. То, что вам действительно нужно, - это более связанная структура графика. –