Помогите расскомментирвоать, написанную игру как можно более подробно. Заранее очень благодарен.
{Originally from Frederic Gaonac'h }program memcards;
uses crt, graph;
type tableau= array[1..8,1..8] of integer;
procedure info;
var i, j, k: integer;
beginfor i:=1to2dobeginif i=1then
setcolor(3)
else setcolor(0);
outtextxy(200,20,'Programming:');
outtextxy(5,70,'Left: 1');
outtextxy(5,90,'Right: 3');
outtextxy(5,110,'Up: 5');
outtextxy(5,130,'Down: 2');
outtextxy(520,70,'Validate: ESP');
outtextxy(520,90,'Sound/Sil.: S');
outtextxy(520,110,'I wanna quit: Q');
outtextxy(140,460,'The goal is to get the same colours together');
if i=1thenbeginrepeatfor j:=1to20dobeginfor k:=1to2dobeginif k=1then setcolor(4) else setcolor(0);
outtextxy(310+1*j,20,'F');
outtextxy(320+2*j,20,'r');
outtextxy(330+3*j,20,'e');
outtextxy(340+4*j,20,'d');
if k=1then delay(700);
end;
end;
for j:=20downto1dobeginfor k:=1to2dobeginif k=1then setcolor(4) else setcolor(0);
outtextxy(310+1*j,20,'F');
outtextxy(320+2*j,20,'r');
outtextxy(330+3*j,20,'e');
outtextxy(340+4*j,20,'d');
if k=1then delay(700);
end;
end;
until keypressed;
end;
end;
end;
procedure gagne;
var i, j, k: integer;
begin
settextstyle(1,0,4);
repeatfor j:=1to20dobeginfor k:=1to2dobeginif k=1then setcolor(4) else setcolor(0);
outtextxy(250+1*j,10,'G');
outtextxy(270+2*j,10,'r');
outtextxy(290+3*j,10,'e');
outtextxy(310+4*j,10,'a');
outtextxy(330+5*j,10,'t');
if k=1then delay(700);
end;
end;
for j:=20downto1dobeginfor k:=1to2dobeginif k=1then setcolor(4) else setcolor(0);
outtextxy(250+1*j,10,'G');
outtextxy(270+2*j,10,'r');
outtextxy(290+3*j,10,'e');
outtextxy(310+4*j,10,'a');
outtextxy(330+5*j,10,'t');
if k=1then delay(700);
end;
end;
until keypressed;
end;
var a, b, cc, i, j, k, n, x, y, ca, co, pilote, mode: integer;
t, tt: tableau;
test , son, efface1, efface2: boolean;
s: string;
blank: pointer;
begin
pilote:=detect;
initGraph(pilote,mode,'c:\tp\bgi');
clearviewport;
setcolor(10);
setbkcolor(black);
setfillstyle(1,0);
son:=false;
for j:=1to9dobegin
line(110,j*50,510,j*50);
end;
for i:=1to9dobegin
line(i*50+60,50,i*50+60,450);
end;
for a:=1to8dobeginfor b:=1to8dobegin
t[a,b]:=0;
tt[a,b]:=0;
end;
end;
randomize;
for a:=1to8dobeginfor b:=1to8dobeginrepeat
i:=random(8)+1;
j:=random(8)+1;
until t[i,j]=0;
if a<>6then t[i,j]:=a else t[i,j]:=23;
end;
end;
for a:=1to8dobeginfor b:=1to8dobeginif t[a,b]=7then t[a,b]:=14;
end;
end;
ca:=4;
co:=4;
cc:=0;
efface1:=true;
efface2:=false;
setcolor(13);
x:=100;
y:=100;
test:=false;
n:=0;
setcolor(3);
str(n,s);
outtextxy(160,35,s);
outtextxy(110,35,'Tries: Info:I');
repeatif efface1 thenbegin
setcolor(13);
rectangle(ca*50+75,co*50+15,ca*50+95,co*50+35);
setfillstyle(1,13);
floodfill(ca*50+80,co*50+20,13);
end;
if efface2 thenbegin
setcolor(0);
rectangle(ca*50+75,co*50+15,ca*50+95,co*50+35);
setfillstyle(1,0);
floodfill(ca*50+80,co*50+20,0);
end;
k:=ord(readkey);
if son thenbegin
sound(1000);
delay(70);
nosound;
end;
if efface1 thenbegin
setfillstyle(1,0);
floodfill(ca*50+80,co*50+20,10);
end;
if efface2 thenbegin
setfillstyle(1,t[ca,co]);
floodfill(ca*50+80,co*50+20,10);
end;
if (k=ord('3'))and(ca<8)and((ca<>x-1)or(co<>y)) thenbeginif tt[ca+1,co]=0thenbegin
efface1:=true;
efface2:=false;
endelsebegin
efface2:=true;
efface1:=false;
end;
ca:=ca+1;
end;
if (k=ord('1'))and(ca>1)and((ca<>x+1)or(co<>y)) thenbeginif tt[ca-1,co]=0thenbegin
efface1:=true;
efface2:=false;
endelsebegin
efface2:=true;
efface1:=false;
end;
ca:=ca-1;
end;
if (k=ord('2'))and(co<8)and((co<>y-1)or(ca<>x)) thenbeginif tt[ca,co+1]=0thenbegin
efface1:=true;
efface2:=false;
endelsebegin
efface2:=true;
efface1:=false;
end;
co:=co+1;
end;
if (k=ord('5'))and(co>1)and((co<>y+1)or(ca<>x)) thenbeginif tt[ca,co-1]=0thenbegin
efface1:=true;
efface2:=false;
endelsebegin
efface2:=true;
efface1:=false;
end;
co:=co-1;
end;
if (k=ord(' '))and((ca<>x)or(co<>y))and(tt[ca,co]=0) thenbegin
setfillstyle(1,t[ca,co]);
floodfill(ca*50+80,co*50+20,10);
if x=100thenbegin
x:=ca;
y:=co;
cc:=t[ca,co];
efface1:=false;
efface2:=false;
endelsebegin
setcolor(0);
str(n,s);
outtextxy(160,35,s);
n:=n+1;
setcolor(3);
str(n,s);
outtextxy(160,35,s);
if (t[ca,co]<>cc) thenbeginif son thenbegin
sound(200);
delay(500);
nosound;
end;
repeatuntil keypressed;
setfillstyle(1,0);
floodfill(ca*50+80,co*50+20,10);
setfillstyle(1,0);
floodfill(x*50+80,y*50+20,10);
efface1:=true;
efface2:=false;
endelsebeginif son thenbegin
sound(2000);
delay(500);
nosound;
end;
tt[x,y]:=cc;
tt[ca,co]:=t[ca,co];
efface1:=false;
efface2:=false;
test:=true;
for i:=1to8dofor j:=1to8doif tt[i,j]=0then test:=false;
end;
x:=100;
y:=100;
end;
end;
if k=ord('s') thenif son=true then son:=false else son:=true;
if k=ord('i') then info;
until (k=ord('q'))or(test=true);
if test=true then gagne;
closegraph;
end.
capelo
3.11.2023 16:50
Карточные игры - одни из древнейших азартных игр. В наше же время на официальном сайте вавада казино вы можете найти как карточные игры такие как блекджек, покер или баккара, так и современные игровые автоматы, где в мгновение можно стать миллионером.
nitacew
15.11.2023 16:39
Активируйте азарт на полную вместе с вавада казино. Только представьте, там вас ждут увлекательные и волнующие игры с возможностью заработка реальных денег онлайн - все это и многое другое на официальном сайте казино Vavada.
momefa021
21.11.2023 16:37
Играйте и посетите официальный сайт вавада казино для успешного заработка и крупных побед. Официальный сайт казино Vavada приглашает вас окунуться в захватывающий мир онлайн-слотов, где каждый спин может превратиться в волнующее приключение.
wexicag
11.12.2023 19:15
Играю в vavada casino уже несколько месяцев, и каждый раз получаю удовольствие от азарта и атмосферы казино. Очень удобный вход на официальном сайте, отличный выбор слотов и рулетки. Быстрый вывод выигрышей – это то, что я ценю в Vavada казино. Рекомендую всем азартным душам!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.