我正在尝试创建一个2D字符数组以容纳一个字符网格,这将用作2D地形游戏的'地图'。C#IndexOutOfRange数组异常
我得到一个:
IndexOutOfRange例外
..和不明白为什么。我已经在调试模式下遍历代码,仍然无法看到问题。
它通过代码罚款,直到它击中我的网格的右上边界X = 25
和Y = 1
。
我有_gameWidth
和_gameHeight
创建如下的主要外但仍在类中:
static int _gameWidth = 25;
static int _gameHeight = 15;
以下是失败,尝试生成并填充网格时的代码。它未能在这一点上:
else if (x == _gameWidth && y == 1)
_grid[x, y] = '╕';
static void GenerateGrid()
{
for (int y = 1; y <= _gameHeight; y++)
{
for (int x = 1; x <= _gameWidth; x++)
{
if (x == 1 && y == 1)
_grid[x, y] = '╒';
else if (x == _gameWidth && y == _gameHeight)
_grid[x, y] = '╛';
else if (x == _gameWidth && y == 1)
_grid[x, y] = '╕';
else if (x == 1 && y == _gameHeight)
_grid[x, y] = '╘';
else if ((x != 1 && y == _gameHeight) || (x != _gameWidth && y == 1))
_grid[x, y] = '═';
else if ((x == 1 && y > 1 && y < _gameHeight) || (x == _gameWidth && y > 1 && y < _gameHeight))
_grid[x, y] = '│';
else
_grid[x, y] = 'x';
}
Console.WriteLine("");
}
}
我们错过了'grid [,]' –
问题的解决。感谢您的快速回复。 – Tinderlog