我正在尝试获取游戏级别单元格的位置并将它们映射到二维数组。我想这样做,这样我就可以使每个地面单元(而不是背景单元)与我的玩家角色发生碰撞。
以下是某人为我创建的当前代码:
int tileSize = 20;
int screenSizeInTiles = 30;
// initializing multidimensional array of points
var tilePositions = new System.Drawing.Point[screenSizeInTiles, screenSizeInTiles];
for (int x = 0; x < screenSizeInTiles; x++)
{
for (int y = 0; y < screenSizeInTiles; y++)
{
tilePositions[x, y] = new System.Drawing.Point(x * tileSize, y * tileSize);
}
}
可以在这里找到:如何使用锯齿状数组来记录这些图块的 x 和 y 轴? 以及对我正在尝试做的事情的更好描述。
所以,当我运行这段代码时,我在 tilePositions 中得到一个空数组。嗯,x 和 y 值都在那里,但值都是 0。这些值应该是单元格的位置数据。
下面是 tilesPosition 数组的样子:
不过,我仍在研究碰撞代码……我需要先让它工作,然后才能弄清楚那部分。
非常感谢大家,你们帮了大忙!我仍然是一个初学者,但我正在夜以继日地工作以使自己成为一个更好的程序员。