私が作成しているゲームには、XML ファイルを使用して作成されたレベルがあります。レベルはネストされた for ループで描画されます。別の入れ子になった for ループを作成して、各タイルの位置を取得し、それをギザギザの配列に割り当てようとしています。これを行いたいので、各タイルの衝突検出を行うことができます。
以下のサンプル レベルの図の各タイルは 20x20 ピクセルで、30x30 タイルで、画面解像度は 600x600 です。レベルはフリー ソフトウェアの Realm Factory で作成されましたが、これにはドキュメントがなく、実際のサポートもありません... しかし、currentLevel.Rows はここでは 30 に等しくなり、currentLevel.Columns についても同じです。
以下は、これまでに作成しようとしたものですが、それほど多くはありません。どんなに頑張っても、私の脳はギザギザの配列を理解することを拒否します。作成方法もわかりません!
int a = 0;
int b = 0;
int x = 0;
int y = 0;
int[,] size = new int[currentLevel.Rows, currentLevel.Columns]'
int[,] pos = new int[600,600];
int[] tiles = new int[600];
for (a = 0; a < 600; a += 20, x++)
{
for (b = 0; b < 600; b += 20, y++)
{
size[x][y] = ;
}
}
tiles[x,y] に割り当てたいのは各タイルの X と Y の位置なので、各タイルにコリジョンを追加できます。
私を助けてくれる人に感謝します。プログラミングは大好きですが、数学と視空間スキルは苦手です...