public void Move(int row, int col) //клик по полю { if (!myTurn) //ничего не делаем, если не наш ход { return; } if (figureChosen) //если фигурка уже выбрана { if (data[row, col] != null && data[row, col].white == isWhite) //клик по другой своей фигурке, выбираем ее { figureChosen = true; fromX = col; fromY = row; return; } if (strategy.IsStepCorrect(this.data, fromX, fromY, col, row, isWhite))//проверка на корректность хода { isKingChecked = false; strategy = new FormControlNormalStrategy();// если королю был объявлен шах, то ход был коректным и королю терь норм myTurn = false; moveMade(new Command(this.data, fromX, fromY, col, row)); //отправляем сигнал, что ход сделан } figureChosen = false; } else //выбираем фигурку, на которую мы кликнули { if (data[row, col] != null && data[row, col].white == isWhite) { figureChosen = true; fromX = col; fromY = row; } } }