                                            :term   term
                                            :character (make-character) } ]
                            (swap! clients conj new-client)
-                           ;(async (swap! character assoc :name (await (generate-name))))
+                           (async
+                             (let [dat-name (await (generate-name))]
+                               (prn (str dat-name " has joined the fray."))
+                               (swap! (:character new-client) assoc :name dat-name)))
                            (kick-it new-client))))
     (.listen 2323)))
 

(defn pusher! [& arguments]
  (swap! queue conj arguments))

(defn setup [term character]
  (doto term
    (.clear)
    (.applicationKeypad)
    (.hideCursor)
    (.grabInput #js { :mouse "button" :focus true }))

  (keyboard/HandleCharacterKeys term level character)
  (.on keyboard/emitter "move" (partial pusher! "move"))

    (recur queue))
  )


(defn kick-it [client]
  (let [{:keys [term character client]} client]
    (teardown term)
    (setup term character client)
    (show-screen term character)
    (popper! queue)))

