弹力球C语言课程设计,弹力球游戏c语言代码.docx

弹力球游戏c语言代码

#include #include #include #include /*定义游戏级别*/#define ELEMENTARY 15 /*初级*/#define INTERMEDIATE 8/*中级*/#define ADVANCED 3/*高级*/#define R 5 /*球半径*/struct box{ int x; int y; int color;}a[6][14]; int delaytime = 30;/*表示球的移动速度,今而表示游戏的级别*/int MouseX;int MouseY=400;int dx=1,dy=1; /*计算球的反弹*/int sizex=18,sizey=10; /*box的宽度和长度*/void InitGraphics(){ int gdriver = DETECT,gmode; initgraph(&gdriver,&gmode,"c:\\tc");}void InitGame(){ int grade; gotoxy(20,3); printf("Welcome to the Game of Striking ball\n\n"); gotoxy(20,5); printf("please input the grade you want to play:"); gotoxy(20,6); printf(" 1: elementary \n"); gotoxy(20,7); printf(" 2: intermediate \n"); gotoxy(20,8); printf(" 3: advanded \n"); scanf("%d",grade); switch(grade) { case 1 : delaytime = ELEMENTARY;break; case 2 : delaytime = INTERMEDIATE;break; case 3 : delaytime = ADVANCED;break; default: delaytime = ELEMENTARY;break; }}void DrawBox(int x,int y) /* x, y为左上角坐标sizex,sizey为长和宽*/{ int sizx=sizex-1; int sizy=sizey-1; setcolor(15); line(x,y,x+sizx-1,y); line(x,y+1,x+sizx-2,y+1); line(x,y,x,y+sizy-1); line(x+1,y,x+1,y+sizy-2); setcolor(8); line(x+1,y+sizy,x+sizx,y+sizy); line(x+2,y+sizy-1,x+sizx,y+sizy-1); line(x+sizx-1,y+1,x+sizx-1,y+sizy); line(x+sizx,y+2,x+sizx,y+sizy); setcolor(7); putpixel(x,y+sizy,3); putpixel(x+1,y+sizy-1,3); putpixel(x+sizx,y,3); putpixel(x+sizx-1,y+1,3); setfillstyle(1, 7); bar(x+2,y+2,x+sizx-2,y+sizy-2);}/*绘制游戏界面*/void DrawInterface(){ int i,j; cleardevice(); setcolor(15); rectangle(99,49,413,451); for(i=0;i<6;i++) for(j=0;j<14;j++) { a[i][j].color=0; a[i][j].x=104+j*22; a[i][j].y=54+i*14; DrawBox(104+j*22,54+i*14); } sizex=50,sizey=5;} /*鼠标光标显示*/void DrawMouse(int x,int y){ DrawBox(x,y);}/*设置鼠标左右边界*/void MouseSetX(int lx,int rx){ _CX=lx; _DX=rx; _AX=0x07; geninterrupt(0x33);}/*设置鼠标上下边界*/void MouseSetMaxY(int uy,int dy){ _CX=uy; _DX=dy; _AX=0x08; geninterrupt(0x33);}/*设置鼠标当前位置*/void MouseSetXY(int x,int y)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值