         (.setColor g (Color/BLACK))
         (let [rect (.getClipBounds g)]
             (.fillRect g (.x rect) (.y rect) (.width rect) (.height rect)))
-        (draw-player (:player state) g))
+        (doseq [s (:sparkles state)] (draw-sparkle s g))
         (doseq [a (:asteroids state)] (draw-asteroid a g))
-        (doseq [b (:bullets state)] (draw-bullet b g)))
+        (doseq [b (:bullets state)] (draw-bullet b g))
+        (draw-player (:player state) g)
+))
 
 (defn create-component [game-state]
     (doto

(def player-efficiency 0.7)
(def bullet-efficiency 0.5)
(def bullet-acceleration 200)

(def width 640)
(def height 480)

                :next-fire-time
                    (if spawn-new-bullet
                        (+ new-time fire-delay)
                        (:next-fire-time state))
                :sparkles
                    (doall (map (fn [s] (step-thing s time-step))
                        (concat
                            (make-new-sparkles (cons (:player state) (:bullets state)) time-step)
                            (filter sparkle-is-alive (:sparkles state))))))
        [fb fa]
            (filter-collisions (:bullets state) (:asteroids state))
        state
