Advertisement
YorKnEz

Untitled

Apr 25th, 2019
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.77 KB | None | 0 0
  1. /*
  2. *
  3. * Copyright Alex 2019
  4. *
  5. */
  6.  
  7. #include <stdio.h>
  8. #include <stdlib.h>
  9. #include <time.h>
  10. #include <conio.h>
  11. #include <windows.h>
  12.  
  13. #include <iostream>
  14.  
  15. using std::cin;
  16. using std::cout;
  17.  
  18. struct snake {
  19. int x;
  20. int y;
  21. }v[100];
  22.  
  23. char board[11][11] = {
  24. '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*',
  25. '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*',
  26. '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*',
  27. '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*',
  28. '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*',
  29. '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*',
  30. '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*',
  31. '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*',
  32. '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*',
  33. '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*',
  34. '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*'
  35. };
  36.  
  37. void wait(int milliseconds) {
  38. Sleep(milliseconds);
  39. }
  40.  
  41. int main()
  42. {
  43. srand(time(0));
  44.  
  45. int xpos = 5, ypos = 5, snakeSize = 3;
  46.  
  47. for (int i = 0; i < snakeSize; i++) {
  48. v[i].x = xpos;
  49. v[i].y = ypos;
  50.  
  51. board[xpos][ypos] = 'o';
  52.  
  53. xpos++;
  54. //ypos++;
  55. }
  56.  
  57. /*
  58. int max = 10;
  59. int min = 0;
  60. int n = (rand() % (max - min + 1)) + min;
  61. int n2 = (rand() % (max - min + 1)) + min;
  62.  
  63. board[n][n2] = 'x';
  64. */
  65.  
  66. for (int i = 0; i < 11; i++) {
  67. for (int j = 0; j < 11; j++) {
  68. cout << board[i][j];
  69. //printf("%s", board[i][j]);
  70. }
  71. cout << "\n";
  72. //printf("\n");
  73. }
  74.  
  75. char c = 'w';
  76.  
  77. while (true) {
  78. if (kbhit()) c=getch();
  79.  
  80. board[v[snakeSize-1].x][v[snakeSize-1].y] = '*';
  81.  
  82. if (c == 'a') {
  83. for (int i = snakeSize-2; i >= 0; i--) {
  84. v[i+1].x = v[i].x;
  85. v[i+1].y = v[i].y;
  86. }
  87.  
  88. v[0].y--;
  89. } else if (c == 'd') {
  90. for (int i = snakeSize-2; i >= 0; i--) {
  91. v[i+1].x = v[i].x;
  92. v[i+1].y = v[i].y;
  93. }
  94.  
  95. v[0].y++;
  96. } else if (c == 'w') {
  97. for (int i = snakeSize-2; i >= 0; i--) {
  98. v[i+1].x = v[i].x;
  99. v[i+1].y = v[i].y;
  100. }
  101.  
  102. v[0].x--;
  103. } else if (c == 's') {
  104. for (int i = snakeSize-2; i >= 0; i--) {
  105. v[i+1].x = v[i].x;
  106. v[i+1].y = v[i].y;
  107. }
  108.  
  109. v[0].x++;
  110. }
  111.  
  112. if (v[0].x < 0) {
  113. v[0].x = 10;
  114. }
  115.  
  116. if (v[0].x > 10) {
  117. v[0].x = 0;
  118. }
  119.  
  120. if (v[0].y < 0) {
  121. v[0].y = 10;
  122. }
  123.  
  124. if (v[0].y > 10) {
  125. v[0].y = 0;
  126. }
  127.  
  128. board[v[0].x][v[0].y] = 'o';
  129.  
  130. /*
  131. if (v[0].x == n && v[0].y == n2) {
  132. snakeSize++;
  133.  
  134. v[snakeSize-1].x = v[snakeSize-2].x;
  135. v[snakeSize-1].y = v[snakeSize-2].y;
  136.  
  137. board[v[snakeSize-1].x][v[snakeSize-1].y] = 'o';
  138.  
  139. n = (rand() % (max - min + 1)) + min;
  140. n2 = (rand() % (max - min + 1)) + min;
  141.  
  142. for (int i = 0; i < snakeSize; i++) {
  143. if (n == v[i].x && n2 == v[i].y) {
  144. n = (rand() % (max - min + 1)) + min;
  145. n2 = (rand() % (max - min + 1)) + min;
  146. }
  147. }
  148.  
  149. board[n][n2] = 'x';
  150. }
  151. */
  152.  
  153. system("cls");
  154.  
  155. for (int i = 0; i < 11; i++) {
  156. for (int j = 0; j < 11; j++) {
  157. cout << board[i][j];
  158. //printf("%s", board[i][j]);
  159. }
  160. cout << "\n";
  161. //printf("\n");
  162. }
  163.  
  164. wait(1000 / 60);
  165. }
  166. return 0;
  167. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement