diff --git a/desktop/last-release b/desktop/last-release index 0cfbf088..00750edc 100644 --- a/desktop/last-release +++ b/desktop/last-release @@ -1 +1 @@ -2 +3 diff --git a/desktop/src-common/advent/screens/scene.clj b/desktop/src-common/advent/screens/scene.clj index d5a34702..56c23719 100644 --- a/desktop/src-common/advent/screens/scene.clj +++ b/desktop/src-common/advent/screens/scene.clj @@ -1001,8 +1001,10 @@ void main () (let [[^OrthographicCamera cam] (utils/setup-viewport screen 320 240)] (set! (. cam zoom) 0.95) (let [shader (ShaderProgram. ^String v-shader ^String pix-shader) - _ (println (.getLog shader)) - + #_#__ (println (.getLog shader)) + state (get-state @utils/selected-save) + start-pos [(:x state) (:y state)] + has-start-pos? (:x state) _ (update! screen :shader shader) rooms {:inside-house (rooms.inside-house/make screen) @@ -1042,7 +1044,7 @@ void main () :dream (utils/make-music "dream/music.ogg") :secret-hideout (utils/make-music "music/secret-hideout.ogg") :wind (utils/make-music "music/wind.ogg")} - :state (get-state @utils/selected-save) + :state state :time-profiles {:object nil :default utils/default-night-merge :sprite utils/default-night-merge-sprite @@ -1085,8 +1087,14 @@ void main () :all-items (assoc items/items :object nil) :started? {:value false :object nil} - :room (as-> (get rooms (:last-room (get-state @utils/selected-save))) room - (assoc-in room [:entities :ego] (get-ego screen (:start-pos room) ((:scale-fn room) (:start-pos room)))))}] + :room (as-> (get rooms (:last-room state)) room + (assoc-in room [:entities :ego] (get-ego screen (if has-start-pos? + start-pos + (:start-pos room)) + ((:scale-fn room) + (if has-start-pos? + start-pos + (:start-pos room))))))}] (doseq [[k [start time fn]] (get-in entities [:room :timers])] (add-timer! screen k start time)) diff --git a/desktop/src-common/advent/utils.clj b/desktop/src-common/advent/utils.clj index a39c8715..9875a97c 100644 --- a/desktop/src-common/advent/utils.clj +++ b/desktop/src-common/advent/utils.clj @@ -101,7 +101,9 @@ saves (cons {:name name :id id :screenshot (save-screenshot-file-name id) - :state (entities :state) + :state (assoc (entities :state) + :x (get-in entities [:room :entities :ego :x]) + :y (get-in entities [:room :entities :ego :y])) :blurb (or blurb name)} (filter (comp (complement #{id}) :id) saves))] (.putString prefs "saves" (pr-str saves))