From a3536d7b0d6697098881320e3e81e55df28efa4c Mon Sep 17 00:00:00 2001 From: Bryce Covert Date: Thu, 11 Aug 2016 19:19:28 -0700 Subject: [PATCH] seems like almost everything is working. --- desktop/resources/cursor.png | Bin 27335 -> 27527 bytes .../src-common/advent/screens/rooms/dream.clj | 34 +++++++++++------- desktop/src-common/advent/screens/safe.clj | 6 ++-- desktop/src-common/advent/screens/scene.clj | 4 +-- desktop/src-common/advent/screens/title.clj | 28 +++++++-------- desktop/src-common/advent/utils.clj | 4 ++- 6 files changed, 43 insertions(+), 33 deletions(-) diff --git a/desktop/resources/cursor.png b/desktop/resources/cursor.png index 39ce24f7d224d1f52f8e999f84c471c0f47461d3..d1f55f5c954bf3bf7e794afa53fb8f7e4cb6bda1 100644 GIT binary patch delta 11286 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 GhW{T;!Fn?Q diff --git a/desktop/src-common/advent/screens/rooms/dream.clj b/desktop/src-common/advent/screens/rooms/dream.clj index 588e4721..b265882e 100644 --- a/desktop/src-common/advent/screens/rooms/dream.clj +++ b/desktop/src-common/advent/screens/rooms/dream.clj @@ -23,15 +23,15 @@ (defn set-opacity [entities opacity tool-opacity] (-> entities - (assoc-in [:room :layers 0 :opacity] opacity) - (assoc-in [:room :layers 1 :opacity] opacity) - (assoc-in [:room :layers 2 :opacity] opacity) - (assoc-in [:room :layers 3 :opacity] opacity) - (assoc-in [:room :layers 4 :opacity] opacity) - (assoc-in [:room :layers 5 :opacity] opacity) - (assoc-in [:room :layers 6 :opacity] opacity) - (assoc-in [:room :layers 7 :opacity] opacity) - (assoc-in [:room :layers 8 :opacity] opacity) + (assoc-in [:room :current-layers 0 :opacity] opacity) + (assoc-in [:room :current-layers 1 :opacity] opacity) + (assoc-in [:room :current-layers 2 :opacity] opacity) + (assoc-in [:room :current-layers 3 :opacity] opacity) + (assoc-in [:room :current-layers 4 :opacity] opacity) + (assoc-in [:room :current-layers 5 :opacity] opacity) + (assoc-in [:room :current-layers 6 :opacity] opacity) + (assoc-in [:room :current-layers 7 :opacity] opacity) + (assoc-in [:room :current-layers 8 :opacity] opacity) (assoc-in [:room :entities :sword :opacity] tool-opacity) (assoc-in [:room :entities :case :opacity] tool-opacity) (assoc-in [:room :entities :broom :opacity] tool-opacity) @@ -47,13 +47,13 @@ (begin [this screen entities] (-> entities (assoc-in [:tweens :fade-in] - (tween/tween :fade-in screen [:room :layers 0 :opacity] 0.0 1.0 0.5 :ease tween/ease-in-out-quintic)))) + (tween/tween :fade-in screen [:room :current-layers 0 :opacity] 0.0 1.0 0.5 :ease tween/ease-in-out-quintic)))) (continue [this screen entities] - (set-opacity entities (get-in entities [:room :layers 0 :opacity] ) 0.0)) + (set-opacity entities (get-in entities [:room :current-layers 0 :opacity] ) 0.0)) (done? [this screen entities] - (= 1.0 (get-in entities [:room :layers 0 :opacity]))) + (= 1.0 (get-in entities [:room :current-layers 0 :opacity]))) (terminate [this screen entities] entities) @@ -410,6 +410,15 @@ (assoc (utils/get-texture "dream/corner-l.png") :x -10 :y -10 :baseline 240 :parallax 2.0 ) (assoc (utils/get-texture "dream/corner-r.png") :x (- 320 80) :y -20 :baseline 240 :parallax 3.2) (assoc (utils/get-texture "dream/pedestals.png") :x 0 :y 0 :baseline 139)] + :current-layers [(assoc (utils/get-texture "dream/sky.png") :x 0 :y 0 :baseline -3 :parallax 0.01) + (assoc (utils/get-texture "dream/far.png") :x -10 :y 0 :baseline -2 :parallax 0.01) + (assoc (utils/get-texture "dream/clouds1.png") :x -10 :y 0 :baseline -1 :parallax 0.2 :scale-x 1.1 :scale-y 1.1) + (assoc (utils/get-texture "dream/island.png") :x 180 :y 180 :baseline 0 :parallax 0.3 :scale-x 1.1 :scale-y 1.1) + (assoc (utils/get-texture "dream/cliff.png") :x 50 :y 133 :baseline 1 :parallax 0.6 :scale-x 1.2 :scale-y 1.2) + (assoc (utils/get-texture "dream/background.png") :x 0 :y 0 :baseline 2) + (assoc (utils/get-texture "dream/corner-l.png") :x -10 :y -10 :baseline 240 :parallax 2.0 ) + (assoc (utils/get-texture "dream/corner-r.png") :x (- 320 80) :y -20 :baseline 240 :parallax 3.2) + (assoc (utils/get-texture "dream/pedestals.png") :x 0 :y 0 :baseline 139)] :entities {:magic (assoc (particle-effect "particles/dream-magic") :x 160 :y 80 :baseline 240) @@ -539,6 +548,7 @@ :default {:origin-x 31}} :facing :left :update-fn (fn [s es e] + (assoc-in e [:offset-y] (* (:scale-y e) (get-in es [:bounce-surrogate :delta-y] 0)))) :talk-color (Color/valueOf "ADA6FFFF") :script (actions/get-script entities diff --git a/desktop/src-common/advent/screens/safe.clj b/desktop/src-common/advent/screens/safe.clj index c3abed1a..b653275f 100644 --- a/desktop/src-common/advent/screens/safe.clj +++ b/desktop/src-common/advent/screens/safe.clj @@ -88,14 +88,12 @@ (cond (= [4 2 1 5 3] (:button-choices new-state)) (do ((:success entities) (-> @(resolve 'advent.screens.scene/scene) :entities - deref - first)) + deref)) (close entities)) (= 5 (count (:button-choices new-state))) (do ((:failure entities) (-> @(resolve 'advent.screens.scene/scene) :entities - deref - first)) + deref)) (close entities)) :else new-state))) diff --git a/desktop/src-common/advent/screens/scene.clj b/desktop/src-common/advent/screens/scene.clj index 35f0861a..e5cf8dd4 100644 --- a/desktop/src-common/advent/screens/scene.clj +++ b/desktop/src-common/advent/screens/scene.clj @@ -1063,7 +1063,7 @@ void main () (merge (-> entities :time-profiles night-profile)) (assoc :time (-> entities :state :time))) e) - (if offset-y + #_(if offset-y (assoc e :y (+ y offset-y)) e))) @@ -1318,7 +1318,7 @@ void main () e) e (if update-fn - (update-fn screen entities e) + (update-fn screen (get-in entities [:room :entities]) e) e) e (get-rendered entities e)] e)) diff --git a/desktop/src-common/advent/screens/title.clj b/desktop/src-common/advent/screens/title.clj index e3d2920b..24d15e1e 100644 --- a/desktop/src-common/advent/screens/title.clj +++ b/desktop/src-common/advent/screens/title.clj @@ -481,33 +481,33 @@ (#{:back } actor-key) (-> entities - (dissoc :save-menu) - (dissoc :chapters-menu) - (dissoc :settings-menu) + (utils/remove-actor-from-stage :save-menu) + (utils/remove-actor-from-stage :chapters-menu) + (utils/remove-actor-from-stage :settings-menu) (assoc :main-menu (->> (main-menu screen) (utils/add-actor-to-stage screen)))) (#{:dont-delete-button } actor-key) (as-> entities entities - (dissoc entities :confirm-delete) - (assoc entities :save-menu (->> (saves-menu entities (:renderer screen)) - (utils/add-actor-to-stage screen)))) + (utils/remove-actor-from-stage entities :confirm-delete) + (assoc entities :save-menu (->> (saves-menu entities (:renderer screen)) + (utils/add-actor-to-stage screen)))) (= :load actor-key) (as-> entities entities - (dissoc entities :main-menu) + (utils/remove-actor-from-stage entities :main-menu) (assoc entities :save-menu (->> (saves-menu entities (:renderer screen)) (utils/add-actor-to-stage screen)))) (= :chapters actor-key) (-> entities - (dissoc :main-menu) + (utils/remove-actor-from-stage :main-menu) (assoc :chapters-menu (->> (chapters-menu ) (utils/add-actor-to-stage screen)))) (= :settings actor-key) (-> entities - (dissoc :main-menu) + (utils/remove-actor-from-stage :main-menu) (assoc :settings-menu (->> (settings-menu) (utils/add-actor-to-stage screen)))) @@ -529,7 +529,7 @@ (= :delete actor-key) (as-> entities entities - (dissoc entities :save-menu) + (utils/remove-actor-from-stage entities :save-menu) (assoc entities :confirm-delete (->> (confirm-delete entities) (utils/add-actor-to-stage screen)))) @@ -537,10 +537,10 @@ (do (utils/remove-save (:id (:selected-save entities))) (as-> entities entities - (dissoc entities :confirm-delete) - (assoc entities :saves-list (utils/snapshot-screenshots)) - (assoc entities :save-menu (->> (saves-menu entities (:renderer screen)) - (utils/add-actor-to-stage screen))))) + (utils/remove-actor-from-stage entities :confirm-delete) + (assoc entities :saves-list (utils/snapshot-screenshots)) + (assoc entities :save-menu (->> (saves-menu entities (:renderer screen)) + (utils/add-actor-to-stage screen))))) (:save e) (do diff --git a/desktop/src-common/advent/utils.clj b/desktop/src-common/advent/utils.clj index 6214bf5b..10ca8ab9 100644 --- a/desktop/src-common/advent/utils.clj +++ b/desktop/src-common/advent/utils.clj @@ -34,7 +34,9 @@ (defn remove-actor-from-stage ([entities id] - (remove-actor-from-stage (id entities))) + (do + (remove-actor-from-stage (id entities)) + (dissoc entities id))) ([{:keys [^Actor object]}] (when object (.remove object))))