Похожее видео
00:00 Введение в рокировку Рокировка это единственный способ переместить две фигуры за один ход. В рокировке участвуют король и ладья обе фигуры должны находиться на своих начальных позициях. Существует два вида рокировки: на королевский и ферзевый фланг. 01:00 Правила рокировки Король не должен был ходить ранее. Ладья с которой делается рокировка тоже не должна была ходить. Все клетки между королём и ладьёй должны быть свободны. Рокировка невозможна если король находится под шахом. Король не может проходить через поле находящееся под шахом или вставать на него. 02:33 Создание класса для хода рокировкой Класс обрабатывает рокировку на королевский и ферзевый фланг. Добавляются обязательные свойства: тип хода позиция от и позиция до. Реализуются переменные: направление движения короля и позиции ладей от и до. 04:07 Конструктор и реализация метода execute Конструктор принимает тип хода и позицию короля. Для длинной рокировки король движется вправо или на восток ладья переходит с седьмой вертикали на пятую. Для короткой рокировки король движется влево или на запад ладья переходит с нулевой вертикали на третью. Метод execute перемещает короля и ладью с помощью двух обычных ходов. 07:40 Проверка условий рокировки в классе King Метод is unmoved rook проверяет не ходила ли ладья. Метод all проверяет пусты ли позиции между королём и ладьёй. Методы can castle и can castle.queen side проверяют возможность рокировки на королевский и ферзевый фланг соответственно. 14:21 Переопределение метода isLegal Метод isLegal переопределяется для проверки не ставит ли ход короля под шах. Создаётся копия доски и король перемещается на один шаг в направлении хода. Проверяется не оказывается ли король под шахом на следующих двух полях. 17:27 Тестирование рокировки Тестируются различные ситуации: рокировка возможна если король и ладья не ходили между ними нет фигур король не находится под шахом. Подтверждается что все правила рокировки работают корректно. 19:05 Заключение Рокировка успешно реализована. В следующей части будет рассмотрено взятие на проходе.,
Похожее видео