From 6a3bbf07b61a964e8aa8a41eea2bf496590f1905 Mon Sep 17 00:00:00 2001 From: oakes Date: Mon, 7 Apr 2014 11:26:10 -0400 Subject: [PATCH] Fix camera behavior --- src/play_clj/core_cameras.clj | 4 +--- src/play_clj/core_listeners.clj | 7 +++++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/play_clj/core_cameras.clj b/src/play_clj/core_cameras.clj index 80ab516..e01f55a 100644 --- a/src/play_clj/core_cameras.clj +++ b/src/play_clj/core_cameras.clj @@ -39,15 +39,13 @@ (u/call! object# ~k ~@options))) (defn size! - "Sets the size of the camera in `screen` and recenters it. + "Sets the size of the camera in `screen`. (size! screen 480 360)" [screen width height] (let [^Camera camera (u/get-obj screen :camera)] (set! (. camera viewportWidth) width) (set! (. camera viewportHeight) height) - (set! (. (. camera position) x) (/ width 2)) - (set! (. (. camera position) y) (/ height 2)) (.update camera))) (defn width diff --git a/src/play_clj/core_listeners.clj b/src/play_clj/core_listeners.clj index 84493c8..b4a17a8 100644 --- a/src/play_clj/core_listeners.clj +++ b/src/play_clj/core_listeners.clj @@ -163,7 +163,8 @@ ; g2d-physics (defn ^:private contact-listener - [{:keys [on-begin-contact on-end-contact on-post-solve on-pre-solve]} execute-fn!] + [{:keys [on-begin-contact on-end-contact on-post-solve on-pre-solve]} + execute-fn!] (reify ContactListener (beginContact [this c] (execute-fn! on-begin-contact :contact c)) @@ -180,7 +181,9 @@ ([{:keys [^Stage renderer ^Camera camera] :as screen}] (when camera (doto (.getViewport renderer) - (.setCamera camera)))) + (.setCamera camera) + (.setWorldSize (. camera viewportWidth) (. camera viewportHeight)) + (.update (game :width) (game :height) true)))) ([{:keys [^Stage renderer ui-listeners]} entities] (doseq [^Actor a (.getActors renderer)] (.remove a))