From 49ea7602e8ea04d74600dca0cf331052706fe1a9 Mon Sep 17 00:00:00 2001 From: oakes Date: Tue, 31 Dec 2013 14:20:31 -0500 Subject: [PATCH] Allow single entities to be returned --- common/src/play_clj/core.clj | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/common/src/play_clj/core.clj b/common/src/play_clj/core.clj index 9c98e4b..34211bf 100644 --- a/common/src/play_clj/core.clj +++ b/common/src/play_clj/core.clj @@ -16,6 +16,10 @@ (load "core_global") (load "core_render") +(defn transform + [l] + (->> l list flatten (remove nil?))) + (defn defscreen* [{:keys [on-show on-render on-dispose on-hide on-pause on-resize on-resume state renderer camera] @@ -36,8 +40,7 @@ :total-time 0 :delta-time 0) on-show - vec - flatten + transform (reset! entities))) (render [delta-time] (let [total-time (+ (:total-time @screen) delta-time) @@ -45,9 +48,7 @@ :total-time total-time :delta-time delta-time)] (->> (on-render screen-map @entities) - (remove nil?) - vec - flatten + transform (reset! entities) (draw! screen-map)))) (hide [] (on-hide @screen))