f (x +26, y +1.4); f (x +23, y - 0.5); ();
}
/ / --------- MENU ------------- Tmenu :: show () {
x=- 49;=49; (int i=1; i <= 2500; i + +) / / малює 2500 блоків рандомних кольору на тлі
{= (rand ()% 10) - 1; (); +=2; (x> 50) {x=- 49; y-= 2;}
}
_RGBImageRec * image;// Створюємо бітмап=auxDIBImageLoad («name.bmp»);// Полгружаем в нього картинку
glRasterPos2d (- 30,22);// Вибираємо місце для отрисовки (координати лівого нижнього кута) (GL_UNPACK_ALIGNMENT, 1); (1.0, 1.0);// Утсанавліваем масштаб
glDrawPixels (image-> sizeX, image-> sizeY, GL_RGB, GL_UNSIGNED_BYTE, image-> data);// Отрісовуем масив пікселів=auxDIBImageLoad («controls.bmp»); d (- 46, - 46); (image-> sizeX, image-> sizeY, GL_RGB, GL_UNSIGNED_BYTE, image-> data);= auxDIBImageLoad («menu.bmp»); d (- 26, - 30); (image-> sizeX, image-> sizeY, GL_RGB, GL_UNSIGNED_BYTE, image-> data);
_select (true);
}
Tmenu :: draw_select (bool _selection)
{= _selection; (selection) / / малюємо підкреслення в меню
{true: _color (- 2); (GL_QUADS); f (- 11, - 18); f (- 11, - 19); f (9, - 19); f (9 , - 18); ();
_color (1); (GL_QUADS); f (- 20, - 5); f (- 20, - 6); f (20, - 6); f (20, - 5) ; ();;
false: _color (- 2); (GL_QUADS); f (- 20, - 5); f (- 20, - 6); f (20, - 6); f (20,- 5); ();
_color (1); (GL_QUADS); f (- 11, - 18); f (- 11, - 19); f (9, - 19); f (9, - 18) ; ();;
} ();
}
Зміст файлу 1.cpp:
# include «classes.h» gtc=GetTickCount (); x, y=- 45, m=bs / 2, ey=ortho + bs * 3, ex=((gtc% ( exrand * 66 +1)) / 66)-exrand / 2, wy=1.5 * ortho; wpos=gtc% 2; godmode=false; score_point_float=0; score_point_char [30]; gr (roadwidth, m); player (x, - 45, 1, false, false);
car enemy (ex, ey, 1, false, false);// Инициализируем об'єкти класів з началним становищем
wall wa (wy, wpos, 9); score; menu; gameover=false; enemycrash=false; KeyDown [256]={false};// Масив для натиснутих кнопочекfirststart=0; _RGBImageRec * control;// Бітмап для картинки
void display () / / основна функція отрисовки відбувається
{(firststart <5) / / перші п'ять отрісовок чистимо екран, дозволяє ізбравіться від деяких глюків на повільних комп'ютерам
{(GL_COLOR_BUFFER_BIT); + +;
}. ~ wall ();. ~ car ();. ~ car ();// Зарісовуем об'єкти. ~ Grass ();. Hidetext (); wa (wy, wpos, 9);// Малюємо стенуgr (roadwidth, m);// Травуenemy (ex, ey, 7, enemycrash, false);// Ворожу машінку.drawtext (score_point_char, 1, - 45, 45);// Виводимо очкіplayer (x, y, playercolor, gameover, godmode);// Малюємо нашу машинку
glFlush ();// І нарешті виводимо все з буфера на екран
} display_over () / / функція отрисовки при прогрише
{_over o (0, 0, 1);// Малюємо напис гейм овер. ~ Game_over ();// Просто використовуємо деструктор для економії ресурсів
glRasterPos2d (- 46, - 46);// Малюємо ...