Add :x and :y to all screen maps
This commit is contained in:
@@ -61,13 +61,19 @@
|
||||
[screen screen-fn]
|
||||
(screen-fn))
|
||||
|
||||
(defn ^:private merge-coords
|
||||
[{:keys [input-x input-y] :as screen}]
|
||||
(let [x (or input-x (game :x))
|
||||
y (or input-y (game :y))]
|
||||
(merge screen (input->screen screen x y))))
|
||||
|
||||
(defn defscreen*
|
||||
[{:keys [screen entities
|
||||
on-show on-render on-hide on-pause on-resize on-resume on-timer]
|
||||
:as options}]
|
||||
(let [execute-fn! (fn [func & {:keys [] :as options}]
|
||||
(when func
|
||||
(let [screen-map (merge @screen options)
|
||||
(let [screen-map (merge-coords (merge @screen options))
|
||||
old-entities @entities]
|
||||
(some->> (with-meta
|
||||
#(normalize (func screen-map old-entities))
|
||||
|
||||
Reference in New Issue
Block a user