Pascal probléma. Ez miért van, mit csináljak vele hogy jó legyen? (lent)
a kód részlet egy Tetrisből van:
for i:=1 to 50 do
begin
if keypressed
then
begin
c:=readkey;
nincsM:=true;
case c of
#75:begin
checkL;
if nincsM
then
begin
torol;
for j:=1 to 4 do
dec(alak[j].oszlop);
kirajzol;
end;
end;
#77:begin
checkR;
if nincsM
then
begin
torol;
for j:=1 to 4 do
inc(alak[j].oszlop);
kirajzol;
end;
end;
#32:fordul(melyik);
end;
end;
delay(20); //ez később csökken csak még nem csináltam meg
end;
na már most ez azt csinálja, hogy alakzatot elmozdítja jobbra vagy balra vagy elfordítja azt
a hiba az hogy amíg a for cikluson belül vagyok és megnyomom az egyik gombot akkor (nem tudom valószínű hogy újra elkezdi a ciklust) ugye megcsinálja amit akarok,de ha 1 mp-en belül újra megnyomom a gombot többször akkor ott marad az alakzat ahol van, de közben reagál a gombokra, csak akkor megy lejjebb (lép ki a ciklusból) ha hagyom hogy le teljen az 1 másodperc
Kérdés: hogy oldjam meg hogy mindenképp kilépjen 1 mp-n beül?
ui.: azt is próbáltam már hogy mindig figyelem az idő múlását (while) és ha letelt 1 sec akkor kilép, de akkor sem lépett ki
talán így jobban érthető:
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!