you can put items in the pack.

This commit is contained in:
2014-12-08 18:07:59 -08:00
parent 9619742f35
commit 44514117f1

View File

@@ -42,15 +42,18 @@
(:cursor %)) (:cursor %))
(get-in entities [:room :interactions])))) (get-in entities [:room :interactions]))))
(defn open-inventory [screen entities] (defn click-inventory [screen entities]
(screen! inventory-screen :show-screen :items (map (entities :all-items) (get-in entities [:state :inventory]))) (if (= (get-in entities [:cursor :current] ) :main)
(assoc-in entities [:state :active?] false)) (do
(screen! inventory-screen :show-screen :items (map (entities :all-items) (get-in entities [:state :inventory])))
(assoc-in entities [:state :active?] false))
(assoc-in entities [:cursor :current] :main)))
(defn left-click [screen entities] (defn left-click [screen entities]
(let [{:keys [x y]} (input->screen screen {:x (:input-x screen) :y (:input-y screen)})] (let [{:keys [x y]} (input->screen screen {:x (:input-x screen) :y (:input-y screen)})]
(if ((:mouse-in? (:inventory entities)) x y) (if ((:mouse-in? (:inventory entities)) x y)
(open-inventory screen entities) (click-inventory screen entities)
(let [interaction (first (filter #((:mouse-in? %) entities x y) (let [interaction (first (filter #((:mouse-in? %) entities x y)
(get-in entities [:room :interactions]))) (get-in entities [:room :interactions])))
interacting-entity (first (sort-by (comp - :baseline) (filter #(and (:mouse-in? %) interacting-entity (first (sort-by (comp - :baseline) (filter #(and (:mouse-in? %)