Hamikadze

ver6.game(ALPHA, with bugs!!!)

Apr 19th, 2014
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.81 KB | None | 0 0
  1. uses
  2. crt;//Подрубаем модуль, без него не работает
  3.  
  4. var
  5. a1, x, y, e, g, e1, e2, r, l, lx, ly, x1, x2, x3, x4, y1, y2, y3, y4, EXTx, EXTy, v1, v2, a, c, d, z1, z2, lvl, t1, t2, CQL: integer;
  6. Sym: char;//Значение 'Sym' - будет только для знаков (букв)
  7.  
  8. begin
  9. textbackground(white); //Перекраска фона
  10. clrscr; //Очистка экрана и применени цвета фона
  11. t1 := 2;
  12. t2 := 2;
  13. lvl := 1;
  14. lx := 8;//лабик
  15. ly := 20;//лабик
  16. for g := 1 to 4 do
  17. begin
  18. r := 10;//арена
  19. x := 5; //Корды перемеения курсора -
  20. y := 3; //Корды перемеения курсора |
  21. x1 := 4;// |
  22. x2 := 24;// |
  23. x3 := 4;// -
  24. x4 := 4;// -
  25. y1 := 2;// |
  26. y2 := 12;// |
  27. y3 := 2;// -
  28. y4 := 12;// -
  29. CQL := 1;//часть цикла
  30. //-------
  31. if lvl > 1 then begin
  32. r := r + lvl * 2;
  33. x2 := x2 + lvl * 2;
  34. y2 := y2 + lvl * 2;
  35. y4 := y4 + lvl * 2;
  36. lx := lx + lvl * 2;
  37. ly := ly + lvl * 2;
  38. end;
  39. writeln(lx,ly);
  40. l := lx * ly;//лабик
  41. EXTx := x2 - 1;
  42. EXTy := y2 - 1;
  43. //-------
  44. textcolor(black); //Текст будет цветом
  45. gotoxy(x1, y1); // рисуем первые квадратики арены
  46. write('H');
  47. gotoxy(x2, y2);
  48. write('H');
  49. gotoxy(x3, y3);
  50. write('H');
  51. gotoxy(x4, y4);
  52. write('H');
  53. //--------
  54. textcolor(red); //Текст будет цветом
  55. v1 := 5;
  56. v2 := 3;
  57. assign(output, 'lvl.txt');
  58. rewrite(output);
  59. a := 1;
  60. writeln(a);
  61. for d := 2 to l do
  62. begin
  63. a := random(5);
  64. writeln(a);
  65. end;
  66. close(output);
  67. reset(output);
  68. for d := 1 to lx do
  69. begin
  70. for c := 1 to ly do
  71. begin
  72. gotoxy(v1, v2);
  73. //v1 := v1 + 1;
  74. read(output, a);
  75. if a = 0 then begin
  76. writeln('*');
  77. if (x = v1) and (y = v2) then begin
  78. gotoxy(1, 1); //Если закрытие перемещаем на новые корды
  79. clrscr; //Очистка экрана
  80. textcolor(green); //Если закрытие меняем цвет текста на зеленый
  81. writeln('Вы взорвались!'); //Если закрытие пишем хрень какую-то
  82. EXIT; //ПРЕКРАЩЕНИЕ ЦИКЛА!!!
  83. end;
  84. end;
  85. v1 := v1 + 1;
  86. end;
  87. v1 := 5;
  88. v2 := v2 + 1;
  89. end;
  90. v1 := 5;
  91. v2 := 3;
  92. close(output);
  93. //--------
  94. for e1 := 1 to r do //рисуем всю арену
  95. begin
  96. textcolor(black); //Текст будет цветом
  97. y1 := y1 + 1;
  98. gotoxy(x1, y1);
  99. write('H');
  100. y2 := y2 - 1;
  101. gotoxy(x2, y2);
  102. write('H');
  103. for e2 := 1 to 2 do
  104. begin
  105. x3 := x3 + 1;
  106. gotoxy(x3, y3);
  107. write('H');
  108. x4 := x4 + 1;
  109. gotoxy(x4, y4);
  110. write('H');
  111. end;
  112. end;
  113. //--------
  114. while CQL = 1 do
  115. begin
  116. gotoxy(EXTx, EXTy);
  117. textcolor(blue); //Текст будет цветом
  118. write('O');
  119. gotoxy(x, y); //Курсор будет перемещён в точку
  120. textcolor(green); //Текст будет цветом
  121. write('o'); //Вывод текста
  122. Sym := readkey; //Значение 'Sym' клавиша
  123. if Sym = 'a' then x := x - 1; //Влево
  124. if Sym = 'w' then y := y - 1; //Вверх
  125. if Sym = 'd' then x := x + 1; //Вправо
  126. if Sym = 's' then y := y + 1; //Вниз
  127. if Sym = 'x' then begin//Закрытие
  128. gotoxy(1, 1); //Если закрытие перемещаем на новые корды
  129. clrscr; //Очистка экрана
  130. textcolor(green); //Если закрытие меняем цвет текста на зеленый
  131. writeln('Спасибо за тестирование данной фигни!'); //Если закрытие пишем хрень какую-то
  132. EXIT; //ПРЕКРАЩЕНИЕ ЦИКЛА!!!
  133. end;
  134. clrscr; //Очистка экрана
  135. x1 := 4;// |
  136. x2 := 24;// |
  137. x3 := 4;// -
  138. x4 := 4;// -
  139. y1 := 2;// |
  140. y2 := 12;// |
  141. y3 := 2;// -
  142. y4 := 12;// -
  143. //-------
  144. if lvl > 1 then begin
  145. r := r + lvl * 2;
  146. x2 := x2 + lvl * 2;
  147. y2 := y2 + lvl * 2;
  148. y4 := y4 + lvl * 2;
  149. lx := lx + lvl * 2;
  150. ly := ly + lvl * 2;
  151. end;
  152. //-------
  153. textcolor(red); //Текст будет цветом
  154. reset(output);
  155. for d := 1 to lx do
  156. begin
  157. for c := 1 to ly do
  158. begin
  159. gotoxy(v1, v2);
  160. //v1 := v1 + 1;
  161. read(output, a);
  162. if a = 0 then begin
  163. writeln('*');
  164. if (x = v1) and (y = v2) then begin//Закрытие
  165. gotoxy(1, 1); //Если закрытие перемещаем на новые корды
  166. clrscr; //Очистка экрана
  167. textcolor(green); //Если закрытие меняем цвет текста на зеленый
  168. writeln('Вы взорвались!'); //Если закрытие пишем хрень какую-то
  169. EXIT; //ПРЕКРАЩЕНИЕ ЦИКЛА!!!
  170. end;
  171. end;
  172. v1 := v1 + 1;
  173. end;
  174. v1 := 5;
  175. v2 := v2 + 1;
  176. end;
  177. close(output);
  178. v1 := 5;
  179. v2 := 3;
  180. //--------
  181. textcolor(black); //Текст будет цветом
  182. gotoxy(x1, y1); // рисуем первые квадратики арены
  183. write('H');
  184. if (x = x1) and (y = y1) then begin
  185. clrscr; //Очистка экрана
  186. EXIT;
  187. end;
  188. gotoxy(x2, y2);
  189. write('H');
  190. if (x = x2) and (y = y2) then begin
  191. clrscr; //Очистка экрана
  192. EXIT;
  193. end;
  194. gotoxy(x3, y3);
  195. write('H');
  196. if (x = x3) and (y = y3) then begin
  197. clrscr; //Очистка экрана
  198. EXIT;
  199. end;
  200. gotoxy(x4, y4);
  201. write('H');
  202. if (x = x4) and (y = y4) then begin
  203. clrscr; //Очистка экрана
  204. EXIT;
  205. end;
  206. for e1 := 1 to r do //рисуем всю арену
  207. begin
  208. textcolor(black); //Текст будет цветом
  209. y1 := y1 + 1;
  210. gotoxy(x1, y1);
  211. write('H');
  212. if (x = x1) and (y = y1) then begin
  213. clrscr; //Очистка экрана
  214. EXIT;
  215. end;
  216. y2 := y2 - 1;
  217. gotoxy(x2, y2);
  218. write('H');
  219. if (x = x2) and (y = y2) then begin
  220. clrscr; //Очистка экрана
  221. EXIT;
  222. end;
  223. for e2 := 1 to 2 do
  224. begin
  225. x3 := x3 + 1;
  226. gotoxy(x3, y3);
  227. write('H');
  228. if (x = x3) and (y = y3) then begin
  229. clrscr; //Очистка экрана
  230. EXIT;
  231. end;
  232. x4 := x4 + 1;
  233. gotoxy(x4, y4);
  234. write('H');
  235. if (x = x4) and (y = y4) then begin
  236. clrscr; //Очистка экрана
  237. EXIT;
  238. end;
  239. if (EXTx = x) and (EXTy = y) then begin
  240. gotoxy(t1, t2);
  241. CQL := 2;
  242. end;
  243. end;
  244. end;
  245. end;
  246. //-------
  247. rewrite(output);
  248. close(output);
  249. if (t1 = 2) and (t2 = 2) then begin
  250. clrscr;
  251. lvl := lvl + 1;
  252. writeln('Finish! LEVEL ', lvl);
  253. end;
  254. //--------
  255.  
  256. //--------
  257. end;
  258. readln; //Это чтоб окно сразу не закрылось
  259. end.
Advertisement
Add Comment
Please, Sign In to add comment