私はC#で "Unblock Me"のようなゲームをやっています。 ボタンと配列をマップとして使用します。 lvl1配列はレベル1のボード/マップです。ブロック(ボタン)が動的に作成されてパネルに追加されるときに、色付けしたいと思います。レベルを完了すると、パネルをクリアしてボードを再描画する必要がありますが、今回はlvl2アレイからボード/マップを読み込む必要があります。だから問題は、swtichのループで動的に配列の名前を設定する方法ですか? コードは次のとおりです。1つのswtichケースで異なる配列を使うC#
int[,] lvl1 =
{
{1,1,2,3,3,4,0},
{0,0,2,0,5,4,0},
{6,0,99,99,5,4,89},
{6,0,7,7,8,8,0},
{9,10,0,11,12,12,0},
{9,10,0,11,13,13,0},
{0,0,0,0,0,0,0},
};
switch (lvl1[i, j])
{
case 1:
lvl1[i,j] = 1;
btn.BackColor = Color.Yellow;
break;
case 2:
lvl1[i, j] = 2;
btn.BackColor = Color.Cyan;
break;
case 3:
lvl1[i, j] = 3;
btn.BackColor = Color.ForestGreen;
break;
case 4:
lvl1[i, j] = 4;
btn.BackColor = Color.DeepSkyBlue;
break;
case 5:
lvl1[i, j] = 5;
btn.BackColor = Color.Violet;
break;
case 6:
lvl1[i, j] = 6;
btn.BackColor = Color.Orange;
break;
case 7:
lvl1[i, j] = 7;
btn.BackColor = Color.LimeGreen;
break;
case 8:
lvl1[i, j] = 8;
btn.BackColor = Color.Teal;
break;
case 9:
lvl1[i, j] = 9;
btn.BackColor = Color.Aqua;
break;
case 10:
lvl1[i, j] = 10;
btn.BackColor = Color.LightGoldenrodYellow;
break;
case 11:
lvl1[i, j] = 11;
btn.BackColor = Color.OrangeRed;
break;
}
はい。私はそれを試みた。 2つの引数でオーバーライドしないようなエラーが表示されましたか?そのようなもの –
あなたは私にcurrentlevelのタイプを教えてくれますか?それは文字列ですか?または...? –
@НямбаярА。答えに示されているように、それは 'int [、]'です。レベルと同じです。 –