Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Методички » Інженерна та комп'ютерна графіка

Реферат Інженерна та комп'ютерна графіка





NormalBall * nb = new NormalBall; * bb = new BadBall; * c = new Catch;

char time [3], score [3], level [2];// Рядкові змінні, для відображення у "інформаційній зоні"

fin = fopen ("temp.dat", "rb") ;//Зчитування даних про поточний профілі

fread (& ns, sizeof (ns), 1, fin); (fin); _t t2, t1; 1 = clock () ;//Час початку гри

if (g! = 0)// перевірка на "нова гра" або "продовжити"

{save = fopen (savepath, "rb") ;//Продовжити, завантаження збереження

fread (& sg, sizeof (sg), 1, save); = sg.time; = sg.n; = sg.score; = sg.time; = sg.step; (save);

}

else// Нова гра, присвоєння "Звичайних" значень

{for (i = 0; i <= n-1; i + +)

{sg.x [i] = 20 + rand ()% 620;. y [i] = 0;

}. x [5] = 20 + rand ()% 620;. y [5] = 0;. x [N] = 320;. y [N] = 400; = 60; = 0;

} (1, GREEN);// Мертва зона (0,401,640,420);

// Інформаційна зона (1, WHITE); (0,420,640,480); (DEFAULT_FONT, HORIZ_DIR, - Пастка вліво. "); (300,440," -> - Пастка вправо. "); p> outtextxy (300,460, "Esc - Пауза, вихід в меню.");

setcolor (5);

outtextxy (150,440, ns.name);

// В принципі, гра починається з цього моменту, отрисовка об'єктів у початкових положеннях

for

{for (i = 0; i <= n-1; i + +)// Ховаємо всі об'єкти> hide (sg.x [i], sg.y [i]);> hide (sg.x [ 5], sg.y [5]); (st)// "тимчасова" перевірка

{

case 45: {step = 2 ;//швидкість

n = N-1;// кількість куль

break;

} 30: {step = 4 ;//--/-- = N-2;// --/--;

} 15: {step = 6 ;//--/-- = N-3;// --/--;

}

case 0: {flag = 1;// Кінець гри

}

}

// Запис значень в структуру для здійснення збережень

sg.n = n;. time = st;. score = sn;. step = step; = getch (); (key)

{37: {if (sg.x [N]! = 20)// Пастка вліво

{c-> hide (sg.x [N], sg.y [N]);. x [N] - = 20;> show (sg.x [N], sg.y [N ]);

};

} 39: {if (sg.x [N]! = 620)// Пастка вправо

{c-> hide (sg.x [N], sg.y [N]);. x [N] + = 20;> show (sg.x [N], sg.y [N ]);

};

} 27: {save = fopen (savepath, "wb") ;//Пауза (& sg, sizeof (sg), 1, save) ;//Запис збереження

fclose (save);

Pause ();

break;

}

}

for (i = 0; i <= n-1; i + +)// Провека на зіткнення куль з пасткою

if ((sg.y [i]> = 390) && (sg.x [i]> = sg.x [4] -20) && (sg.x [i ] <= sg.x [4] +20)) sn + +;// Звичайний куля (sn> 0 && (sg.y [5]> = 390) && (sg.x [5 ]> = sg.x [4] -20) && (sg.x [5] <= sg.x [4] +20)) sn -;// Шкідливий куля

// перевірка на дотяженіе куль "мертвої зони"

for (i = 0; i <= n-1; i + +)

{if (sg.y [i] <390) sg.y [i] + = (1 + i) * step; {. x [i] = 20 + rand ()% 620;. y [ i] = 0;

}

} (sg.y [5] <390) sg.y [5] + = (1 + i) * step; {. x [5] = 20 + rand ()% 620;. y [5 ] = 0;}

// Отрісовка об'єктів

for (i = 0; i <= n-1; i + +)

{nb-> show (sg.x [i], sg.y [i]);

}> show (sg.x [5], sg.y [5]);

// час = clock () ;//Поточний час = stt-(t2-t1)/CLOCKS_PER_SEC;// Обчислення залишився

bar (60,424,78,436) ;//Зафарбовування старої інформації

bar (60,444,78,456); (150,424,160,436); (DEFAULT_FONT, HORIZ_DIR, 16); (5);

setfillstyle (1, BLUE);// Запис нової інформації

outtextxy (60,420, time) ;//Інформаційна зона, Час

outtextxy (60,440, score) ;//Інформаційна зона, Окуляри

outtextxy (150,420, level) ;//Інформаційна зона, Рівень

setfillstyle (1, GREEN);

bar (0,401,640,420);

sleep (10);

}

ns.score = sn;// Запис кол-ва набраних очок

cleardevice (); nb; bb;// Шкідливий шарc; (DEFAULT_FONT, HORIZ_DIR, 20); (YELLOW) ;//Висновок вікна "завершення гри"

outtextxy (60,60, "Гра закінчена!");

outtextxy (60,120, "Ви набрали:");

outtextxy (300,230, "очок");

outtextxy (60,400, "Натисніть будь-яку клавішу ...");

remove (savepath) ;//Видалення збереження, оскільки гра закінчена

settextstyle (DEFAULT_FONT, HORIZ_DIR, 50); (GREEN); (230,200, score) ;//Висновок очок = 0; ();// Запис результатів (key == 0)

{key = getch ();

} ();// Висновок таблиці результатів

} Menu :: Pause (void)// Функція "Паузи"

outtextxy (x0, y0 +40, "Вийти в головне меню");

int key = 1, pos = 1, flagexit = 1; (RED); (x0-10, y0 +12 + (pos-1) * 20,4); (flagexit)// Навігація по меню

{key = getch (); (key)

{case 38: {if (pos> 1) {setcolor (BLACK); (x0-10, y0 +12 + (pos-1) * 20,4); -; (RED); (x0-10 , y0 +12 + (pos-1) * 20,4);

};

} 40: {if (pos <3) {setcolor (BLACK); (x0-10, y0 +12 + (pos-1) * 20,4); + +; (RED); (x0-10 , y0 +12 + (pos-1) * 20,4);

};

} (27): {ExitOutGame ();} (13): {if (pos == 1) {Game (1); return;} (pos == 2) {remove (savepath); Game (0 ); return;} (pos == 3) {MenuGam...


Назад | сторінка 5 з 6 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: STEP і GAP аналіз
  • Реферат на тему: Організація закупівель ресурсів в умовах функціонування системи Just-in-Tim ...
  • Реферат на тему: Методична рекомендація по виконанню джазових стандартів &Ev'ry time we ...
  • Реферат на тему: Перевірка статистичних гіпотез відносно невідоміх значень параметрів визнач ...
  • Реферат на тему: Гра "Пастка"