Игра «Шашки». Разрабатываемое приложение представляет собой программную реализацию логической игры “Шашки”. Необходимо реализовать подмножество правил классических шашек на доске 8x8.
Описание программы:
Программа представляет собой приложение Windows Forms, написанное на языке C#, которое реализует игру "Шашки"
Требования:
- начало игры на чистом поле, сброс предыдущей игры;
- игра против компьютер;
- контроль правильности ходов игроков;
- определение конца игры, отслеживание патовых ситуаций;
- индикацию текущего счета;
Фрагмент кода из программы:
//нахождение возможных ходов у шашки компьютера public void EShashkaTurn(Checkers[,] chs, List<Move> Moves1, List<Move> Moves2) { if (id == -3)//заполнение списков с ходами, если шашка - дамка { DamkaTurn(chs, Moves1, Moves2, "computer"); } else//заполнение списков с ходами, если шашка - не дамка { if ((i > 1) && (j > 1) && (chs[i - 2, j - 2].id == 0) && (chs[i - 1, j - 1].id == 1 || chs[i - 1, j - 1].id == 3)) { Moves1.Add(new Move(chs[i, j], chs[i - 2, j - 2], chs[i - 1, j - 1])); } if ((i > 1) && (j < 6) && (chs[i - 2, j + 2].id == 0) && (chs[i - 1, j + 1].id == 1 || chs[i - 1, j + 1].id == 3)) { Moves1.Add(new Move(chs[i, j], chs[i - 2, j + 2], chs[i - 1, j + 1])); } if ((i < 6) && (j > 1) && (chs[i + 2, j - 2].id == 0) && (chs[i + 1, j - 1].id == 1 || chs[i + 1, j - 1].id == 3)) { Moves1.Add(new Move(chs[i, j], chs[i + 2, j - 2], chs[i + 1, j - 1])); } if ((i < 6) && (j < 6) && (chs[i + 2, j + 2].id == 0) && (chs[i + 1, j + 1].id == 1 || chs[i + 1, j + 1].id == 3)) { Moves1.Add(new Move(chs[i, j], chs[i + 2, j + 2], chs[i + 1, j + 1])); } if ((i > 0) && (j > 0) && (chs[i - 1, j - 1].id == 0)) { Moves2.Add(new Move(chs[i, j], chs[i - 1, j - 1])); } if ((i < 7) && (j > 0) && (chs[i + 1, j - 1].id == 0)) { Moves2.Add(new Move(chs[i, j], chs[i + 1, j - 1])); } } }
Содержание работы:
- Архив с исходным кодом программы
Скриншоты архивов проекта:
Видео демонстрация:
Обзор работы программы - https://youtu.be/irIYY24jjhI
Imvaze