ui improvements.

This commit is contained in:
Bryce Covert
2015-10-07 08:18:11 -07:00
parent 0409fba8ca
commit 8e12d2df0b

View File

@@ -111,11 +111,11 @@
(defn make-label
([msg]
(make-label msg (color 1.0 0.3 0.3 1.0)))
(make-label msg nil))
([msg col]
(let [font (utils/get-font "ego/font.fnt")]
(-> msg
(label (style :label font col))
(label (style :label font (or col (color 1.0 0.3 0.3 1.0))))
(assoc :x 0 :y 0 :height 32 :origin-x 0 :origin-y 0 :z 8)
center
(doto (label! :set-alignment Align/center))))))
@@ -139,7 +139,7 @@
(stack-y 305 0)
(assoc :z 8
:interactable true))
:rewind (-> (make-label "Previous chapter" (color :white))
:rewind (-> (make-label "Previous chapter" (when is-starting? (color :white)))
(stack-y 305 1)
(assoc :z 8
:interactable (not is-starting?)))
@@ -186,6 +186,17 @@
:interactable true
:save (saves/name->save name)))])))
(defn style-ui [entities]
(doseq [entity (vals entities)
:let [[x y] (:last-pos entities)]
:when (and (:object entity) x y)]
(cond (label? entity)
(style-label entity (get-in entities [:font]) [x y])
(slider? entity)
(style-slider entity [x y])))
entities)
(defscreen title-screen
:on-show
(fn [screen entities]
@@ -256,7 +267,8 @@
(let [entities (utils/apply-tweens screen entities (:tweens entities))
entities (fly-ego screen entities)
entities (fly-balloon screen entities)
entities (update-in entities [:balloon] merge (animation->texture screen (:anim (:balloon entities))))]
entities (update-in entities [:balloon] merge (animation->texture screen (:anim (:balloon entities))))
entities (style-ui entities)]
(when (:fullscreen entities)
(label! (:fullscreen entities) :set-text (if (.isFullscreen Gdx/graphics)
"Fullscreen"
@@ -272,13 +284,11 @@
:on-mouse-moved (fn [screen [entities]]
(let [[x y] (utils/unproject screen)]
(doseq [entity (vals entities)
:when (:object entity)]
(cond (label? entity)
(style-label entity (get-in entities [:font]) [x y])
(assoc entities :last-pos [x y])))
(slider? entity)
(style-slider entity [x y])))))
:on-touch-dragged (fn [screen [entities]]
(let [[x y] (utils/unproject screen)]
(assoc entities :last-pos [x y])))
:on-key-up
(fn [screen entities]
(when (= (key-code :escape) (:key screen))