continued on making cursors work.
This commit is contained in:
Binary file not shown.
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.2 KiB |
@@ -36,12 +36,15 @@
|
||||
|
||||
|
||||
|
||||
(defn find-override [screen entities [x y]]
|
||||
(first (filter #(mouse-in? % [x y])
|
||||
(get-in entities [:background :mouse-overrides]))))
|
||||
|
||||
(defn left-click [screen entities]
|
||||
(let [{:keys [x y]} (input->screen screen {:x (:input-x screen) :y (:input-y screen)})
|
||||
interaction (first (filter #(mouse-in? % [x y])
|
||||
(get-in entities [:background :interactions])))
|
||||
cursor-override (get-in entities [:cursor :override])
|
||||
cursor-override (find-override screen entities [x y])
|
||||
;; TODO - hacky way of resetting queue
|
||||
entities (if-let [current-action (get-in entities [:actions :current])]
|
||||
(assoc (actions/terminate current-action screen entities)
|
||||
@@ -220,7 +223,7 @@
|
||||
:on-mouse-moved
|
||||
(fn [screen [entities]]
|
||||
(let [{:keys [x y]} (input->screen screen {:x (:input-x screen) :y (:input-y screen)})]
|
||||
(if-let [mouse-override (first (filter #(mouse-in? % [x y]) (get-in entities [:background :mouse-overrides])))]
|
||||
(if-let [mouse-override (find-override screen entities [x y])]
|
||||
(assoc-in entities [:cursor :override] (cursor-override mouse-override))
|
||||
(assoc-in entities [:cursor :override] nil))))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user