Курсовая работа: Игровая программа
В данной программе реализован механизм зацикливания на событии таймера. Когда происходит это событие специальный алгоритм просматривает состояние клавиатуры и если нажата клавиша на которую у него прописано действие происходит определённые вычисления.
После выполнения процедуры таймера автоматически вызывается процедура перерисовки окна OnPaint. В этой процедуре основываясь на изменённых и подсчитанных данных в процедуре таймера прорисовываются по соответствующим координатам текстуры. Так происходит взаимодействие пользователя с программой. Так как событие таймера происходит достаточно часто примерно 100 раз в секунду то прорисовка окна и реакция программы достаточно высока. Конечно здесь не маловажную роль играет процессор т. к. чем выше его частота тем чаще и быстрее будет происходить событие таймера. 4. Документирование4.1 Инструкция пользователя по пп Так как в моём проекте речь идет про игру то я опишу основные функциональные клавиши управления. Клавиши действующие в меню: · «Стрелка вверх» и «Стрелка вниз» передвижение курсора выделения вверх и вниз; · «Esc» выход из игры и возвращение в главное меню; · «Стрелка вправо» и «Стрелка влево» действуют если находишься в подменю выбора машины; при нажатии «Esc» выбирается та машина которая была показана; · «Enter» используется для входа в подменю и начала игры; | ||||||
КП. 2203. 04. 35. ПЗ | Лист | |||||
13 | ||||||
Изм | Лист | № докум | Подп. | Дата |
Клавиши действующие в игре:· «Стрелка вверх» и «Стрелка вниз» разгон и торможение автомобиля; · «Стрелка влево» и «Стрелка вправо» поворот налево и поворот направо; · «N» (англ.) используется для временного ускорения; · «P» или «Pause» пауза в игре, при повторном нажатии пауза отключается; · «Esc» возвращение в главное меню; Клавиши действующие и в меню и в игре:· «K» (англ.) используется для отображения координат нахождения курсора мыши на форме, результат выводится в заголовок формы;· «F» (англ.) используется для отображения количества кадров в секунду, результат выводится в заголовок формы;· «A» (англ.) используется для проверки поддержки OpenGL, если поддерживается то в заголовке формы будет написано версия OpenGL и видео карта через которую осуществляется вывод; | ||||||
КП. 2203. 04. 35. ПЗ | Лист | |||||
14 | ||||||
Изм | Лист | № докум | Подп. | Дата |
5. тестирование5.1 тестирование функций пп Выполнение функций в данном проекте идет отличное так как небольшой сбой бал бы сразу замечен при работе программы. 5.2 тестирование надежности Функция по считыванию клавиш продуманна таким образом что только реагирует на те клавиши на которые есть код выполнения, остальные игнорируются. | ||||||
КП. 2203. 04. 35. ПЗ | Лист | |||||
15 | ||||||
Изм | Лист | № докум | Подп. | Дата |
приложение
Событие таймера:
procedure FNTimeCallBack(uTimerID, uMessage: UINT;dwUser, dw1, dw2: DWORD) stdcall;
var
word:DWORD;
begin
Inc(CountTickTimer);
if (((PressedKey[19]=true)or
(PressedKey[80]=true))and(CountTickTimer>100))and(CountFuel>0) then
if(not Pause) then begin
Pause:=true;
CountTickTimer:=0;