Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- uses
- crt;//Подрубаем модуль, без него не работает
- var
- 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;
- Sym: char;//Значение 'Sym' - будет только для знаков (букв)
- begin
- textbackground(white); //Перекраска фона
- clrscr; //Очистка экрана и применени цвета фона
- lx := 14;//лабик
- ly := 14;//лабик
- l := lx * ly;//лабик
- r := 16;//арена
- EXTx := 19;
- EXTy := 17;
- t1 := 2;
- t2 := 2;
- lvl := 1;
- for g := 1 to 3 do
- begin
- x := 5; //Корды перемеения курсора -
- y := 3; //Корды перемеения курсора |
- x1 := 4;// |
- x2 := 20;// |
- x3 := 4;// -
- x4 := 4;// -
- y1 := 2;// |
- y2 := 18;// |
- y3 := 2;// -
- y4 := 18;// -
- CQL := 1;//часть цикла
- //-------
- if lvl = 2 then begin
- r := r + 5;
- x2 := x2 + 5;
- y2 := y2 + 5;
- y4 := y4 + 5;
- end;
- if lvl = 3 then begin
- r := r + 10;
- x2 := x2 + 10;
- y2 := y2 + 10;
- y4 := y4 + 10;
- end;
- //-------
- textcolor(black); //Текст будет цветом
- gotoxy(x1, y1); // рисуем первые квадратики арены
- write('H');
- gotoxy(x2, y2);
- write('H');
- gotoxy(x3, y3);
- write('H');
- gotoxy(x4, y4);
- write('H');
- //--------
- textcolor(red); //Текст будет цветом
- v1 := 5;
- v2 := 3;
- assign(output, 'lvl.txt');
- rewrite(output);
- for d := 1 to l do
- begin
- a := random(5);
- writeln(a);
- end;
- close(output);
- reset(output);
- for d := 1 to lx do
- begin
- for c := 1 to ly do
- begin
- gotoxy(v1, v2);
- //v1 := v1 + 1;
- read(output, a);
- if a = 1 then begin
- writeln('*');
- if (x = v1) and (y = v2) then begin
- gotoxy(1, 1); //Если закрытие перемещаем на новые корды
- clrscr; //Очистка экрана
- textcolor(green); //Если закрытие меняем цвет текста на зеленый
- writeln('Спасибо за тестирование данной фигни'); //Если закрытие пишем хрень какую-то
- EXIT; //ПРЕКРАЩЕНИЕ ЦИКЛА!!!
- end;
- end;
- v1 := v1 + 1;
- end;
- v1 := 5;
- v2 := v2 + 1;
- end;
- v1 := 5;
- v2 := 3;
- close(output);
- //--------
- for e1 := 1 to r do //рисуем всю арену
- begin
- textcolor(black); //Текст будет цветом
- y1 := y1 + 1;
- gotoxy(x1, y1);
- write('H');
- y2 := y2 - 1;
- gotoxy(x2, y2);
- write('H');
- x3 := x3 + 1;
- gotoxy(x3, y3);
- write('H');
- x4 := x4 + 1;
- gotoxy(x4, y4);
- write('H');
- end;
- //--------
- while CQL = 1 do
- begin
- gotoxy(EXTx, EXTy);
- textcolor(blue); //Текст будет цветом
- write('O');
- gotoxy(x, y); //Курсор будет перемещён в точку
- textcolor(green); //Текст будет цветом
- write('o'); //Вывод текста
- Sym := readkey; //Значение 'Sym' клавиша
- if Sym = 'a' then x := x - 1; //Влево
- if Sym = 'w' then y := y - 1; //Вверх
- if Sym = 'd' then x := x + 1; //Вправо
- if Sym = 's' then y := y + 1; //Вниз
- if Sym = 'x' then begin//Закрытие
- gotoxy(1, 1); //Если закрытие перемещаем на новые корды
- clrscr; //Очистка экрана
- textcolor(green); //Если закрытие меняем цвет текста на зеленый
- writeln('Спасибо за тестирование данной фигни'); //Если закрытие пишем хрень какую-то
- EXIT; //ПРЕКРАЩЕНИЕ ЦИКЛА!!!
- end;
- clrscr; //Очистка экрана
- x1 := 4;// |
- x2 := 20;// |
- x3 := 4;// -
- x4 := 4;// -
- y1 := 2;// |
- y2 := 18;// |
- y3 := 2;// -
- y4 := 18;// -
- //--------
- //-------
- if lvl = 2 then begin
- //r := r + 5;
- x2 := x2 + 5;
- y2 := y2 + 5;
- y4 := y4 + 5;
- end;
- if lvl = 3 then begin
- //r := r + 10;
- x2 := x2 + 10;
- y2 := y2 + 10;
- y4 := y4 + 10;
- end;
- //-------
- textcolor(red); //Текст будет цветом
- reset(output);
- for d := 1 to lx do
- begin
- for c := 1 to ly do
- begin
- gotoxy(v1, v2);
- //v1 := v1 + 1;
- read(output, a);
- if a = 1 then begin
- writeln('*');
- if (x = v1) and (y = v2) then begin//Закрытие
- gotoxy(1, 1); //Если закрытие перемещаем на новые корды
- clrscr; //Очистка экрана
- textcolor(green); //Если закрытие меняем цвет текста на зеленый
- writeln('Спасибо за тестирование данной фигни'); //Если закрытие пишем хрень какую-то
- EXIT; //ПРЕКРАЩЕНИЕ ЦИКЛА!!!
- end;
- end;
- v1 := v1 + 1;
- end;
- v1 := 5;
- v2 := v2 + 1;
- end;
- close(output);
- v1 := 5;
- v2 := 3;
- //--------
- textcolor(black); //Текст будет цветом
- gotoxy(x1, y1); // рисуем первые квадратики арены
- write('H');
- if (x = x1) and (y = y1) then begin
- clrscr; //Очистка экрана
- EXIT;
- end;
- gotoxy(x2, y2);
- write('H');
- if (x = x2) and (y = y2) then begin
- clrscr; //Очистка экрана
- EXIT;
- end;
- gotoxy(x3, y3);
- write('H');
- if (x = x3) and (y = y3) then begin
- clrscr; //Очистка экрана
- EXIT;
- end;
- gotoxy(x4, y4);
- write('H');
- if (x = x4) and (y = y4) then begin
- clrscr; //Очистка экрана
- EXIT;
- end;
- for e1 := 1 to r do //рисуем всю арену
- begin
- textcolor(black); //Текст будет цветом
- y1 := y1 + 1;
- gotoxy(x1, y1);
- write('H');
- if (x = x1) and (y = y1) then begin
- clrscr; //Очистка экрана
- EXIT;
- end;
- y2 := y2 - 1;
- gotoxy(x2, y2);
- write('H');
- if (x = x2) and (y = y2) then begin
- clrscr; //Очистка экрана
- EXIT;
- end;
- x3 := x3 + 1;
- gotoxy(x3, y3);
- write('H');
- if (x = x3) and (y = y3) then begin
- clrscr; //Очистка экрана
- EXIT;
- end;
- x4 := x4 + 1;
- gotoxy(x4, y4);
- write('H');
- if (x = x4) and (y = y4) then begin
- clrscr; //Очистка экрана
- EXIT;
- end;
- if (EXTx = x) and (EXTy = y) then begin
- gotoxy(t1, t2);
- CQL := 2;
- end;
- end;
- end;
- //-------
- rewrite(output);
- close(output);
- if (t1 = 2) and (t2 = 2) then begin
- clrscr;
- lvl := lvl + 1;
- writeln('Finish! LEVEL ', lvl);
- end;
- //--------
- //--------
- end;
- readln; //Это чтоб окно сразу не закрылось
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement