#include #include #include #include #include #define c15 textcolor(15); int i,j,x=5, y=5, vx=1, vy=1, paddle=1, points=0, level=0, timet=0, blocks[5][60]; char a; int t1=0, t2=0; // timers void arc(void) { gotoxy(1,25); for(i=0; i<79; i++) printf("."); gotoxy(paddle,25); printf("!@@@!"); } int ball(void) { t2=clock(); if((t2-t1) < timet) return 0; t1=clock(); gotoxy(x,y); // koordinati sharika printf(" "); // zatiraet shleyf sharika if(x<=2 || x > 79) vx*=-1; if(y>23) // granica. SHAR DOHODIT DO NIZA { if(x==paddle) // otlet c bolshey skorostiyu s kraya ottolk. udaryatcya ob !xxxx { vy=-2; vx=-2; } if(x==(paddle+1)) // x@xxx { vy=-1; vx=-1; } if(x==(paddle+2)) // xx@xx { if(vy==-2 || vy==-1) vy=1; if(vy==1 || vy==2) vy=-1; vx=0; } if(x==(paddle+3)) // xxx@x { vy=-1; vx=1; } if(x==(paddle+4)) // xxxx! { vy=-2; vx=2; } if(x>(paddle+4)||x 4); clrscr(); timet=level+1; squares(); do { a=0; if(kbhit()) { a=getch(); if(a==77) { paddle++; } if(a==75) { paddle--; } if(paddle < 1) paddle=1; // GRANICI DVIJENIYA ARKANOIDA if(paddle > 74) paddle=74; if(paddle == 32) break; // BREAK NA PROBEL arc(); } if(ball()) break; } while(1); if(points>100) { clrscr(); c15; cprintf("\n\nYou are winner! :)"); getch(); return; } clrscr(); c15; cprintf("Vi proigrali"); getch(); }