correct cursor logic, scared animation update, choosable volume.

This commit is contained in:
2015-03-06 07:13:18 -08:00
parent b057593b86
commit 183b369441
18 changed files with 129 additions and 93 deletions

View File

@@ -621,23 +621,26 @@
all-entities (concat (vals entities) layers (vals (get-in entities [:room :entities])))]
(when (nil? (:zoom (:cam entities)))
(println entities))
(screen! talking-screen :on-update-camera :scene-viewport (:viewport screen) :scene-camera (:camera screen))
(set! (. camera zoom) (:zoom (:cam entities)))
(set! (.. camera position x) (:x (:cam entities) 160.0))
(set! (.. camera position y) (:y (:cam entities) 120.0))
(when (= (get-in entities [:fade :opacity])
0.0)
(play-key-sounds entities))
(doseq [m (vals (get-in entities [:musics]))]
(when m
(music! m :set-volume (utils/current-music-volume (get-in entities [:volume :value])))))
(doseq [e (sort-by :baseline all-entities)]
(if (:parallax e)
(render-parallax screen e)
(render! screen [e])))
entities))
(let [entities (utils/update-override screen entities)]
(when (= (get-in entities [:fade :opacity])
0.0)
(play-key-sounds entities))
(doseq [m (vals (get-in entities [:musics]))]
(when m
(music! m :set-volume (utils/current-music-volume (get-in entities [:volume :value])))))
(doseq [e (sort-by :baseline all-entities)]
(if (:parallax e)
(render-parallax screen e)
(render! screen [e])))
entities)))
:on-resize (fn [{:keys [viewport width height]} [entities]]
(.update viewport width height))
@@ -654,8 +657,7 @@
(.getScreenWidth viewport) (.getScreenHeight viewport)
input-x input-y)
(let [[x y] (utils/unproject screen)]
(utils/update-override (assoc-in entities [:cursor :last-pos] [x y])))
(utils/update-override screen (assoc-in entities [:cursor :last-pos] [input-x input-y]))
(assoc-in entities [:cursor :override] nil)))
:on-touch-up (fn [{:keys [input-x input-y viewport] :as screen} [entities]]