77范文网 - 专业文章范例文档资料分享平台

计算机课程设计 - 俄罗斯方块 - 图文(6)

来源:网络收集 时间:2019-03-28 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

} void initbt5(int bt_color) /*初始化 \ # \ # \{ /* # ### # # */ int i; /* # ## */ for(i=0;i<3;i++) { bt[7].bktp[i][2]=1; bt[8].bktp[2][i+1]=1; bt[9].bktp[i][1]=1; bt[10].bktp[1][i+1]=1; } bt[7].bktp[0][1]=1; bt[8].bktp[1][3]=1; bt[9].bktp[2][2]=1; bt[10].bktp[2][1]=1; bt[7].color=bt_color; bt[8].color=bt_color; bt[9].color=bt_color; bt[10].color=bt_color; return; } void initbt6(int bt_color) /*初始化 \ # \ \ ## \ ### \{ /* # ### # # */ int i; /* ## # */ for(i=0;i<3;i++) { bt[11].bktp[i][2]=1; bt[12].bktp[2][i]=1; bt[13].bktp[i][1]=1; bt[14].bktp[1][i]=1; } bt[11].bktp[2][1]=1; bt[12].bktp[1][0]=1; bt[13].bktp[0][2]=1; bt[14].bktp[2][2]=1; bt[11].color=bt_color; bt[12].color=bt_color; bt[13].color=bt_color; bt[14].color=bt_color; return; } void initbt7(int bt_color) { int i;

26

for(i=0;i<3;i++) { /*初始化 \ # \ # \ ### \ # \ bt[15].bktp[2][i+1]=1; /* ### ## # ## */ bt[16].bktp[i][2]=1; /* # # */ bt[17].bktp[1][i+1]=1; bt[18].bktp[i][2]=1; } bt[15].bktp[1][2]=1; bt[16].bktp[1][3]=1; bt[17].bktp[2][2]=1; bt[18].bktp[1][1]=1; bt[15].color=bt_color; bt[16].color=bt_color; bt[17].color=bt_color; bt[18].color=bt_color; return; } int randompre(void) /*随机产生一个方块形状到预览区,并记录下方块形状的下标*/ { int btnum; srand(time(NULL)); btnum=rand(); pre=bt[btnum]; return btnum; } void pretozxp(int btnum) { pretotemp(btnum); temptozxp(); return; } void pretotemp(int btnum) /*将预览区的方块信息传给\其中的\记录方块的位置*/ { int i,j; for(i=0;i<4;i++) { for(j=0;j<4;j++) { tempbt.bp[i][j]=bt[btnum].bktp[i][j]; } } tempbt.color=bt[btnum].color; tempbt.y=0;

27

tempbt.x=3; } void temptozxp(void) /*将\中的信息显示到游戏窗口*/ { int i,j; for(i=tempbt.y;i

28

for(j=0;j<4;j++) { if(pre.bktp[i][j]) hfk(441,71,i,j,pre.color); } } return; } void hfk(int x0,int y0,int i,int j,int color) /*画一个color颜色的方块*/ { setcolor(color); setfillstyle(1,color); bar(j*20+x0,i*20+y0,j*20+x0+18,i*20+y0+18); return; } void refgmglp(void) { char gstr[20],lstr[20],pstr[20]; setfillstyle(1,BKCOLOR1); bar(436,200,600,450); sprintf(gstr,\ sprintf(lstr,\ sprintf(pstr,\ setcolor(GLP_COLOR); outtextxy(436,200,gstr); outtextxy(436,300,lstr); outtextxy(436,400,pstr); return; } int judgedown(int btnum) { int j; switch(btnum) { case 0: case 8: case 9: case 11: case 12: case 15: /*第0,8,9,11,12,15方块形状只需判断tempbt的第三行为1的下方 对应的游戏窗口位置是否为1 */ if(20==tempbt.y) /*以及tempbt的第三行是否到了最底行*/ return 1; for(j=0;j<4;j++)

29

if(tempbt.bp[2][j]&&zxp[tempbt.y+3][tempbt.x+j]) return 1; break; case 1: case 19: if(19==tempbt.y) /*方法同上*/ return 1; for(j=1;j<3;j++) if(tempbt.bp[3][j]&&zxp[tempbt.y+4][tempbt.x+j]) return 1; if(tempbt.bp[0][0]&&zxp[tempbt.y+1][tempbt.x]||tempbt.bp[0][3]&& zxp[tempbt.y+1][tempbt.x+3]) return 1; break; case 2: /*方法同上*/ if(20==tempbt.y) return 1; for(j=0;j<4;j++) if(zxp[tempbt.y+3][tempbt.x+j]) return 1; break; case 3: case 10: if(20==tempbt.y) return 1; if(zxp[tempbt.y+3][tempbt.x+1]||zxp[tempbt.y+2][tempbt.x+2]||tempbt.bp[1][3] &&zxp[tempbt.y+2][tempbt.x+3]) return 1; break; case 4: case 6: if(20==tempbt.y||tempbt.bp[1][0]&&zxp[tempbt.y+2][tempbt.x]||tempbt.bp[1][3] &&zxp[tempbt.y+2][tempbt.x+3]) return 1; for(j=1;j<3;j++) if(zxp[tempbt.y+3][tempbt.x+j]) return 1; break; case 5: case 14: case 18: if(20==tempbt.y) return 1; for(j=0;j<2;j++)

30

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库计算机课程设计 - 俄罗斯方块 - 图文(6)在线全文阅读。

计算机课程设计 - 俄罗斯方块 - 图文(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/548069.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: