Advertisement
kanciastopantalones

ARKANOID v1.01

Apr 28th, 2013
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.51 KB | None | 0 0
  1. #include <conio.h>
  2. #include <stdio.h>
  3. #include <windows.h>
  4. void gotoxy(int x, int y)
  5. {
  6. COORD c;
  7. c.X = x - 1;
  8. c.Y = y - 1;
  9. SetConsoleCursorPosition (GetStdHandle(STD_OUTPUT_HANDLE), c);
  10. }
  11. void czyszczenie()
  12. {
  13. int i,j;
  14. for(i=1;i<=105;i=i+1)
  15. {
  16. for(j=1;j<=25;j=j+1)
  17. {
  18.  
  19. gotoxy(i,j);
  20. printf(" ");
  21.  
  22.  
  23. }
  24. }
  25. }
  26.  
  27. void logo()
  28. {
  29. gotoxy(25,2);
  30. printf(" __ .__ .___");
  31. gotoxy(25,3);
  32. printf("_____ _______| | _______ ____ ____ |__| __| _/");
  33. gotoxy(25,4);
  34. printf("\\__ \\\\_ __ \\ |/ /\\__ \\ / \\ / _ \\| |/ __ | ");
  35. gotoxy(25,5);
  36. printf(" / __ \\| | \\/ < / __ \\| | ( <_> ) / /_/ | ");
  37. gotoxy(25,6);
  38. printf("(____ /__| |__|_ \\(____ /___| /\\____/|__\\____ | ");
  39. gotoxy(25,7);
  40. printf(" \\/ \\/ \\/ \\/ \\/ ");
  41.  
  42. gotoxy(43,13);
  43. printf("NOWA GRA");
  44. gotoxy(43,14);
  45. printf("ZAKONCZ GRE");
  46.  
  47. gotoxy(25,24);
  48. printf("Sterowanie w-gora s-dol a-lewo d-prawo p-akceptacja");
  49.  
  50. gotoxy(89,22);
  51. printf("Autorzy: ");
  52. gotoxy(89,23);
  53. printf("Robert Sokolowski");
  54. gotoxy(89,24);
  55. printf("Mateusz Uszczyk");
  56.  
  57. }
  58.  
  59.  
  60. void main() {
  61. int x=10,y=10,dx=1,dy=1,px=36,py=25,i,j,st1=1,st2=1,t,wynik=0,bufx=41,bufy=13;
  62. int tab[85][27];
  63. int wybor=3;
  64. char buff='o';
  65. long k;
  66. char c='o';
  67.  
  68. gotoxy(12,9);
  69. printf("UWAGA! gra dziala poprawnie na minimalnejej szerokosci 105 ekranu i buforu ekranu!");
  70. gotoxy(16,10);
  71. printf("PPM na pasek tytulu > Wlasciwosci > Uklad > szerokosc ekranu i buforu 105");
  72.  
  73.  
  74.  
  75.  
  76. while(wybor!=0)
  77. {
  78.  
  79. x=32;y=2;
  80. wynik=0;
  81. tab[41][13]=1;
  82. tab[41][14]=0;
  83. wybor=3;
  84. buff='o';
  85.  
  86. logo();
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93. while((wybor!=0) && (wybor!=1))
  94. {
  95.  
  96.  
  97. gotoxy(41,bufy);
  98. printf(">");
  99. if (kbhit())
  100. buff=getch();
  101.  
  102. if (buff=='w')
  103. {
  104. gotoxy(41,bufy);
  105. printf(" ");
  106. bufy=13;
  107. }
  108. if (buff=='s')
  109. {
  110. gotoxy(41,bufy);
  111. printf(" ");
  112. bufy=14;
  113. }
  114.  
  115.  
  116.  
  117. if (buff=='p')
  118. {
  119. if (bufy==13)
  120. {
  121. wybor=1;
  122. }
  123. if (bufy==14)
  124. {
  125. wybor=0;
  126. }
  127. }
  128. buff='o';
  129.  
  130.  
  131. }
  132.  
  133.  
  134.  
  135. c='o';
  136. if (wybor==0)
  137. {
  138. c='k';
  139. }
  140.  
  141.  
  142. czyszczenie();
  143.  
  144. if(c!='k')
  145. {
  146.  
  147. for(i=1;i<80;i=i+1)
  148. {
  149. for(j=1;j<27;j=j+1)
  150. {
  151. gotoxy(i,j);
  152. printf(" ");
  153.  
  154. if((i%6==0) && (j%4==0) && (j<15))
  155. {
  156. t=1+rand()%3;
  157. tab[i][j]=t;
  158. gotoxy(i,j);
  159. printf("%d", t);
  160.  
  161. }
  162.  
  163. }
  164.  
  165.  
  166. }
  167.  
  168. for(i=1;i<26;i=i+1)
  169. {
  170. gotoxy(81,i);
  171. printf("|");
  172. }
  173.  
  174. }
  175.  
  176.  
  177. while(c!='k'){
  178.  
  179.  
  180.  
  181.  
  182. for(k=0;k<2;k++)
  183. {
  184. if (kbhit())
  185. c=getch();
  186.  
  187. gotoxy(px,25);
  188. printf(" ====== ");
  189. if(c=='a'){
  190. if (px>1){
  191.  
  192. px=px-1;
  193. gotoxy(px,25);
  194. printf(" ====== ");}
  195. }
  196. if(c=='d'){
  197.  
  198. if (px<72){
  199. px=px+1;
  200. gotoxy(px,25);
  201. printf(" ====== ");}
  202. }
  203. }
  204.  
  205. c='o';
  206.  
  207.  
  208. gotoxy(x,y);
  209. printf("%c",c);
  210.  
  211.  
  212. if ((y==24) && ((x>=px+1) && (x<=px+7)))dy=-dy;
  213.  
  214. if ((x==80) || (x==1))dx=-dx;
  215. if ((y==25) || (y==1))dy=-dy;
  216.  
  217.  
  218.  
  219. if (tab[x][y]==1)
  220. {
  221. dy=-dy;
  222. tab[x][y]=0;
  223. wynik=wynik+1;
  224. }
  225. if (tab[x][y]==2)
  226. {
  227. dy=-dy;
  228. tab[x][y]=0;
  229. wynik=wynik+2;
  230. }
  231. if (tab[x][y]==3)
  232. {
  233. dy=-dy;
  234. tab[x][y]=0;
  235. wynik=wynik+3;
  236. }
  237.  
  238.  
  239. for(k=0;k<50000000;k++);
  240. gotoxy(86,1);
  241. printf("Twoj wynik: %d ", wynik);
  242. gotoxy(x,y);
  243. printf(" ");
  244.  
  245. x+=dx;
  246. y+=dy;
  247.  
  248.  
  249.  
  250. if (y==25)
  251. {
  252. c='k';
  253. }
  254.  
  255.  
  256.  
  257. }
  258.  
  259. czyszczenie();
  260.  
  261.  
  262.  
  263.  
  264. }
  265.  
  266.  
  267.  
  268.  
  269.  
  270. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement