Add update-gs, which always returns the modified gs and is almost always what you want.
This commit is contained in:
parent
dcc5d430e3
commit
7ca348442d
|
@ -14,6 +14,9 @@
|
|||
(defmacro with-gs [gs & body]
|
||||
`(binding [*gamestate* (ref ~gs)] (dosync ~@body)))
|
||||
|
||||
(defmacro update-gs [& body]
|
||||
`(with-gs ~@body (get-gs)))
|
||||
|
||||
(defn get-gs [] @*gamestate*)
|
||||
|
||||
(defn entity-in [gamestate id] (get-in gamestate [:entities id]))
|
||||
|
@ -80,4 +83,4 @@
|
|||
(defmethod query-index indextype [indextype index query] (or (get index query) #{}))))
|
||||
|
||||
(define-id-index :name)
|
||||
(define-id-index :type)
|
||||
(define-id-index :type)
|
Loading…
Reference in a new issue