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