From 4c4b5a4dc23584b3b9375fa4448f6afb8271e36d Mon Sep 17 00:00:00 2001 From: oakes Date: Thu, 9 Jan 2014 23:41:19 -0500 Subject: [PATCH] Make function work in multithreaded code --- src/play_clj/core_render.clj | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/play_clj/core_render.clj b/src/play_clj/core_render.clj index 344ca29..6aa1877 100644 --- a/src/play_clj/core_render.clj +++ b/src/play_clj/core_render.clj @@ -13,13 +13,6 @@ (isa? (type renderer) Stage) (.draw ^Stage renderer))) -(defn tiled-map-layer - [{:keys [^BatchTiledMapRenderer renderer]} layer] - (assert renderer) - (if (isa? (type layer) MapLayer) - layer - (-> renderer .getMap .getLayers (.get ^String layer)))) - (defn tiled-map-layers [{:keys [^BatchTiledMapRenderer renderer]}] (assert renderer) @@ -27,6 +20,14 @@ (for [^long i (range (.getCount layers))] (.get layers i)))) +(defn tiled-map-layer + [screen layer] + (if (isa? (type layer) MapLayer) + layer + (->> (tiled-map-layers screen) + (filter #(= layer (.getName ^MapLayer %))) + first))) + (defn tiled-map-layer-name [screen layer] (.getName ^MapLayer (tiled-map-layer screen layer)))