@QUAD,
post #66
Panowie programiści mam problem
w wolnych chwilach znowu dziobię z moimi kulkami, problem jest taki że jak już zrobiłem wszystko z tablicą i ładnie się kolorki zapisują itp, nie mam teraz pomysłu jak zrobić żeby animacja była płynniejsza, kulki przeskakują o 15px czyli o swoją szerokość, ale chcę żeby się przesuwały płynnie o 1px, poniżej mój kod do wglądu, znowu pewnie wcięcia się rozjadą i będzie mniej czytelny :P
Screen Open 1,320,256,32,Lowres
Double Buffer
Get Bob Palette
Flash Off : Curs Off : Hide On : Cls 0
Dim QPA(7,18)
Rem // ograniczenie lewo
For L=0 To 18
QPA(0,L)=9
Next L
Rem // ograniczenie prawo
For P=0 To 18
QPA(7,P)=9
Next P
Rem // ograniczenie dol
For D=0 To 7
QPA(D,18)=8
Next D
POCZATEK:
Y=0
X=3
Rem // losowanie koloru
KOL1=Rnd(1)+1
KOL2=Rnd(1)+1
KOL3=Rnd(1)+1
Do
Inc Y
Rem // rysowanie bobow
Bob 1,X*15,-60+(Y*15),KOL1
Bob 2,X*15,-45+(Y*15),KOL2
Bob 3,X*15,-30+(Y*15),KOL3
Rem // wklejanie bobow po zatrzymaniu sie na koncu tablicy (lub natrafieniu na inny klocek)
Rem // zapisanie wartosci do tablicy
If QPA(X,Y)<>0 and QPA(X,Y)<>9
Paste Bob X*15,-60+(Y*15),KOL1
Paste Bob X*15,-45+(Y*15),KOL2
Paste Bob X*15,-30+(Y*15),KOL3
QPA(X,Y-1)=KOL3
QPA(X,Y-2)=KOL2
QPA(X,Y-3)=KOL1
Gosub POCZATEK
End If
Wait Vbl
Wait 7
Rem // sprawdzanie przycisniecia odpowiedniego klawisza
If Key State(78)=True and QPA(X,Y)=0 Then Gosub PRAWO
If Key State(79)=True and QPA(X,Y)=0 Then Gosub LEWO
If Key State(77)=True and QPA(X,Y)=0 Then Gosub WDOL
If Key State(76)=True Then Gosub ZMIANA_KOLORU
Loop
WDOL:
Inc Y
If QPA(X,Y)<>0
Dec Y
End If
Return
LEWO:
Dec X
If QPA(X,Y)<>0
Inc X
End If
Return
PRAWO:
Inc X
If QPA(X,Y)<>0
Dec X
End If
Return
ZMIANA_KOLORU:
Swap KOL1,KOL2 : Swap KOL2,KOL3
Return