Код
program igra;
uses crt;
const
left = #75;
right = #77;
up = #72;
down = #80;
var
x, y, b, i, g, f,d: integer;
c: char;
mineXe:array [1..100] of integer;
mineYe: array [1..100] of integer;
procedure net;
begin
for i:= 1 to 10 do
if (x=minexe[i]) and ( y=mineye[i]-1)or ((x=minexe[i]-2) and ( y=mineye[i]-1)) then begin
textcolor(lightred);
gotoxy(35,3); writeln('Mine was deleted!!!');
readkey;
clrsrc;
minexe[i]:=0;
mineye[i]:=0;
end;
end;
procedure show_man;
begin
textcolor(yellow);
gotoxy(x, y+0); write(' O');
gotoxy(x, y+1); write('XXX');
gotoxy(x, y+2); write(' X');
gotoxy(x, y+3); write('X X');
end;
procedure fill;
begin
randomize;
for i:= 1 to 10 do begin
minexe[i]:=random(50);
mineye[i]:=random(50);
end;
end;
procedure boom;
begin
for i:=1 to 10 do begin
textcolor(red);
gotoxy(minexe[i], mineye[i]); write('@');
end;
end;
procedure min;
begin
for i:= 1 to 10 do begin
if (x=minexe[i]) and ( y=mineye[i]-3)or ((x=minexe[i]-2) and ( y=mineye[i]-3)) then begin
clrscr;
textcolor(lightred);
gotoxy(35,3); writeln('You are dead!!!');
textcolor(lightgray);
readkey; halt;
end;
end;
end;
begin
clrscr;
gotoxy(35,3); writeln('Choose level:');
gotoxy(35,4); writeln('1. Legko');
gotoxy(35,5); writeln('2. Slozno');
read(d);
case d of
1: d:=150;
2: d:=50;
end;
b := 0;
x :=5; y :=20;
fill;
show_man;
boom; min;
repeat
c:=readkey;
case c of
#0:
case readkey of
left : dec(x);
right: inc(x);
up : dec(y);
down : inc(y);
' ': net;
end;
end;
clrscr;
show_man;
boom; min;
b:=b+1;
until b=d;
readkey;
end.
не могу понять, почему не работает, она должна при подводе руки к мине и нажатии пробела должна удалять мину, а она этого не делает???