2D(ブール値)配列のリストを作成したいと思います。私は空のリストブロックそれ自体を宣言し、ブロック構造と呼ばれる空の2Dブール配列を作成しました。また、メソッドブロックを作成しました。ここではブロック構造に別の値を与えてからブロックリストに追加します。C#のリストに2D配列を追加するには?
class TetrisBlock
{
public List<bool[,]> block;
public bool[,] blockStructure;
}
public Tetrisblock(Texture2D sprite)
{
blockTexture = sprite;
blockStructure = new bool[2, 2];
}
List<bool[,]> blocks()
{
blockStructure = new bool[,] // first 2D array
{
{ false, true},
{ false, false}
};
block.Add(blockStructure);
blockStructure = new bool[,] // second 2D array
{
{ true, true},
{ false, false}
};
block.Add(blockStructure);
return block;
}
public void draw (GameTime gameTime, SpriteBatch spriteBatch)
{
for (int x = 0; x < 2; x++)
{
for (int y = 0; y < 2; y++)
{
if (blok[1][x,y])
{
spriteBatch.Draw(sprite, new Vector2(blockTexture.Width*x, blockTexture.Height*y, Color.White)
}
}
}
}
私が手にエラーがリストブロックがnull値を持っていることを言います。何らかの理由で2D配列がリストに追加されません。誰かが解決策を知っていますか?
[NullReferenceExceptionとは何ですか? //stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-and-how-do-i-fix-it) –