本文實例為大家分享了C語言實現漂亮的煙花效果展示的具體代碼,供大家參考,具體內容如下
程序名稱:祝福煙花,祝福朋友
編譯環境:VC++6.0 && easyx(立冬版)
#include <graphics.h>#include <conio.h>#include <iostream.h>#include <math.h>#include <time.h>#include <stdio.h>#include <Mmsystem.h> // 使用該計時器必須包含的文件#pragma comment ( lib, "Winmm.lib" )/***** 宏定義區 ******/#define NUM 13 // 煙花種類數量宏定義/***** 結構定義區 **********/// 煙花結構struct FIRE{ int r; // 當前爆炸半徑 int max_r; // 爆炸中心距離邊緣最大半徑 int x, y; // 爆炸中心在窗口的坐標 int cen_x, cen_y; // 爆炸中心相對圖片左上角的坐標 int width, height; // 圖片的寬高 int xy[240][240]; // 儲存圖片像素點 bool show; // 是否綻放 bool draw; // 開始輸出像素點 DWORD t1, t2, dt; // 綻放速度}Fire[NUM];// 煙花彈結構struct JET{ int x, y; // 噴射點坐標 int hx, hy; // 最高點坐標------將賦值給 FIRE 里面的 x, y int height; // 煙花高度 bool shoot; // 是否可以發射 DWORD t1, t2, dt; // 發射速度 IMAGE img[2]; // 儲存花彈一亮一暗圖片 byte n : 1; // 圖片下標}Jet[NUM];// happy birthday 藝術字結構struct HAPPY // 儲存 Happy Birthday 藝術字圖片{ int x, y; // 每個字的圖片的左上角坐標 IMAGE img; // 儲存單個字圖片 static int num; // 字母序號}Happy[NUM];int HAPPY::num = 0;// For.2012の夭女 結構struct WISH // 滾動祝福圖片結構{ int x, y; // 圖片左上角坐標 DWORD t1, t2, dt; // 圖片運動時間間隔 IMAGE img; // 儲存圖片 int dxy; // 每次的移動量 byte dir : 1; // 限制兩個滾動方向}Wish;/**** 函數申明區 ****/void Init ( int ); // 初始化煙花void Load ( ); // 加載煙花圖片void Shoot ( ); // 發射煙花void Chose ( DWORD& ); // 篩選煙花void Wishing( ); // 滾動祝福void Style ( DWORD& ); // 發射樣式void Show ( DWORD* ); // 綻放煙花// 主函數void main(){ initgraph( 1200, 800 ); srand( time(0) ); // 播放背景音樂 mciSendString( "open ./fire/bk.mp3 alias bk", 0, 0, 0 ); mciSendString( "play bk repeat", 0, 0, 0 ); setfillstyle( 0 ); setfont ( 36, 0, "楷體" ); setcolor ( YELLOW ); outtextxy ( 370, 100, "yy
主站蜘蛛池模板:
兴仁县|
丰顺县|
黔江区|
南康市|
修武县|
富顺县|
洪泽县|
刚察县|
安化县|
舟山市|
琼海市|
丰县|
寿光市|
新化县|
罗江县|
广水市|
宁南县|
江达县|
盐边县|
增城市|
神池县|
巴彦县|
报价|
安宁市|
缙云县|
苗栗市|
荣成市|
广州市|
綦江县|
弋阳县|
汕头市|
马公市|
长岛县|
天台县|
丰宁|
渭南市|
逊克县|
彭阳县|
庆云县|
剑川县|
洛浦县|