О проекте:
Игра "Тетрис", написана на языке C# 8.0 в Microsoft Visual Studio 2019 (Рабочая среда NET Framework 4.8). Проект реализован в виде WinForm компонента.
В исходном коде присутствуют комментарии к методам и некоторым участкам кода.
Возможно использование в рамках курсового проекта по темам, касающихся:
- Разработка приложения с использованием синтаксических особенностей языка C# 8.0.
- Создание собственного компонента для WinForm приложения.
- Работа с графическим интерфейсом GDI+ средствами стандартной библиотеки System.Drawing.
- Обучение базовым методам работы с библиотекой LINQ
Архив содержит:
- Исходный код (TetrisProject.sln)
- Скомпилированную библиотеку (Release\TetrisGame.dll)
- Скомпилированный файл игры (Release\TetrisDemo.exe)
Список классов проекта:
- TetrisGame.cs - главный класс компонента. Обрабатывает действия игрока (нажатие клавиш, клики мышью), реализует основную логику, осуществляет отрисовку сцены.
- Figure.cs - класс фигуры. Включает в себя конструктор, создающий фигуру со случайной формой и внешним видом, а также логику смещений (влево, вниз, вправо) и поворота (на 90° по часовой стрелке) с проверкой столкновений.
- Cube.cs - класс куба (блока) игрового поля. Содержит позицию относительно позиции фигуры и связывает графическое изображение блока с его положением в шаблоне фигуры.
- GameResource.cs - класс, реализующий загрузку ресурсов (изображений, шрифтов) и последующий доступ к ним.
- GameSettings.cs - класс, содержащий основные настройки игры: размеры объектов, положениние объектов сцене, размеры шрифтов, текстовая информация, массив фигур с шаблонами.
Список вспомогательных типов перечислений:
- GameSizeType.cs - тип масштабирования сцены.
- GameStateType.cs - текущее состояние игры.
- MoveVectorType.cs - вектор смещения фигуры.
deloo