1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
| ;*****************************************************************************
;*
;* Name : Dots
;* Author : Petr Vavrin (peterb)
;* Date : 15.06.09
;* Notes :
;*
;* Adaptation SpiderBasic Comtois , le 28/02/16
;*****************************************************************************
Macro SinCos(a,b)
(Sin(a)+Cos(b))
EndMacro
#p=#PI/180
#n=0.001
Global Dim x(k)
Global Dim y(k)
Global Dim v.f(k)
Global Dim w(k)
Global Size=400
InitSprite()
OpenWindow(0,0,0,Size,Size,"",$C80001)
OpenWindowedScreen(WindowID(0),0,0,Size,Size,1,0,0)
CreateSprite(0,Size,Size)
Nb=1
l=30
While l
m=0
While m<360
LoadSprite(Nb, "Data/78-32x32x32.png",#PB_Sprite_AlphaBlending)
nb + 1
m+60
Wend
l-1
Wend
Procedure RenderFrame()
Static.f a,b,c,e,f,g,i,s=20
Static h=99,k=99
If h=k
e=Random(k)
f=Random(k)
g=Random(k)
i.f=s-Random(50)
h=0
EndIf
h+1
a.f+#n*e
b.f+#n*f
c.f+#n*g
s-i/k
x(0)=SinCos(a,b)*30+Size/2
y(0)=SinCos(b,a)*30+Size/2
v(0)=c
w(0)=s
l=30
nb=1
While l
n=l-1
x(l)=x(n)
y(l)=y(n)
v(l)=v(n)
w(l)=w(n)
m=0
While m<360
t.f=m*#p+v(l)
u.f=#p-v
ZoomSprite(Nb, 25, 25)
DisplayTransparentSprite(Nb,x(l)+SinCos(t,u)*w(l),y(l)+SinCos(u,t)*w(l),255-(l*8))
Nb + 1
m+60
Wend
l-1
Wend
FlipBuffers() ; continue the rendering
EndProcedure
FlipBuffers() ; start the rendering
BindEvent(#PB_Event_RenderFrame, @RenderFrame()) |
Partager