![C語言拼圖游戲_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/27/383e513b-c519-44fe-94ae-0001ada17596/383e513b-c519-44fe-94ae-0001ada175961.gif)
![C語言拼圖游戲_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/27/383e513b-c519-44fe-94ae-0001ada17596/383e513b-c519-44fe-94ae-0001ada175962.gif)
![C語言拼圖游戲_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/27/383e513b-c519-44fe-94ae-0001ada17596/383e513b-c519-44fe-94ae-0001ada175963.gif)
![C語言拼圖游戲_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/27/383e513b-c519-44fe-94ae-0001ada17596/383e513b-c519-44fe-94ae-0001ada175964.gif)
![C語言拼圖游戲_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/27/383e513b-c519-44fe-94ae-0001ada17596/383e513b-c519-44fe-94ae-0001ada175965.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、#include #include #include #include #include resource.h hinstance hinst; hbitmap pic,empty,compare_pic,pict8,compare_pict8,other; / 所有圖的變量名hdc hdc,mdc; /dc 名int mouse_x,mouse_y,n=0,line=3,high3=100,high4=200,high5=300; /鼠標(biāo) x y 移動(dòng)步數(shù)難度記錄char str10= ; / 字符串 ,顯示步數(shù)和記錄時(shí)用bool fin=false,new3=true,new4=false
2、,new5=false; / 完成難度三四 五 的重繪struct point int x; int y; int num; point26; / 塊atom myregisterclass(hinstance hinstance); bool initinstance(hinstance, int); lresult callback wndproc(hwnd, uint, wparam, lparam); void mypaint(); / 顯示void change_block(int block1,int block2); / 交換兩塊的屬性void save(); /保存記錄void
3、 getpos(); /為重繪做的隨機(jī)排列int apientry winmain(hinstance hinstance,hinstance hprevinstance,lpstr lpcmdline,int ncmdshow) msg msg; myregisterclass(hinstance); if (!initinstance (hinstance, ncmdshow) / 如果實(shí)例化失敗,退出 return false; while (getmessage(&msg, null, 0, 0) /消息循環(huán) ,一直獲取消息,直到消息返回值為假 translatemessage
4、(&msg); /翻譯消息 dispatchmessage(&msg); /將消息發(fā)到適當(dāng)?shù)膶?duì)象上 return msg.wparam; atom myregisterclass(hinstance hinstance) / 注冊窗口類 ,通知你要建的窗口是什么樣的.可以有多個(gè) ,用類名來區(qū)分 wndclassex wcex; /類名 wcex.cbsize = sizeof(wndclassex); /類的長度cb.表示存儲(chǔ)空間 wcex.style = cs_hredraw | cs_vredraw | cs_dblclks; / 窗 口 風(fēng) 格水 平horizontal.
5、 垂直 vertical. 重畫 redraw wcex.lpfnwndproc = (wndproc)wndproc; / 指向函數(shù)的一個(gè)指針指向 wndproc /lresult callback wndproc(hwnd hwnd, uint message, wparam wparam, lparam lparam) wcex.cbclsextra = 0; / 類變量占用的存儲(chǔ)(cb 表示存儲(chǔ)空間的前綴) wcex.cbwndextra = 0; / 實(shí)例變量占用的存儲(chǔ) wcex.hinstance = hinstance; / 定義該類的應(yīng)用程序?qū)嵗木浔?wcex.hicon =
6、 loadicon(hinstance,makeintresource(idi_icon1); /圖標(biāo)對(duì)象的句柄 wcex.hcursor = loadcursor(null, idc_arrow); / 光標(biāo)圖像的句柄 wcex.hbrbackground = (hbrush)(color_window+1); / 用于擦掉用戶區(qū)的刷子的句柄 wcex.lpszmenuname = (lpcstr)idr_menu1; /標(biāo)識(shí)選單對(duì)象的字符串 wcex.lpszclassname = can; / 該類名字的字符串 lpsz長指針 ,以0 結(jié)束 wcex.hiconsm = null; /
7、return registerclassex(&wcex); / 定義完類的各個(gè)對(duì)象后注冊 bool initinstance(hinstance hinstance, int ncmdshow) hwnd hwnd; hinst = hinstance; char filename30= ; hwnd = createwindow(can, 游戲窗口, ws_overlappedwindow & ws_maximizebox & ws_thickframe,cw_usedefault, 0, cw_usedefault, 0, null, null, hinstanc
8、e, null); if (!hwnd) / 類名 ,用于標(biāo)識(shí)創(chuàng)建的窗口屬于哪個(gè)類. return false; movewindow(hwnd,80,100,1087,526,true); showwindow(hwnd, ncmdshow); updatewindow(hwnd); hdc=getdc(hwnd); mdc=createcompatibledc(hdc); /創(chuàng)建緩存 empty=(hbitmap)loadimage(hinstance,sourcepicempty.bmp,image_bitmap,687,526,lr_loadfromfile); for(int m=0
9、;m=7;m+) sprintf(filename,sourcepicpic%d.bmp,m); / 讀圖 ,沒什么好說的 pictm = (hbitmap)loadimage(hinstance,filename,image_bitmap,600,480,lr_loadfromfile); compare_pictm=(hbitmap)loadimage(hinstance,filename,image_bitmap ,450,360,lr_loadfromfile); pic=pict0; compare_pic=compare_pict0; file *fp; / 讀入 record 文
10、件中的記錄 if(fp=fopen(sourcerecord,ab+)=null) messagebox(null, 不能打開 record 文件 ,可能被刪除 ,請(qǐng)?jiān)?source 中重新建立 .,null); return false; else fread(&high3,sizeof(high3),1,fp); fread(&high4,sizeof(high4),1,fp); fread(&high5,sizeof(high5),1,fp); fclose(fp); mypaint(); return true; lresult callback wndproc
11、(hwnd hwnd, uint message, wparam wparam, lparam lparam) paintstruct ps; int block_num=0; /用于鼠標(biāo)所指的塊的編號(hào),非 num 號(hào) 要區(qū)分 switch (message) case wm_paint: / 顯示 hdc = beginpaint(hwnd, &ps); hdc=getdc(hwnd); mypaint(); endpaint(hwnd, &ps); break; case wm_command: / 菜單命令 switch(loword(wparam) case id_ne
12、wgame: fin=0;n=0; switch(line) case 3: new3=true;break; /讀圖后要重排圖 case 4: new4=true;break; case 5: new5=true;break; default:; mypaint(); break; case id_pic0: pic=pict0; /讀入大圖 compare_pic=compare_pict0; / 讀入?yún)⒄請(qǐng)D fin=0;n=0; switch(line) case 3: new3=true;break; /讀圖后要重排圖 case 4: new4=true;break; case 5:
13、new5=true;break; default:; mypaint(); break; case id_pic1: pic=pict1; compare_pic=compare_pict1; fin=0;n=0; switch(line) case 3: new3=true;break; case 4: new4=true;break; case 5: new5=true;break; default:; mypaint(); break; case id_pic2: pic=pict2; compare_pic=compare_pict2; fin=0;n=0; switch(line)
14、case 3: new3=true;break; case 4: new4=true;break; case 5: new5=true;break; default:; mypaint(); break; case id_pic3: pic=pict3; compare_pic=compare_pict3; fin=0;n=0; switch(line) case 3: new3=true;break; case 4: new4=true;break; case 5: new5=true;break; default:; mypaint(); break; case id_pic4: pic=
15、pict4; compare_pic=compare_pict4; fin=0;n=0; switch(line) case 3: new3=true;break; case 4: new4=true;break; case 5: new5=true;break; default:; mypaint(); break; case id_pic5: pic=pict5; compare_pic=compare_pict5; fin=0;n=0; switch(line) case 3: new3=true;break; case 4: new4=true;break; case 5: new5=
16、true;break; default:; mypaint(); break; case id_pic6: pic=pict6; compare_pic=compare_pict6; fin=0;n=0; switch(line) case 3: new3=true;break; case 4: new4=true;break; case 5: new5=true;break; default:; mypaint(); break; case id_pic7: pic=pict7; compare_pic=compare_pict7; fin=0;n=0; switch(line) case
17、3: new3=true;break; case 4: new4=true;break; case 5: new5=true;break; default:; mypaint(); break; case id_pic8: if(loadimage(null,sourcepicother.bmp,image_bitmap ,600,480,lr_loadfromfile) / 成功載入other.bmp pic = (hbitmap)loadimage(null,sourcepicother.bmp,image_bitmap ,600,480,lr_loadfromfile); compare
18、_pic=(hbitmap)loadimage(null,sourcepicother.bmp,image_bitmap ,450,360,lr_loadfromfile); fin=0;n=0; switch(line) case 3: new3=true;break; case 4: new4=true;break; case 5: new5=true;break; default:; mypaint(); else messagebox(hwnd,pic文件夾中無other.bmp 文件 ., 說明 ,null); / 未成功載入other.bmp break; case id_thre
19、e: new3=true;new4=false;new5=false;line=3;fin=0;n=0; /如果選難度三,則要重排圖,不許四,五重排 .難度設(shè)為三 ,標(biāo)記未完成 ,n 從 0 記數(shù) . mypaint(); break; case id_four: new3=false;new4=true;new5=false;line=4;fin=0;n=0; mypaint(); break; case id_five: new3=false;new4=false;new5=true;line=5;fin=0;n=0; mypaint(); break; case id_introduce
20、: messagebox(hwnd,鼠標(biāo)點(diǎn)擊移動(dòng),拼完整即勝利 !nn如果想自添加圖需要用bmp 格式,文件名為other.bmp 。并放入pic 文件夾中 ., 說明 ,null); break; case id_about: messagebox(hwnd,如發(fā)現(xiàn)bug 或有好的建議。請(qǐng)致信email: 。謝謝! nnt special thank 老婆 -悅 對(duì)我的大力支持!nnttttt作者:高坤, 說明,null); break; case id_exit: destroywindow(hwnd); break; default: messagebox(hwnd,菜單命令錯(cuò)誤!,nu
21、ll); break; case wm_lbuttondown: / 鼠標(biāo)左鍵控制塊的移動(dòng) mouse_x=loword(lparam); / 記錄鼠標(biāo)的位置 mouse_y=hiword(lparam); block_num=0; switch(line) case 3: if(mouse_x600 & mouse_y0) sndplaysound(sourcesoundclick.wav,snd_async | snd_filename); switch(block_num) case 1: if(point2.num=9) /第一塊可以與第二塊交換 change_block(1,
22、2); n+; /移動(dòng)步數(shù)加1 else if(point4.num=9) /第一塊可以與第四塊交換 change_block(1,4); n+; /移動(dòng)步數(shù)加1 break; case 2: if(point1.num=9) / 第二塊可以與第一塊交換 change_block(2,1); n+; / 移動(dòng)步數(shù)加1 else if(point5.num=9) / 第二塊可以與第五塊交換 change_block(2,5); n+; / 移動(dòng)步數(shù)加1 else if(point3.num=9) / 第二塊可以與第三塊交換 change_block(2,3); n+; / 移動(dòng)步數(shù)加1 brea
23、k; case 3: if(point2.num=9) / 第三塊可以與第二塊交換 change_block(3,2); n+; / 移動(dòng)步數(shù)加1 else if(point6.num=9) / 第三塊可以與第六塊交換 change_block(3,6); n+; / 移動(dòng)步數(shù)加1 break; case 4: if(point1.num=9) / 第四塊可以與第一塊交換 change_block(4,1); n+; / 移動(dòng)步數(shù)加1 else if(point5.num=9) / 第四塊可以與第五塊交換 change_block(4,5); n+; / 移動(dòng)步數(shù)加1 else if(poin
24、t7.num=9) / 第四塊可以與第七塊交換 change_block(4,7); n+; / 移動(dòng)步數(shù)加1 break; case 5: if(point2.num=9) / 第五塊可以與第二塊交換 change_block(5,2); n+; / 移動(dòng)步數(shù)加1 else if(point4.num=9) / 第五塊可以與第四塊交換 change_block(5,4); n+; / 移動(dòng)步數(shù)加1 else if(point6.num=9) / 第五塊可以與第六塊交換 change_block(5,6); n+; / 移動(dòng)步數(shù)加1 else if(point8.num=9) / 第五塊可以與
25、第八塊交換 change_block(5,8); n+; / 移動(dòng)步數(shù)加1 break; case 6: if(point3.num=9) / 第六塊可以與第三塊交換 change_block(6,3); n+; / 移動(dòng)步數(shù)加1 else if(point5.num=9) / 第六塊可以與第五塊交換 change_block(6,5); n+; / 移動(dòng)步數(shù)加1 else if(point9.num=9) / 第六塊可以與第九塊交換 change_block(6,9); n+; / 移動(dòng)步數(shù)加1 break; case 7: if(point8.num=9) /第七塊可以與第八塊交換 cha
26、nge_block(7,8); n+; /移動(dòng)步數(shù)加1 else if(point4.num=9) /第七塊可以與第四塊交換 change_block(7,4); n+; /移動(dòng)步數(shù)加1 break; case 8: if(point7.num=9) / 第八塊可以與第七塊交換 change_block(8,7); n+; / 移動(dòng)步數(shù)加1 else if(point5.num=9) / 第八塊可以與第五塊交換 change_block(8,5); n+; / 移動(dòng)步數(shù)加1 else if(point9.num=9) / 第八塊可以與第九塊交換 change_block(8,9); n+; /
27、 移動(dòng)步數(shù)加1 break; case 9: if(point8.num=9) / 第九塊可以與第八塊交換 change_block(9,8); n+; / 移動(dòng)步數(shù)加1 else if(point6.num=9) / 第九塊可以與第六塊交換 change_block(9,6); n+; / 移動(dòng)步數(shù)加1 break; default:; break; case 4: if(mouse_x600 & mouse_y0) /如果 block_num 沒能從鼠標(biāo)坐標(biāo)上獲取值則說明點(diǎn)的位置不對(duì)。 sndplaysound(sourcesoundclick.wav,snd_async | sn
28、d_filename); switch(block_num) case 1: if(pointblock_num+1.num=16) change_block(block_num,block_num+1); n+; else if(pointblock_num+4.num=16) change_block(block_num,block_num+4); n+; break; case 4: if(pointblock_num-1.num=16) change_block(block_num,block_num-1); n+; else if(pointblock_num+4.num=16) c
29、hange_block(block_num,block_num+4); n+; break; case 13: if(pointblock_num-4.num=16) change_block(block_num,block_num-4); n+; else if(pointblock_num+1.num=16) change_block(block_num,block_num+1); n+; break; case 16: if(pointblock_num-1.num=16) change_block(block_num,block_num-1); n+; else if(pointblo
30、ck_num-4.num=16) change_block(block_num,block_num-4); n+; break; case 2: case 3: if(pointblock_num-1.num=16) change_block(block_num,block_num-1); n+; else if(pointblock_num+4.num=16) change_block(block_num,block_num+4); n+; else if(pointblock_num+1.num=16) change_block(block_num,block_num+1); n+; br
31、eak; case 5: case 9: if(pointblock_num+4.num=16) change_block(block_num,block_num+4); n+; else if(pointblock_num+1.num=16) change_block(block_num,block_num+1); n+; else if(pointblock_num-4.num=16) change_block(block_num,block_num-4); n+; break; case 8: case 12: if(pointblock_num-1.num=16) change_blo
32、ck(block_num,block_num-1); n+; else if(pointblock_num+4.num=16) change_block(block_num,block_num+4); n+; else if(pointblock_num-4.num=16) change_block(block_num,block_num-4); n+; break; case 14: case 15: if(pointblock_num-1.num=16) change_block(block_num,block_num-1); n+; else if(pointblock_num+1.nu
33、m=16) change_block(block_num,block_num+1); n+; else if(pointblock_num-4.num=16) change_block(block_num,block_num-4); n+; break; default: if(pointblock_num-1.num=16) change_block(block_num,block_num-1); n+; else if(pointblock_num+4.num=16) change_block(block_num,block_num+4); n+; else if(pointblock_n
34、um+1.num=16) change_block(block_num,block_num+1); n+; else if(pointblock_num-4.num=16) change_block(block_num,block_num-4); n+; break; case 5: if(mouse_x600 & mouse_y0) /如果 block_num 沒能從鼠標(biāo)坐標(biāo)上獲取值則說明點(diǎn)的位置不對(duì)。 sndplaysound(sourcesoundclick.wav,snd_async | snd_filename); switch(block_num) / 移動(dòng)兩塊 case
35、1: if(pointblock_num+1.num=25) change_block(block_num,block_num+1); n+; else if(pointblock_num+5.num=25) change_block(block_num,block_num+5); n+; break; case 5: if(pointblock_num-1.num=25) change_block(block_num,block_num-1); n+; else if(pointblock_num+5.num=25) change_block(block_num,block_num+5);
36、n+; break; case 21: if(pointblock_num-5.num=25) change_block(block_num,block_num-5); n+; else if(pointblock_num+1.num=25) change_block(block_num,block_num+1); n+; break; case 25: if(pointblock_num-1.num=25) change_block(block_num,block_num-1); n+; else if(pointblock_num-5.num=25) change_block(block_
37、num,block_num-5); n+; break; case 2: case 3: case 4: if(pointblock_num-1.num=25) change_block(block_num,block_num-1); n+; else if(pointblock_num+5.num=25) change_block(block_num,block_num+5); n+; else if(pointblock_num+1.num=25) change_block(block_num,block_num+1); n+; break; case 6: case 11: case 1
38、6: if(pointblock_num+5.num=25) change_block(block_num,block_num+5); n+; else if(pointblock_num+1.num=25) change_block(block_num,block_num+1); n+; else if(pointblock_num-5.num=25) change_block(block_num,block_num-5); n+; break; case 10: case 15: case 20: if(pointblock_num-1.num=25) change_block(block
39、_num,block_num-1); n+; else if(pointblock_num+5.num=25) change_block(block_num,block_num+5); n+; else if(pointblock_num-5.num=25) change_block(block_num,block_num-5); n+; break; case 22: case 23: case 24: if(pointblock_num-1.num=25) change_block(block_num,block_num-1); n+; else if(pointblock_num+1.n
40、um=25) change_block(block_num,block_num+1); n+; else if(pointblock_num-5.num=25) change_block(block_num,block_num-5); n+; break; default: if(pointblock_num-1.num=25) change_block(block_num,block_num-1); n+; else if(pointblock_num+5.num=25) change_block(block_num,block_num+5); n+; else if(pointblock_
41、num+1.num=25) change_block(block_num,block_num+1); n+; else if(pointblock_num-5.num=25) change_block(block_num,block_num-5); n+; break; default:; mypaint(); break; case wm_close: if(idyes=messagebox(hwnd, 真的不玩了?,提示 ,mb_yesno) destroywindow(hwnd); break; case wm_destroy: int k; for(k=0;k7;k+) deleteo
42、bject(pictk); deleteobject(compare_pictk); deleteobject(compare_pic); deleteobject(pic); deleteobject(empty); releasedc(hwnd,hdc); postquitmessage(0); break; default: return defwindowproc(hwnd, message, wparam, lparam); return 0; void mypaint() selectobject(mdc,empty); / 貼上背景圖 bitblt(hdc,600,0,487,5
43、26,mdc,200,0,srccopy); selectobject(mdc,compare_pic); / 貼上參照?qǐng)D bitblt(hdc,617,0,450,360,mdc,0,0,srccopy); sprintf(str,%d,n); /顯示移動(dòng)步數(shù)textout(hdc,817,433,str,strlen(str); if(3=line) sprintf(str,%d,high3); /在其位置顯示最高記錄textout(hdc,1007,433,str,strlen(str); if(new3) / 如果要重排 getpos(); / 重排 new3=false; selec
44、tobject(mdc,pic); for(int i=1;i=9;i+) switch(i) / 按屬性貼圖 case 1: bitblt(hdc,0,0,200,160,mdc,pointi.x,pointi.y,srccopy); break; case 2: bitblt(hdc,200,0,200,160,mdc,pointi.x,pointi.y,srccopy); break; case 3: bitblt(hdc,400,0,200,160,mdc,pointi.x,pointi.y,srccopy); break; case 4: bitblt(hdc,0,160,200,1
45、60,mdc,pointi.x,pointi.y,srccopy); break; case 5: bitblt(hdc,200,160,200,160,mdc,pointi.x,pointi.y,srccopy); break; case 6: bitblt(hdc,400,160,200,160,mdc,pointi.x,pointi.y,srccopy); break; case 7: bitblt(hdc,0,320,200,160,mdc,pointi.x,pointi.y,srccopy); break; case 8: bitblt(hdc,200,320,200,160,mdc
46、,pointi.x,pointi.y,srccopy); break; case 9: bitblt(hdc,400,320,200,160,mdc,pointi.x,pointi.y,srccopy); break; default: messagebox(null, 貼圖序列號(hào)錯(cuò)誤!,null); for(int j=1;j=9;j+) if(pointj.num=9) selectobject(mdc,empty); switch(j) / 貼上空白圖 case 1: bitblt(hdc,0,0,200,160,mdc,0,0,srccopy); break; case 2: bitb
47、lt(hdc,200,0,200,160,mdc,0,0,srccopy); break; case 3: bitblt(hdc,400,0,200,160,mdc,0,0,srccopy); break; case 4: bitblt(hdc,0,160,200,160,mdc,0,0,srccopy); break; case 5: bitblt(hdc,200,160,200,160,mdc,0,0,srccopy); break; case 6: bitblt(hdc,400,160,200,160,mdc,0,0,srccopy); break; case 7: bitblt(hdc
48、,0,320,200,160,mdc,0,0,srccopy); break; case 8: bitblt(hdc,200,320,200,160,mdc,0,0,srccopy); break; case 9: bitblt(hdc,400,320,200,160,mdc,0,0,srccopy); break; default:; break; int finish=0; for(int k=1;k=9;k+) if(pointk.num=k) finish+; / 做完成判斷完成則 finish 應(yīng)該為 line*line if(finish=9) /完成則執(zhí)行 fin=true; s
49、ndplaysound(sourcesoundftelep2電火花 .wav,snd_async | snd_filename); messagebox(null,finish! change a harder one,try it again!, 恭喜 _,null); if(nhigh3) / 如果出現(xiàn)新記錄. sleep(100); / 睡一下 ,讓記錄來的別太突然 high3=n; selectobject(mdc,empty); bitblt(hdc,1007,433,100,30,mdc,250,0,srccopy); / 貼個(gè)背景的綠圖,要不如 n 為 44,記錄為 100,就會(huì)
50、出現(xiàn)記錄顯示為440 再刷新下才能看到是44 sprintf(str,%d,high3); / 顯示新記錄 ! textout(hdc,1007,433,str,strlen(str); sndplaysound(sourcesoundnew.wav,snd_async | snd_filename); messagebox(null,the new record!,恭喜 _,null); save(); / 保存新記錄到文件 else if(4=line) sprintf(str,%d,high4); textout(hdc,1007,433,str,strlen(str); if(new4
51、) getpos(); new4=false; selectobject(mdc,pic); for(int i=1;i=16;i+) switch(i) case 1: bitblt(hdc,0,0,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 2: bitblt(hdc,150,0,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 3: bitblt(hdc,300,0,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 4:
52、bitblt(hdc,450,0,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 5: bitblt(hdc,0,120,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 6: bitblt(hdc,150,120,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 7: bitblt(hdc,300,120,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 8: bitblt(h
53、dc,450,120,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 9: bitblt(hdc,0,240,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 10: bitblt(hdc,150,240,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 11: bitblt(hdc,300,240,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 12: bitblt(hdc,
54、450,240,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 13: bitblt(hdc,0,360,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 14: bitblt(hdc,150,360,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 15: bitblt(hdc,300,360,150,120,mdc,pointi.x,pointi.y,srccopy); break; case 16: bitblt(hdc,45
55、0,360,150,120,mdc,pointi.x,pointi.y,srccopy); break; default: messagebox(null, 貼圖序列號(hào)錯(cuò)誤!,null); for(int j=1;j=16;j+) if(pointj.num=16) selectobject(mdc,empty); switch(j) case 1: bitblt(hdc,0,0,150,120,mdc,0,0,srccopy); break; case 2: bitblt(hdc,150,0,150,120,mdc,0,0,srccopy); break; case 3: bitblt(hd
56、c,300,0,150,120,mdc,0,0,srccopy); break; case 4: bitblt(hdc,450,0,150,120,mdc,0,0,srccopy); break; case 5: bitblt(hdc,0,120,150,120,mdc,0,0,srccopy); break; case 6: bitblt(hdc,150,120,150,120,mdc,0,0,srccopy); break; case 7: bitblt(hdc,300,120,150,120,mdc,0,0,srccopy); break; case 8: bitblt(hdc,450,
57、120,150,120,mdc,0,0,srccopy); break; case 9: bitblt(hdc,0,240,150,120,mdc,0,0,srccopy); break; case 10: bitblt(hdc,150,240,150,120,mdc,0,0,srccopy); break; case 11: bitblt(hdc,300,240,150,120,mdc,0,0,srccopy); break; case 12: bitblt(hdc,450,240,150,120,mdc,0,0,srccopy); break; case 13: bitblt(hdc,0,
58、360,150,120,mdc,0,0,srccopy); break; case 14: bitblt(hdc,150,360,150,120,mdc,0,0,srccopy); break; case 15: bitblt(hdc,300,360,150,120,mdc,0,0,srccopy); break; case 16: bitblt(hdc,450,360,150,120,mdc,0,0,srccopy); break; default:; break; int finish=0; for(int k=1;k=16;k+) if(pointk.num=k) finish+; if
59、(finish=16) fin=true; sndplaysound(sourcesoundftelep2電火花 .wav,snd_async | snd_filename); messagebox(null,finish! change a harder one,try it again!, 恭喜 _,null); if(nhigh4) sleep(100); high4=n; selectobject(mdc,empty); bitblt(hdc,1007,433,100,30,mdc,250,0,srccopy); sprintf(str,%d,high4); textout(hdc,1
60、007,433,str,strlen(str); sndplaysound(sourcesoundnew.wav,snd_async | snd_filename); messagebox(null,the new record!,恭喜 _,null); save(); else if(5=line) sprintf(str,%d,high5); textout(hdc,1007,433,str,strlen(str); if(new5) / 更新 5x5 getpos(); new5=false; selectobject(mdc,pic); for(int i=1;i=25;i+) switch(i) case 1: bitblt(hdc,0,0,120,96,mdc,pointi.x,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度教學(xué)儀器知識(shí)產(chǎn)權(quán)保護(hù)合同
- 全新轎車購買合同范本
- 2025年度金融貸款居間風(fēng)險(xiǎn)控制合同
- 全國授權(quán)合同范本
- 養(yǎng)鵝合同范例
- 切割支撐合同范本
- 業(yè)主和裝修工長合同范例
- 2025年度花卉市場渠道建設(shè)與拓展合同
- 自愿租賃房屋意向合同范本
- n 1賠償合同范本
- 2022注冊電氣工程師專業(yè)考試規(guī)范清單匯總
- 一年級(jí)寫字下學(xué)期課件(PPT 38頁)
- 怎樣處理課堂突發(fā)事件
- 桂花-作文ppt-PPT課件(共14張)
- 高一數(shù)學(xué)概率部分知識(shí)點(diǎn)總結(jié)及典型例題解析 新課標(biāo) 人教版 必修
- 鐵路運(yùn)費(fèi)計(jì)算方法
- 《小腦梗死護(hù)理查房》
- 免疫及炎癥相關(guān)信號(hào)通路
- 某風(fēng)電場設(shè)備材料設(shè)備清單
- —橋梁專業(yè)施工圖設(shè)計(jì)審查要(終)
- 德龍自卸車合格證掃描件(原圖)
評(píng)論
0/150
提交評(píng)論