autosave images.

This commit is contained in:
Bryce Covert
2015-11-02 17:57:01 -08:00
parent 7aa2db4261
commit 94dab945a3
2 changed files with 20 additions and 4 deletions

View File

@@ -10,9 +10,12 @@
[clojure.edn :as edn]
[clojure.string :as str]
[advent.saves :as saves])
(:import [com.badlogic.gdx.graphics Pixmap Pixmap$Blending Pixmap$Filter Texture Texture$TextureFilter]
(:import [com.badlogic.gdx.graphics Pixmap Pixmap$Format Pixmap$Blending Pixmap$Filter Texture Texture$TextureFilter]
[com.badlogic.gdx.graphics.g2d TextureRegion Animation]
[com.badlogic.gdx.utils.viewport FitViewport]
[com.badlogic.gdx.utils ScreenUtils]
[com.badlogic.gdx.files FileHandle]
[com.badlogic.gdx.graphics PixmapIO$PNG]
[com.badlogic.gdx.scenes.scene2d Actor Stage]
[com.badlogic.gdx.math CatmullRomSpline]
[com.badlogic.gdx Application Audio Files Game Gdx Graphics Input
@@ -73,7 +76,19 @@
(cons (saves/saves name)
(filter (complement #{(saves/saves name)})
(snapshot-list))))))
.flush))
.flush)
(on-gl (let [f (FileHandle. (str "screenshot-" (clojure.core/name name) ".png" ))
_ (Pixmap/setFilter Pixmap$Filter/BiLinear)
#_#_[x y w h g-l g-r] [(.getScreenX viewport) (.getScreenY viewport) (.getScreenWidth viewport) (.getScreenHeight viewport)]
[x y w h] [0 0 1400 900]
pm (ScreenUtils/getFrameBufferPixmap x y w h)
resized (Pixmap. 128 96 Pixmap$Format/RGB888)
_ (.drawPixmap resized pm 0 0 w h 0 0 128 96)
png (PixmapIO$PNG. (* w h 1.5))]
(.write png f resized)
(.dispose png)
)))
(defn save [entities]
(snapshot-state entities :autosave))