.NET 4.x Загрузка карты для игры змейка из текста - C#
Формулировка задачи:
Здравствуйте, короче сделал что б карта считывалась из файла , но почему то не хочет отображать одну стену ( изначально ваще косо рисовало, но я ее выпрямил ). Вообщем вот код .... Помогите христа ради. Я понятия не имею что тут .
вот все что в txt файле.
111111111111111111111111111111
100000000000000000000000000001
100000000000000000001100000001
100000000000000000001100000001
101111100000000000001100000001
100000000000000000001100000001
100000000000000000001100000001
100000000000000000000000000001
100000000000000000000000000001
100000000000000000000000000001
100000000000000000000000000001
100000000000000000000000000001
100000000000000000001100000001
100000000000000000001100000001
101111100000000000001100000001
100000000000000000001100000001
100000000000000000001100000001
100000001000000000000000000001
100000000000000000000000000001
111111111111111111111111111111
Скрин того ............ которое отображается в итоге ( как видим - в левом углу, почему то, нет боковой стены )
Листинг программы
- // игровое поле
- private int[,] Field = new int[MR + 3, MC + 3];
- private string[] Map = System.IO.File.ReadAllText(@"C:\Users\Олег\Desktop\WriteLines2.txt").Split(new[] { ' ' });
- private void MapLoad()
- {
- string buf = Map[0];
- int i = 1, j = 1;
- for (int k = 0; k < buf.Length; k++)
- if (char.IsNumber(buf[k]))
- if (j <= MC)
- {
- if (j == 2)
- {
- j = 1;
- Field[i, j] = Convert.ToInt16(buf[k]);
- j++;
- Field[i, j] = Convert.ToInt16(buf[k]);
- j++;
- }
- else
- {
- Field[i, j] = Convert.ToInt16(buf[k]);
- j++;
- }
- }
- else
- if (i < MR)
- {
- i++;
- j = 2;
- }
- }
- // рисует поле
- private void showField()
- {
- for (int row = 0; row <= MR; row++)
- for (int col = 0; col <= MC; col++)
- this.cell(row, col);
- }
- // рисует клетку
- private void cell(int row, int col)
- {
- int x, y;// координаты левого верхнего угла клетки
- x = (col - 1) * W + 1;
- y = (row - 1) * H + 1;
- //цвет клетки - серые
- switch(Field[row, col])
- {
- case 0: g.FillRectangle(Brushes.Yellow, x - 1, y - 1, W, H); break;
- case 48: g.FillRectangle(Brushes.Blue, x - 1, y - 1, W, H); break;
- case 49: g.FillRectangle(Brushes.Black, x - 1, y - 1, W, H); break;
- default: g.FillRectangle(SystemBrushes.ControlLight, x - 1, y - 1, W, H); break;
- }
- // рисуем границу клетки
- g.DrawRectangle(Pens.Black, x - 1, y - 1, W, H);
- }
Решение задачи: «.NET 4.x Загрузка карты для игры змейка из текста»
textual
Листинг программы
- int i = 1, j = 1;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д