implementing simple cat puzzle.

This commit is contained in:
2014-11-20 13:08:13 -08:00
parent db97c2d76f
commit 8691be9ec6
4 changed files with 66 additions and 32 deletions

View File

@@ -52,10 +52,10 @@
(open-inventory screen entities)
(let [interaction (first (filter #((:mouse-in? %) entities x y)
(get-in entities [:room :interactions])))
interacting-entity (first (filter #(and (:mouse-in? %)
(:get-script %)
((:mouse-in? %) entities x y))
(vals (get-in entities [:room :entities]))))
interacting-entity (first (sort-by (comp - :baseline) (filter #(and (:mouse-in? %)
(:get-script %)
((:mouse-in? %) entities x y))
(vals (get-in entities [:room :entities])))))
current-action (get-in entities [:actions :current])
;; TODO - hacky way of resetting queue
@@ -226,7 +226,7 @@
:inside-fangald (make-music "inside-fangald.ogg")}
:state {:object nil
:active? true
:inventory [items/grass items/flask-1-strength]
:inventory [items/grass items/ladder]
:clues #{}
:mints-eaten 0}
:actions {:object nil
@@ -264,7 +264,7 @@
:on-mouse-moved
(fn [screen [entities]]
#_(when (get-in entities [:state :active?])
(when (get-in entities [:state :active?])
(let [{:keys [x y]} (input->screen screen {:x (:input-x screen) :y (:input-y screen)})]
(if-let [mouse-override (find-override screen entities [x y])]
(assoc-in entities [:cursor :override] (:cursor mouse-override))