C語言小游戲源代《打磚塊》_第1頁
C語言小游戲源代《打磚塊》_第2頁
C語言小游戲源代《打磚塊》_第3頁
C語言小游戲源代《打磚塊》_第4頁
C語言小游戲源代《打磚塊》_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、C語言小游戲源代碼打磚塊#include "graphics.h"#include "stdio.h"#include "conio.h"                /*所需的頭文件*/int on;               

2、60;           /*聲明具有開關作用的全局變量*/static int score;                 /*聲明靜態(tài)的記分器變量*/ /* 定義開始界面函數(shù)*/int open( setviewport(100,100,500,380,1;   /*設置圖形窗口區(qū)域*/&#

3、160;setcolor(4;                      /*設置作圖色*/ rectangle(0,0,399,279;           /*以矩形填充所設的圖形窗口區(qū)域*/ setfillstyle(SOLID_FILL,7; 

4、0;     /*設置填充方式*/ floodfill(50,50,4;               /*設置填充范圍*/ setcolor(8; settextstyle(0,0,9;              /*文本字體設置*/ outtext

5、xy(90,80,"BALL"          /*輸出文本內(nèi)容*/ settextstyle(0,0,1; outtextxy(110,180,"version 1.0" outtextxy(110,190,"made by ddt" setcolor(128; settextstyle(0,0,1; outtextxy(120,240,"Press any key to

6、continue."/*定義退出界面函數(shù)*/int quitwindow(  char s100;                       /*聲明用于存放字符串的數(shù)組*/  setviewport(100,150,540,420,1;  setcolor(YELLOW;  rectangle(0,0,439,279;

7、60; setfillstyle(SOLID_FILL,7;  floodfill(50,50,14;  setcolor(12;  settextstyle(0,0,8;  outtextxy(120,80,"End"  settextstyle(0,0,2;  outtextxy(120,200,"quit? Y/N"  sprintf(s,"Your score is:%d",score;/*格式化輸出記分器的值*/  outtextxy(120,1

8、80,s;  on=1;                               /*初始化開關變量*/*主函數(shù)*/main(  int gdriver,gmode;  gdriver=DETECT;     

9、60;              /*設置圖形適配器*/  gmode=VGA;                         /*設置圖形模式*/  registerbgidriver(EGAVGA_dri

10、ver;  /*建立獨立圖形運行程序*/  initgraph(&gdriver,&gmode,""     /*圖形系統(tǒng)初試化*/  setbkcolor(14;  open(;                         &#

11、160;  /*調(diào)用開始界面函數(shù)*/  getch(;                           /*暫停*/ while(1              

12、60;              /*此大循環(huán)體控制游戲的反復重新進行*/    int driver,mode,l=320,t=400,r,a,b,dl=5,n,x=200,y=400,r1=10,dx=-2,dy=-2;/*初始化小球相關參數(shù)*/    int left100,top100,right100,bottom100,i,j,k,off=1,m,num100100;/*方磚陣列相關參數(shù)*/ &

13、#160; static int pp;   static int phrase;                /*一系列起開關作用的變量*/   int oop=15;   pp=1;   score=0;   driver=DETECT;   mode=VGA;   registerbgidriver(

14、EGAVGA_driver;   initgraph(&driver,&mode,""   setbkcolor(10;   cleardevice(;                   /*圖形狀態(tài)下清屏*/   clearviewport(;    

15、0;            /*清除現(xiàn)行圖形窗口內(nèi)容*/   b=t+6;   r=l+60;   setcolor(1;   rectangle(0,0,639,479;   setcolor(4;   rectangle(l,t,r,b;   setfillstyle(SOLID_FILL,1;   floodfill(l+

16、2,t+2,4;   for(i=0,k=0;i<=6;i+            /*此循環(huán)繪制方磚陣列*/               topi=k;       bottomi=topi+20;       k=k+2

17、1;       oop-;  for(j=0,m=0;j<=7;j+     leftj=m;   rightj=leftj+80;   m=m+81;   setcolor(4;   rectangle(leftj,topi,rightj,bottomi;   setfillstyle(SOLID_FILL,j+oop;   floodfill(leftj+1,top

18、i+1,4;   numij=pp+;          while(1                        /*此循環(huán)控制整個動畫*/          while(!kbhit( 

19、60;                                        x=x+dx;           

20、;          /*小球運動的圓心變量控制*/       y=y+dy;       if(x+r1>r|x+r1            phrase=0;        if(x-r1<=r|x+r1<=r&am

21、p;&x+r1>=l                          if(y               phrase=1;         

22、      if(y+r1>=t&&phrase=1                 dy=-dy;y=t-1-r1;                  if(off=0     

23、; continue;      for(i=0;i<=6;i+               /*此循環(huán)用于判斷、控制方磚陣列的撞擊、擦除*/        for(j=0;j<=7;j+            

24、60;     if(x+r1<=rightj&&x+r1>=leftj|(x-r1<=rightj&&x-r1>=leftj                          if( y-r1>topi&&y-r1<=bottomi|

25、(y+r1>=topi&&y+r1<=bottomi                      if(numij=0              continue;        &#

26、160;     setcolor(10;             rectangle(leftj,topi,rightj,bottomi;             setfillstyle(SOLID_FILL,10;        &#

27、160;    floodfill(leftj+1,topi+1,10;      dy=-dy;             numij=0;             score=score+10;       

28、      printf("%dbbb",score;                                     if(y+r1>=topi&&y+r1&

29、lt;=bottomi|(y-r1>=topi&&y-r1<=bottomi                          if(x+r1>=leftj&&x+r1 leftj           

30、0;               if(numij=0          continue;          setcolor(10;          rectangle(leftj,topi,r

31、ightj,bottomi;          setfillstyle(SOLID_FILL,10;          floodfill(leftj+1,topi+1,10;          dx=-dx;          numi

32、j=0;          score=score+10;          printf("%dbbb",score;                        &

33、#160;                  if(x+r1>639                 /*控制小球的彈射范圍*/          dx=-dx;x=638-r1; &

34、#160;      if(x<=r1          dx=-dx;x=r1+1;        if(y+r1>=479          off=0;quitwindow(;break;        if(y

35、<=r1          dy=-dy;y=r1+1;        if(score=560          off=0;quitwindow(;break;        setcolor(6;      

36、                  circle(x,y,r1;        setfillstyle(SOLID_FILL,14;        floodfill(x,y,6;        delay(1000; 

37、;       setcolor(10;        circle(x,y,r1;        setfillstyle(SOLID_FILL,10;        floodfill(x,y,10;          a=getch(;       setcolor(10;       rectangle(l,t,r,b;       setfillstyle(SOLID_FILL,10;       floodfill(l+2,t+2,10;       if(a=77&&l<=565&

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論