fixed dialogue positioning, because that junk aint never right.
This commit is contained in:
@@ -16,9 +16,9 @@
|
|||||||
[com.badlogic.gdx Screen]))
|
[com.badlogic.gdx Screen]))
|
||||||
|
|
||||||
(defn ensure-on-screen [talk]
|
(defn ensure-on-screen [talk]
|
||||||
(let [margin-width (* 0.05 (game :width))
|
(let [margin-width (* 0.05 1280)
|
||||||
minimum-x margin-width
|
minimum-x margin-width
|
||||||
maximum-x (- (game :width) margin-width)
|
maximum-x (- 1280 margin-width)
|
||||||
label-width (label! talk :get-width)
|
label-width (label! talk :get-width)
|
||||||
label-right (+ (:x talk) label-width)
|
label-right (+ (:x talk) label-width)
|
||||||
talk (cond (> label-right maximum-x) (assoc talk :x (- maximum-x label-width))
|
talk (cond (> label-right maximum-x) (assoc talk :x (- maximum-x label-width))
|
||||||
@@ -78,7 +78,7 @@
|
|||||||
(let [[x y] (scene-world->talk-world scene-viewport [(:source-x dialogue)
|
(let [[x y] (scene-world->talk-world scene-viewport [(:source-x dialogue)
|
||||||
(:source-y dialogue)])]
|
(:source-y dialogue)])]
|
||||||
(-> entities
|
(-> entities
|
||||||
(assoc-in [:dialogue :x] (- x (/ (label! dialogue :get-width) 2)))
|
(assoc-in [:dialogue :x] (- x (/ (doto (label! dialogue :get-width) println) 2)))
|
||||||
(assoc-in [:dialogue :y] y)
|
(assoc-in [:dialogue :y] y)
|
||||||
(update-in [:dialogue] ensure-on-screen)
|
(update-in [:dialogue] ensure-on-screen)
|
||||||
))))
|
))))
|
||||||
|
|||||||
Reference in New Issue
Block a user