Помощь - Поиск - Пользователи - Календарь
Полная версия: Человек прямо ходящий
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Костян
Здорово народ, нужна ваша помощь. Недавно написал простенькую прогу- заставляет нечто похожее на человека передвигатся по экрану в соответствии с нажатыми клавишами. Вопрос: Как создать для него подобие лабиринта из символов(все сделано на модуле CRT) и сделать так, чтобы этот чел не мог проходить через стены лабиринта.Буду очень благодарен. blink.gif
Код
program igra;
uses crt;
const
 left=#75; right=#77; up=#72; down=#80;
var
 x, y,x2, y2, x3, y3, x4, y4, b: integer;
 c: char;


begin
 clrscr;
 x:=5;
 y:=1;
 x2:=4;
 y2:=2;
 x3:=5;
 y3:=3;
 x4:=4;
 y4:=4;

 TEXTCOLOR(BLUE);
  gotoxy(x,y);
 write('O');
  gotoxy(x2,y2);
 write('XXX');
  gotoxy(x3,y3);
 write('X');
  gotoxy(x4,y4);
 write('X X');

 repeat
   c:=readkey;
   case c of
   #0: case readkey of
    left: begin
  clrscr;
  x:=x-1;
  x2:=x2-1;
  x3:=x3-1;
  x4:=x4-1;
  gotoxy(x,y);
  write('O');
  gotoxy(x2,y2);
  write('XXX');
  gotoxy(x3,y3);
  write('X');
  gotoxy(x4,y4);
  write('X X');

   b:=b+1;
    end;
    right: begin
  clrscr;
  x:=x+1;
  x2:=x2+1;
  x3:=x3+1;
  x4:=x4+1;

  gotoxy(x,y);
  write('O');
  gotoxy(x2,y2);
  write('XXX');
  gotoxy(x3,y3);
  write('X');
  gotoxy(x4,y4);
  write('X X');

  b:=b+1;
    end;
    up: begin
  clrscr;
  y:=y-1;
  y2:=y2-1;
  y3:=y3-1;
  y4:=y4-1;

  gotoxy(x,y);
  write('O');
  gotoxy(x2,y2);
  write('XXX');
  gotoxy(x3,y3);
  write('X');
  gotoxy(x4,y4);
  write('X X');

  b:=b+1;
    end;
    down: begin
  clrscr;
  y:=y+1;
  y2:=y2+1;
  y3:=y3+1;
  y4:=y4+1;

  gotoxy(x,y);
  write('O');
  gotoxy(x2,y2);
  write('XXX');
  gotoxy(x3,y3);
  write('X');
  gotoxy(x4,y4);
  write('X X');

  b:=b+1;
    end;

    end;

   end;

 until b=100;
 readkey;
end.
Костян
Это все конечно круто, но мне нужно попроще и именно в мою прогу. ПОМОГИТЕ.... УМОЛЯЮ...... blink.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.