     (set-screen! this main-screen)))
 
 (defn change-ship [screen entities]
-  (->> entities
-       (map (fn [entity]
-              (cond (:ship? entity)
-                    (assoc entity :entities (create-pixel-ship-play-clj))
-              )))
+  (let [seed (rand-int Integer/MAX_VALUE)]
+    (->> entities
+         (map (fn [entity]
+                (cond (:ship? entity)
+                      (assoc entity :entities (create-pixel-ship-play-clj seed))
+                      (:ship-texture? entity)
+                      (assoc (create-pixel-ship-texture seed) :x 400 :y 400 :width 64 :height 64
+                        :id :pixel-ship-texture :ship-texture? true)
+                )))
 
-       ))
+         )))
 
 (def p-per-c 20)
 

         shape-builder (fn[s] (reduce (fn[acc n] (conj acc (custom-shape n))) [] s))]
     (reduce (fn[acc tag](concat (shape-builder (tag pixels)) acc)) [] tags))))

(defscreen main-screen
  :on-show
  (fn [screen entities]
    (let [screen (update! screen :renderer (stage))
          pixel-ship (create-entity screen)]
      [(assoc pixel-ship :entities (create-pixel-ship-play-clj Integer/MAX_VALUE)
         :id :pixel-ship :ship? true :x 200 :y 200 :angle 180)]
      ))

  :on-render

(ns pixel-ship-play-clj.core
  (:require [play-clj.core :refer :all]
            [play-clj.ui :refer :all]
            [play-clj.g2d :refer [texture]]
            [pixel-ships.core :as psc :refer :all]
            [pixel-ships.bollinger :as bollinger :refer :all]
            [clojure.pprint :refer :all])
  (:import [com.badlogic.gdx.graphics Pixmap Texture TextureData Pixmap$Format]))

(declare create-pixel-ship-play-clj custom-shape play-clj-color hsv-to-rgb change-ship draw-rect-pixelmap)

(defn create-entity [screen]
  (let [pixel-ship (bundle nil)]
