hacks to support a map as entities.

This commit is contained in:
2015-03-04 13:37:06 -08:00
parent 942b3ae7f4
commit a78b703b8d

View File

@@ -190,16 +190,18 @@ in the `screen`."
(doto (.getViewport renderer)
(.setCamera camera)
(.setWorldSize (. camera viewportWidth) (. camera viewportHeight)))))
([{:keys [^Stage renderer ui-listeners]} entities]
(doseq [^Actor a (.getActors renderer)]
(.remove a))
(doseq [{:keys [object]} entities]
(when (isa? (type object) Actor)
(.addActor renderer object)
(doseq [[_ listener] ui-listeners]
(.addListener ^Actor object listener))))
(remove-input! renderer)
(add-input! renderer)))
([{:keys [^Stage renderer ui-listeners]} [entities]]
(doseq [^Actor a (.getActors renderer)]
(.remove a))
(doseq [e (vals entities) ]
(let [object (:object e)]
(when (isa? (type object) Actor)
(.addActor renderer object)
(doseq [[_ listener] ui-listeners]
(.addListener ^Actor object listener)))))
(remove-input! renderer)
(add-input! renderer)))
(defmulti update-physics!
(fn [screen & [entities]] (some-> screen :world class .getName))