#05 Программирование шахмат на C# - Генерация ходов I

00:00 Введение и начало работы • Начало программирования ходов шахматных фигур. • Закрытие вкладок с пользовательским интерфейсом для работы с логикой игры. • Добавление класса MoveType как общедоступного перечисления. 00:29 Перечисление типов ходов • Перечисление значений для каждого типа хода в игре. • Фокус на нормальных ходах, добавление типов для специальных ходов позже. • Упоминание о специальных ходах для пешек и их захвате. 01:31 Создание папки и базового класса • Добавление папки «Приёмы» для классов всех типов ходов. • Создание базового абстрактного класса «Приёмы». • Изменение пространства имён класса на «шахматная логика». 02:43 Структура хода • Все ходы начинаются с позиции типа «а». • У каждого хода есть две позиции: откуда и куда движется фигура. • Метод выполнения хода принимает доску в качестве параметра. 04:04 Класс для обычного перемещения • Создание класса, наследуемого от Move. • Свойства для позиций from и to. • Конструктор для приёма позиций. • Метод выполнения для перемещения фигуры. 07:06 Метод getMoves • Добавление абстрактного метода getMoves в базовый класс. • Параметры метода: текущая позиция фигуры и доска. • Возврат коллекции ходов, которые может сделать фигура. 08:24 Вспомогательный метод для поиска доступных позиций • Метод возвращает все доступные позиции в заданном направлении. • Алгоритм проверки позиций: проверка положения фигуры на расстоянии одного шага в заданном направлении. • Использование цикла для поиска доступных позиций. 12:40 Реализация для слона • Добавление статического массива направлений для диагональных ходов. • Реализация getMoves с использованием массива направлений. • Создание обычных ходов для каждой доступной позиции. 14:46 Реализация для ладьи • Добавление массива направлений для горизонтальных и вертикальных ходов. • Реализация getMoves аналогично слону. 16:01 Реализация для ферзя • Добавление массива направлений для горизонтальных, вертикальных и диагональных ходов. • Применение метода getMoves для ферзя. 16:50 Заключение • Генерация ходов для слона, ладьи и ферзя. • Анонс следующей части для пешки, короля и коня.

Иконка канала Ленинский Букварь
249 подписчиков
12+
8 просмотров
5 дней назад
12+
8 просмотров
5 дней назад

00:00 Введение и начало работы • Начало программирования ходов шахматных фигур. • Закрытие вкладок с пользовательским интерфейсом для работы с логикой игры. • Добавление класса MoveType как общедоступного перечисления. 00:29 Перечисление типов ходов • Перечисление значений для каждого типа хода в игре. • Фокус на нормальных ходах, добавление типов для специальных ходов позже. • Упоминание о специальных ходах для пешек и их захвате. 01:31 Создание папки и базового класса • Добавление папки «Приёмы» для классов всех типов ходов. • Создание базового абстрактного класса «Приёмы». • Изменение пространства имён класса на «шахматная логика». 02:43 Структура хода • Все ходы начинаются с позиции типа «а». • У каждого хода есть две позиции: откуда и куда движется фигура. • Метод выполнения хода принимает доску в качестве параметра. 04:04 Класс для обычного перемещения • Создание класса, наследуемого от Move. • Свойства для позиций from и to. • Конструктор для приёма позиций. • Метод выполнения для перемещения фигуры. 07:06 Метод getMoves • Добавление абстрактного метода getMoves в базовый класс. • Параметры метода: текущая позиция фигуры и доска. • Возврат коллекции ходов, которые может сделать фигура. 08:24 Вспомогательный метод для поиска доступных позиций • Метод возвращает все доступные позиции в заданном направлении. • Алгоритм проверки позиций: проверка положения фигуры на расстоянии одного шага в заданном направлении. • Использование цикла для поиска доступных позиций. 12:40 Реализация для слона • Добавление статического массива направлений для диагональных ходов. • Реализация getMoves с использованием массива направлений. • Создание обычных ходов для каждой доступной позиции. 14:46 Реализация для ладьи • Добавление массива направлений для горизонтальных и вертикальных ходов. • Реализация getMoves аналогично слону. 16:01 Реализация для ферзя • Добавление массива направлений для горизонтальных, вертикальных и диагональных ходов. • Применение метода getMoves для ферзя. 16:50 Заключение • Генерация ходов для слона, ладьи и ферзя. • Анонс следующей части для пешки, короля и коня.

, чтобы оставлять комментарии