Разработка компьютерной игры "Змейка"
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
µт какая клавиша была нажата, далее при помощи условного оператора
определяется какую из вкладок меню перерисовать другим цветом, если была нажата клавиша курсора "вниз", то нижний пункт меню перерисуется другим цветом, а тот что был раньше - станет невыделенным.
- Процедура Izm
Эта процедура переформировывает массив, в котором содержатся координаты "частей" змейки, это осуществляется следующим образом: первому элементу массива присваиваются новые координаты, а всем остальным - координаты предыдущего элемента (x [3] получит значение x [2], а x [2] - x [1]).
- Процедура Spravka
Эта процедура обеспечивает работу с меню "Справка". В основе этой процедуры лежит считывание и вывод на экран типизированного файла.
- Процедура Stolknovenie
Через эту процедуру программа проверяет, не столкнулась ли змейка с границей поля или сама с собой. Это осуществляется при помощи условного оператора if. then. else, который сверяет координаты головы змейки с координатами границ игрового поля и "хвоста змейки".
- Процедура Resultat
Эта процедура считывает с файлов данные о рекордах, составляет из них массив, элементами которого являются записи с 2 полями (Имя и Результат), если был набран результат выше 10 места в списке рейтинга, присваивает 10 элементу массива данные содержащие имя игрока и набранный результат. Далее сортирует этот массив методом прямого обмена и записывает отсортированный массив в файл.
6. Разработка тестовых примеров
На основе разработанных решаемых задач можно выделить тестовые примеры необходимые для проверки работоспособности игры. Если по прохождении всех пунктов тестирования будут получены удовлетворительные результаты, значит можно будет заявить о том, что программа работает верно.
1. После запуска игры на экране должно появиться главное меню со вкладками "Играть", "Рекорды", "Справка", "Выход".
2. Выбрав меню "Рекорды", на экране должна появиться таблица результатов такого формата:
3. Выбрав меню "Справка", на экране появится меню справки со вкладками
"Правила игры", "Разработчик" и "Назад". выбирая каждую вкладку, на экране должна будет появиться соответствующая информация.
4. Выбрав меню "Играть", на экране появится меню выбора уровня сложности с 3 вариантами сложности "Глист", "Змея", "Анаконда". После выбора уровня сложности появится игровое поле и начнется игра. Справа от игрового поля будет находиться информация, отображающая набранный счет, длину змейки в знаках и тройка лидеров.
5. После столкновения на экране появится надпись об окончании игры и, в случае если был набран результат выше 10 места в списке рейтинга, вам предложат ввести свое имя для сохранения результата, в противном случае вам тоже предложат ввести ваше имя, но результат сохранен не будет.
6. После того как пользователь введет имя и нажмет ENTER появится снова главное меню. Программа будет работать до тех пор, пока не будет выбрана вкладка меню "Выход".
7. Разработка программы
При написании программы я использовал модули Паскаля Crt.
Crt содержит константы, переменные и подпрограммы, предназначенные для работы с консолью. В отличие от стандартного ввода-вывода, когда он осуществляется через операционную систему, подпрограммы модуля работают с BIOS, и даже непосредственно с видеопамятью. При работе с этим модулем экран разбивается на отдельные строки, а каждая строка - на отдельные позиции, в каждую из которых можно поместить один символ. Таким образом, весь экран разбивается на отдельные неделимые прямоугольные элементы. Для каждого элемента можно задать цвет фона и цвет символа. Этот модуль применяется тогда, когда нужно задать определенные цвета фона и символов, размещать данные на экране при помощи перемещения курсора на определенные заданные позиции, удалять символы с экрана, создавать окна для помощи, узнавать текущие координаты курсора, задерживать выполнение программы.
Именно этими принципами я руководствовался при разработке меню и самого процесса игры.
Также в моей программе я использовал типизированные файлы. Так информация о разработчике хранится в файле под названием Avtor. pas, правила игры хранятся в файле Pravila. pas. Таблица рекордов хранится в файле Itog. txt. Для того чтобы работать с рекордами (сравнивать результаты и сортировать таблицу результатов) мне потребовалось отдельный файл в котором хранятся только рекорды (Rec. dat), и файл в котором хранятся имена пользователей (Imena. txt).
В программе широко использовались такие функции как Readkey (), GotoXY, а также циклы и оператор условия.
8. Тестирование и анализ результатов
При тестировании программы был произведен подробный анализ каждой подпрограммы.
При запуске программы появилось главное меню со вкладками "Играть", "Рекорды", "Справка", "Выход" (Рис.8.1).
Рис. 8.1 - Главное меню
Выбираем меню "Рекорды". Перед нами появляется 10 лучших игроков с набранным ими результатом (Рис.8.2).
Рис. 8.2 - Вкладка "Рекорды"
После нажатия любой кнопки мы возвращаемся в главное меню. Выбираем меню "Справка". Перед нами появляется Меню 2-го уровня - "Справка" со вкладками "Правила игры", "Разработчик" и "Назад" (Рис.8.3).
Рис. 8.3 - Меню "Справк?/p>