Hamikadze

ver4.game.upd_3(with psevdo lvls)

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