# include
# include
# define N 4
# include "graphics.h"
# include "gameclass.h"
# include "menufunc.h" ()
{m; gd = DETECT, gm; (& gd, & gm, "");. StartGame (); (); 0;
}
MenuFunc.h
// Структура для зберігання імені та окулярів поточного гравця
struct namescore
{char name [16]; score;
} ns;
// Структура, що служить для роботи з збереженнями.
struct savegame
{int x [N +2]; y [N +2]; n, time, score, step;
} sg;
// Клас меню, що містить в собі всі функції програми
class Menu
{protected:
char savepath [23] ;//змінна, яка дозволяє поміщати файли збереження в папку./save/
public: () {}
~ Menu () {} MenuGame (void);// Головне меню ExitOutGame (void);// Вікно підтвердження виходу з гри
void MenuEnterKey (int);// Функція, що відповідає за натискання "Enter" у Головному меню
void StartGame (void);// Заставка
void InputName (void);// Функція введення імені
void Score (void);// Меню "Таблиця результатів"
void About (void);// Меню "Про гру" Game (int);// Найголовніша функція, що здійснює ігровий процес
void Pause (void);// Меню "Паузи" AddScore (void);// Функція запису результату у файл рекордів
void PrintScore (void);// Функція друку рекордів у текстовий файл
}; Menu :: StartGame (void)
{setcolor (3); (5, HORIZ_DIR, 16); (400,450, "Єлохіна Олексій, група І512"); (GREEN); (DEFAULT_FONT, HORIZ_DIR, 16); (230,300, "[Натисніть будь-яку клавішу]"); (DEFAULT_FONT, HORIZ_DIR, 100); (1,0); key = 0; i = 180;
// Невелика анімація появи заставки на початку гри
while (key == 0 && i> 80)
{key = getch (); (GREEN); (100,60, "пастка"); (0, 80, 640, i); -; (DEFAULT_FONT, HORIZ_DIR, 100); (1,0); (50);
} (100,60, "пастка"); (DEFAULT_FONT, HORIZ_DIR, 16); (230,300, "[Натисніть будь-яку клавішу]"); (230,300,430,320); ();//Виклик функції введення імені гравця
} Menu :: MenuGame (void)
{* fin; x0 = 280, y0 = 220, i = 0, key = 0, pos = 1, flagexit = 1, p = 1; ();
fin = fopen ("temp.dat", "rb");// Відкриваємо файл, що містить інформацію поточного профілю
fread (& ns, sizeof (ns), 1, fin);// Отримуємо з нього ...