From d42dc3e55ce51fb2b462b72bee4d7746082d1171 Mon Sep 17 00:00:00 2001 From: oakes Date: Sun, 6 Apr 2014 14:31:55 -0400 Subject: [PATCH] Allow changing shape position via assoc --- src/play_clj/entities.clj | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/play_clj/entities.clj b/src/play_clj/entities.clj index 871e9e9..1b1653a 100644 --- a/src/play_clj/entities.clj +++ b/src/play_clj/entities.clj @@ -5,6 +5,7 @@ TextureRegion] [com.badlogic.gdx.graphics.g3d Environment ModelBatch ModelInstance] [com.badlogic.gdx.graphics.glutils ShapeRenderer] + [com.badlogic.gdx.math Matrix4] [com.badlogic.gdx.scenes.scene2d Actor])) (defprotocol Entity @@ -59,9 +60,14 @@ (.render renderer object attributes))) (defrecord ShapeEntity [object] Entity - (draw-entity! [{:keys [^ShapeRenderer object type draw!]} + (draw-entity! [{:keys [^ShapeRenderer object type draw! x y z]} {:keys [^Camera camera]} _] + (let [^Matrix4 m (.getTransformMatrix object) + x (float (or x 0)) + y (float (or y 0)) + z (float (or z 0))] + (.setTranslation m x y z)) (when camera (.setProjectionMatrix object (. camera combined))) (.begin object type)