                        (resume [this] (run-fn! :resume))
                        (dispose [this])))))
 
-(defn set-screen!
-  "Creates a [Screen](http://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/Screen.html)
-object, sets it as the screen for the `game`, and runs the functions from
-`screens` in the order they are provided in
-
-    (set-screen! hello-world main-screen text-screen)"
-  [game & screens]
-  (set-screen-with-options! game screens))
-
 (defn update!
   "Runs the equivalent of `(swap! screen-atom assoc ...)`, where `screen-atom`
 is the atom storing the screen map behind the scenes, and returns the new screen

                          (add-input! listener))))
        run-fn! (fn [k & args]
                  (doseq [screen screens]
                    (if wrap
                      (wrap screen k args)
                      (apply (get screen k) args))))]
    (.setScreen game (reify Screen
                       (show [this] (add-inputs!) (run-fn! :show))
                       (render [this d] (run-fn! :render d))

  (let [execute-fn! (fn [func & {:keys [] :as options}]
                      (when func
                        (let [old-entities @entities]
                          (some->> #(func (merge @screen options) old-entities)
                                   (wrapper screen)
                                   list
                                   flatten
                                   (remove nil?)
