从数组中加载一个级别,XNA 4,C#
本文关键字:XNA 一个 数组 加载 | 更新日期: 2023-09-27 18:25:57
嘿,我想知道如何在XNA4中编写一种从2d数组加载和绘制2d级别的方法。
这是我迄今为止所拥有的。
我正在像这个一样加载我的阵列
mapArray = new int[,]
{
{0, 0, 0, 0},
{2, 0, 0, 2},
{0, 0, 0, 0},
{1, 1, 1, 1}
};
然后我陷入了困境,我似乎不知道如何绘制数组,我知道我需要使用for循环来检查数组,但这是我第一次使用2d数组。
有人能详细解释我将如何画这个吗?
感谢
-Josh
您可以使用类似的方法来检查每个插槽中的数字:(注意:这是未经测试的代码……但代码的骨架来自此处的教程。)
using System;
class Program
{
static void Main()
{
mapArray = new int[,]
{
{0, 0, 0, 0},
{2, 0, 0, 2},
{0, 0, 0, 0},
{1, 1, 1, 1}
};
// Get upper bounds for the mapArray.
int bound0 = mapArray.GetUpperBound(0);
int bound1 = mapArray.GetUpperBound(1);
// Use for-loops to iterate over the mapArray elements.
for (int i=0; i<=bound0; i++)
{
for (int j=0; j<=bound1; j++)
{
int value = mapArray[i, j];
Console.WriteLine(value);
}
}
}
}
基本上,这个代码:
- 初始化
mapArray
- 检查
mapArray
的两个维度的端点(边界) - 循环通过
mapArray
的第一个维度 - 然后,当仍然循环通过第一维度时,还有第二个循环通过
mapArray
的第二维度 - 在这两个循环的中间,可以找到您的值:
int value = mapArray[i, j];
以下是C#的2D数组循环的参考。这里引用了C#中的数组。希望这能有所帮助!