と考え直して、必要な処理を整理してみました。
・空きマスの位置確認
・押したピースの位置確認
・押したピースが空きマスと隣接しているか判断
・ピースを移動させる
・移動後のそれぞれのポジションを更新する
うわー(*。*)
結構処理を同時に行わないとダメなようです。
全てが一括で処理できる魔法のコマンドないですかね~
考えるのが大変だわ(;^_^A
ま、都合よく行かないのがプログラムと人生…
頑張ってみます。
まず、位置情報を取得しないと始まらないので、
位置情報取得のメソッドを考えてみたいと思います。
空きマスとピースの位置情報は、Pos[0~15]に格納されているので、
この中から押したピースの位置と0番を取り出さないとダメみたいです。
押したピースの番号はPuPiece(int BtNo)で取得して
押したピースの位置をAddP
0番の位置をAdd0
に取り出してみます。
private int Add0;
private int AddP;
public void PuPiece(int BtNo)
{
for (int i = 0; i < 16; i++)
{
if (Pos[i] == 0)
{
Add0 = i;
}
if (Pos[i] == BtNo)
{
AddP = i;
}
}
}
この記事へのコメント