Пишу игру королевский квадрат.Имеется двумерный массив лейблов 3*3. Подскажите с алгоритмом как лучше сделать. Нужен алгоритм,чтоб при клике на ячейке квадрата(Label) он определял можно ли записать в неё букву(Если рядом есть квадрат с буквой то можно если нету то нельзя). Пробовал через циклы,но тут он до ума не доведен да и мне кажется не лучший это способ.
| Код | private void Label_click(object sender, EventArgs e) { int imin,imax,jmin,jmax; Label lclick = (Label)sender; Point n =(Point)lclick.Tag; int x = n.X; int y = n.Y; for (int i = 0; i < 5; i++) for (int j = 0; j < 5; j++) if (Royals[i, j].Text != String.Empty) IsEmpty[i, j] = false; if (!IsEmpty[x, y]) textBox5.Text = "Uncorrect"; else { if (x > 0) imin = x - 1; else imin = x; if (y > 0) jmin = y - 1; else jmin = y; if (x < 4) imax = x + 1; else imax = x; if (y < 4) jmax = y + 1; else jmax = y; for (int i = imin; i <= imax; i++) for (int j = jmin; j <=jmax; j++) if (!IsEmpty[i, j]) { textBox5.Text = "Correct"; Royals[i, j].Text = "X"; goto Finish; } else textBox5.Text = "XX"; } Finish: textBox5.Text = "XXX"; }
|
|