Set Window On
Set Display Mode 800,400,32
Set Window Size 400,400
 
 
 
Dim Dots(200) as ADot
 
Type ADot
   c as Dword
   px as Float
   py as Float
   mx as Float
   my as Float
EndType
 
For i = 0 to 200
   Dots(i).c=Rgb(rnd(255),rnd(255),rnd(255))
   Dots(i).px=rnd(800)
   Dots(i).py=Rnd(400)
Next i
 
 
 
x=100
y=100
cx as float
cy as float
Do
   cls
   Set Window Position x,y
   cx=mousemovex():cy=mousemovey()
   x=x+cx
   y=y+cy
   Lock Pixels
   For i = 0 to 200
      lx#=Dots(i).px
      ly#=Dots(i).py
      Dots(i).px=Dots(i).px+(Dots(i).mx*.98)
      Dots(i).py=Dots(i).py+(Dots(i).my*.98)
      Dots(i).px=(Dots(i).px-cx*.3)
      Dots(i).py=(Dots(i).py-cy*.3)+.5
      if Dots(i).px<0 Then Dots(i).px=-Dots(i).px+rnd(20.0)/10.0
      if Dots(i).px>799 Then Dots(i).px=799-(Dots(i).px-799)-rnd(20.0)/10.0
      if Dots(i).py<0 Then Dots(i).py=-Dots(i).py+rnd(20.0)/10.0
      if Dots(i).py>399 Then Dots(i).py=399-(Dots(i).py-399)-rnd(20.0)/10.0
      Dots(i).mx=Dots(i).px-lx#
      Dots(i).my=Dots(i).py-ly#
      Ink Dots(i).c,0
      Box Dots(i).px,Dots(i).py,Dots(i).px+3,Dots(i).py+3
   Next i
   Unlock Pixels
Loop