1、 /*判断这点是否要画色格*/ struct gezi zhiwen44; struct array /*用来装物体的形状*/ int a44; struct bossarray /*搞这么多层,其实是为了随机出物体和改变物体的方向有顺序*/ struct array b4; shape7; /*要控制的物体的形状*/ int a144= 0,0,0,0,0,1,0,0,1,1,1,0,0,0,0,0 ; int a244= 0,1,0,0,0,1,1,0,0,1,0,0,0,0,0,0 ; int a344= 0,0,0,0,1,1,1,0,0,1,0,0,0,0,0,0 ; int a44
2、4= 0,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0 ; int b144= 1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0 ; int b244= 0,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0 ; int b344= 0,0,0,0,0,1,1,0,1,1,0,0,0,0,0,0 ; int b444= 0,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0 ; int c144= 0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0 ; int c244= 1,0,0,0,1,1,0,0,0,1,0,0,0,0,0,0 ;
3、 int c344= 0,0,0,0,1,1,0,0,0,1,1,0,0,0,0,0 ; int c444= 0,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0 ; int d144= 0,1,1,0,0,0,1,0,0,0,1,0,0,0,0,0 ; int d244= 0,0,0,0,0,0,1,0,1,1,1,0,0,0,0,0 ; int d344= 1,0,0,0,1,0,0,0,1,1,0,0,0,0,0,0 ; int d444= 1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0 ; int e144= 1,1,0,0,1,0,0,0,1,0,0,0,0
4、,0,0,0 ; int e244= 1,1,1,0,0,0,1,0,0,0,0,0,0,0,0,0 ; int e344= 0,0,1,0,0,0,1,0,0,1,1,0,0,0,0,0 ; int e444= 0,0,0,0,1,0,0,0,1,1,1,0,0,0,0,0 ; int f144= 0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0 ; int f244= 0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0 ; int f344= 0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0 ; int f444= 0,1,0,0,0,1,0,0,0
5、,1,0,0,0,1,0,0 ; int g144= 0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0 ; int g244= 0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0 ; int g344= 0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0 ; int g444= 0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0 ; void setshape(int a44,int temp44) /*把上面的数组的形状装到shape里*/ int i,j; for(i=0;i4;i+) for(j=0;jj+) aij=tempij; vo
6、id setshape2() /*给shape给他形状*/ setshape(shape0.b0.a,a1); setshape(shape0.b1.a,a2); setshape(shape0.b2.a,a3); setshape(shape0.b3.a,a4); setshape(shape1.b0.a,b1); setshape(shape1.b1.a,b2); setshape(shape1.b2.a,b3); setshape(shape1.b3.a,b4); setshape(shape2.b0.a,c1); setshape(shape2.b1.a,c2); setshape(s
7、hape2.b2.a,c3); setshape(shape2.b3.a,c4); setshape(shape3.b0.a,d1); setshape(shape3.b1.a,d2); setshape(shape3.b2.a,d3); setshape(shape3.b3.a,d4); setshape(shape4.b0.a,e1); setshape(shape4.b1.a,e2); setshape(shape4.b2.a,e3); setshape(shape4.b3.a,e4); setshape(shape5.b0.a,f1); setshape(shape5.b1.a,f2)
8、; setshape(shape5.b2.a,f3); setshape(shape5.b3.a,f1); setshape(shape6.b0.a,g1); setshape(shape6.b1.a,g2); setshape(shape6.b2.a,g3); setshape(shape6.b3.a,g4);/*改变格子数组flag的值,使之能显示物体的形状*/void zhiwen_flag() void temp1(int a44); /*函数声明*/ int estimate_error(); void end(); int k; randomize(); k=random(6);
9、zhongkai=k; /*保存当前的要下落的物体的形状信息*/ warcraft3=4; /*还原状态的初值*/ switch(k) case 0: temp1(shape0.b0.a);break; case 1: temp1(shape1.b0.a); case 2: temp1(shape2.b0.a); case 3: temp1(shape3.b0.a); case 4: temp1(shape4.b0.a); case 5: temp1(shape5.b0.a); case 6: temp1(shape6.b0.a); if(estimate_error() end(); voi
10、d temp1(int a44) /*跟着zhiwen_flag函数,是他的小弟*/ int i,j; for(i=0; for(j=0;j+) if(aij=1) zhiwenij.flag=1; else zhiwenij.flag=0; void zhiwenflag_enter() warcraft3+; temp1(shapezhongkai.bwarcraft3%4.a); /*这函数用来改变方框的gezi_control的值,为画方框做准备*/void change() int i,j,k,p; for(k=0;kk+) for(p=0;p=0;i-) if(wuij.flag=
11、1) wuij.flag=0; wui+1j.flag=1;void end() clrscr(); outtextxy(200,200,press any key to exit!); getch(); exit(1);void main() /*中间数据*/ int graphdriver=DETECT,graphmode; void playgame(); /*给point结构体数组给初值; for(i=1,wu00.x=200; wu0i.x=wu0i-1.x+20; for(i=1; wuij.x=wu0j.x; for(i=1,wu00.y=20; wui0.y=wui-10.y+
12、20; for(j=1; wuij.y=wui0.y; wuij.flag=0; setshape2(); /*给每一个形状初值*/ wuzhiwen200910214117(); /*给zhiwen数组给初值*/ zhiwen_flag(); /* 给格子数组初值 */*图形驱动*/ initgraph(&graphdriver,&graphmode, setcolor(YELLOW); outtextxy(10,40,writer: wuzhiwen outtextxy(10,60,number: 200910214117 outtextxy(10,80,finish in 2010-6-
13、29 outtextxy(10,100,from: zhongkai_school outtextxy(10,120,class: jiji 091. setcolor(WHITE); outtextxy(10,200,how to play: outtextxy(10,220, press ENTER to change outtextxy(10,240, press RIGHT or LEFT outtextxy(10,260, press ESC to exit sleep(3); rectangle(wu00.x-5 , wu00.y-5 ,wuN-1M-1.x+25 , wuN-1M
14、-1.y+25); playgame(); void playgame() int i,j,k,p,i1,j1; while(1) cleargezi_control(); change(); draw(); /*画图*/ sleep(1); /*格子数组的y值增加20。 for(i1=0;i1i1+) for(j1=0;j1j1+) zhiweni1j1.y+=20; if(isunder() /*当到了低时的那种情况*/ if(estimate_error() zhiweni1j1.y-=20; cleargezi_control(); setflag(); deleteline(); wuzhiwen200910214117(); /*回到初始位置*/ /*给它形状*/ else cleargezi_control(); else if(estimate_error() for(i1=0; clea
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1