(let* ((width 6000)
       (height 6000)
       (nshapes 90)
       (sizelength 200)
       (maxsides 7)
       (downtimes 10)
       (xs (random-vector nshapes 0 width))
       (ys (random-vector nshapes 0 height))
)


  (with-movie (m "test.swf" :width width
                 :height height
                 :frame-rate 12
                 :bgcolor *white*
)


    ;; create the curved stars and place them randomly

    (dotimes (i nshapes)
      (add-shape m (1+ i) (1+ i)
                    (draw-shape
                     (make-curved-star-path
                      (xrandom 3 maxsides)
                      (+ (* i 5) sizelength)
                      (+ (* i 5) 1000)
)

                     :fill-color (random-argb)
)

                    (aref xs i)
                    (aref ys i)
)
                    
      (add-tag m (make-tag-showframe))
)


    ;; make the stars fall

    (dotimes (i nshapes)
      (dotimes (j downtimes)
        (add-tag m (make-tag-place-object2
                    :move t
                    :depth (- nshapes i)
                    :matrix (translation-matrix (aref xs (- nshapes (1+ i)))
                                                (+ (aref ys (- nshapes (1+ i)))
                                                   (* j (/ height downtimes))
)
)
)
)

        (add-tag m (make-tag-showframe))
)
)

    (add-tag m (make-tag-end))
)
)