home *** CD-ROM | disk | FTP | other *** search
- program movetester;
-
- var
- d:char;
- x1,
- y1,
- x2,
- y2,
- x3,
- y3,
- x4,
- y4,
- score:integer;
-
- label
- 1;
-
- begin
- score:=0;
- x4:=10;y4:=23;
- x2:=5;y2:=5;
- x1:=40;y1:=12;
- x3:=60;y3:=24;
- 1:
- clrscr;
- gotoxy(70,25);
- write('Score: ',score);
- gotoxy(1,1);
- writeln('Press ''Q'' to quit');
- gotoxy(x1,y1);
- write('O');
- gotoxy(x2,y2);
- write('X');
- gotoxy(x3,y3);
- write('X');
- gotoxy(x4,y4);
- write('X');
- read(kbd,d);
- if (d = 'q') or (d = 'Q') then halt;
- if (d = #27) and keypressed then
- begin
- read(kbd,d);
- case d of
- #72: y1:=y1-2;
- #80: y1:=y1+2;
- #75: x1:=x1-2;
- #77: x1:=x1+2;
- #71: begin
- x1:=x1-1;
- y1:=y1-1;
- end;
- #79: begin
- x1:=x1-1;
- y1:=y1+1;
- end;
- #73: begin
- x1:=x1+1;
- y1:=y1-1;
- end;
- #81: begin
- x1:=x1+1;
- y1:=y1+1;
- end;
-
- else begin
- sound(700);
- delay(400);
- nosound;
- end;
- end;
- end;
- if x1 < 1 then
- begin
- x1:=1;
- sound(500);
- delay(500);
- nosound;
- end;
- if x1 > 79 then
- begin
- x1:=79;
- sound(500);
- delay(500);
- nosound;
- end;
- if y1 < 1 then
- begin
- y1:=1;
- sound(500);
- delay(500);
- nosound;
- end;
- if y1 > 25 then
- begin
- y1:=25;
- sound(500);
- delay(500);
- nosound;
- end;
- if x2 < x1 then x2:=x2+1;
- if x2 > x1 then x2:=x2-1;
- if y2 < y1 then y2:=y2+1;
- if y2 > y1 then y2:=y2-1;
- if x3 < x1 then x3:=x3+1;
- if x3 > x1 then x3:=x3-1;
- if y3 < y1 then y3:=y3+1;
- if y3 > y1 then y3:=y3-1;
- if x4 < x1 then x4:=x4+1;
- if x4 > x1 then x4:=x4-1;
- if y4 < y1 then y4:=y4+1;
- if y4 > y1 then y4:=y4-1;
-
- if x2=x3 then
- begin
- if y2=y3 then begin x2:=x2-1;y2:=y2-1;end;
- end;
- if x2=x4 then
- begin
- if y2=y4 then begin
- x2:=x2-1;
- y2:=y2-1;
- end;
- end;
- if x3=x4 then
- begin
- if y3=y4 then
- begin
- y4:=y4-1;
- x4:=x4-1;
- end;
- end;
-
- if x2=x1 then begin
- if y2=y1 then
- begin
- gotoxy(x1-1,y1-1);
- write('Gotcha!!');
- delay(750);
- halt;
- end;
- end;
- if x3=x1 then begin
- if y3=y1 then
- begin
- gotoxy(x1-1,y1-1);
- write('Gotcha!!');
- delay(750);
- halt;
- end;
- end;
- if x4=x1 then begin
- if y4=y1 then
- begin
- gotoxy(x1-1,y1-1);
- write('Gotcha!!');
- delay(750);
- halt;
- end;
- end;
-
- score:=Score+1;
- goto 1;
- end.
-