diff --git a/desktop/src-common/advent/utils.clj b/desktop/src-common/advent/utils.clj index edad6557..bd040859 100644 --- a/desktop/src-common/advent/utils.clj +++ b/desktop/src-common/advent/utils.clj @@ -240,15 +240,21 @@ (defn update-override [screen entities] (let [last-pos (unproject screen (get-in entities [:cursor :last-pos]))] (if (get-in entities [:state :active?]) - (if-let [mouse-override (find-override entities last-pos)] - (-> entities - (assoc-in [:cursor :override] (or (:cursor mouse-override) (when (#{:main :active-main} (get-in entities [:cursor :last])) :active-main))) - (assoc-in [:cursor :was-active] (get-in entities [:cursor :active])) - (assoc-in [:cursor :active] true)) + (if (get-in entities [:state :hud-active?]) (-> entities (assoc-in [:cursor :override] nil) (assoc-in [:cursor :was-active] (get-in entities [:cursor :active])) - (assoc-in [:cursor :active] false))) + (assoc-in [:cursor :active] false)) + + (if-let [mouse-override (find-override entities last-pos)] + (-> entities + (assoc-in [:cursor :override] (or (:cursor mouse-override) (when (#{:main :active-main} (get-in entities [:cursor :last])) :active-main))) + (assoc-in [:cursor :was-active] (get-in entities [:cursor :active])) + (assoc-in [:cursor :active] true)) + (-> entities + (assoc-in [:cursor :override] nil) + (assoc-in [:cursor :was-active] (get-in entities [:cursor :active])) + (assoc-in [:cursor :active] false)))) entities))) (def default-night-merge {:r 0.08 :g 0.1 :b 0.36 :multiply-amount 1.0 :hue-amount 1.0})