Przekazuję fragment mojego kodu.
Program ma m.i za zadanie zwiększanie wartości zmiennych licznik1,licznik2,licznik3 i licznik4 o wartości napisane w pętli.
Z jakiegoś nieznanego mi powodu program nie zwiększa wartości żadnej ze zmiennych.
Oto fragment programu:
{silnik graficzny}
licznik1 :=-16;
licznik2 :=-12;
licznik3 :=1;
licznik4 :=1;
for i2:=1 to 768 do{768 to ilosc pol na ekranie (32x24)}
{wykrywa zawartosc pol}
begin
ekran := ekran+1;
if (mapax[graczx-licznik1] = 1) and (mapay[graczy-licznik2] = 1) then
begin
bar(1,1,20,20{licznik3,licznik4,licznik3+20,licznik4+20});
end;
{przetwarzanie polozenia pol na ekranie}
licznik1 := licznik1+1;
if licznik1 = 17 then
begin
licznik2 := licznik2+1;
licznik1 := -16;
end;
if licznik2 = 13 then
begin
licznik1 := -16;
licznik2 := -12;
end;
licznik3 := licznik3+20;{warunki do funkcji rysujacej pola ekranie}
if licznik3 = 641 then
begin
licznik4 := licznik4+20;
licznik3 := 1;
end;
if licznik4 = 481 then
begin
licznik4:=1;
end;
{koniec przetwarzania polozenia pol na ektanie}
end;
readkey;
end
Jedynie gdy zamiast pisać:
licznik1:=licznik1+1;
piszę:
licznik1:=i2;
wartość zmiennej licznik1 ulega zmianie ale tylko po to by po kilku powtórzeniach zamknąć program.
Co wy na to?
Mogę pokazać kod całego programu ale wydaje mi się że to nie będzie potrzebne.