Set a texture entity's width and height when it is first created

This commit is contained in:
oakes
2014-01-19 15:10:54 -05:00
parent 54f03ec0ed
commit 9eba3bb28a
2 changed files with 8 additions and 8 deletions

View File

@@ -159,13 +159,10 @@
(.draw object batch 1))
(defmethod draw-entity! :texture
[^SpriteBatch batch {:keys [^TextureRegion object x y width height]}]
[^SpriteBatch batch {:keys [^TextureRegion object x y width height]
:or {x 0 y 0}}]
(assert object)
(let [x (float (or x 0))
y (float (or y 0))
width (float (or width (.getRegionWidth object)))
height (float (or height (.getRegionHeight object)))]
(.draw batch object x y width height)))
(.draw batch object (float x) (float y) (float width) (float height)))
(defn draw! [{:keys [renderer] :as screen} entities]
(assert renderer)

View File

@@ -137,8 +137,11 @@
(defmulti create-entity class)
(defmethod create-entity TextureRegion
[obj]
{:type :texture :object obj})
[^TextureRegion obj]
{:type :texture
:object obj
:width (.getRegionWidth obj)
:height (.getRegionHeight obj)})
(defmethod create-entity Actor
[obj]