diff --git a/desktop/gametodos.txt b/desktop/gametodos.txt
index 5f8a7203..21b97278 100644
--- a/desktop/gametodos.txt
+++ b/desktop/gametodos.txt
@@ -1,6 +1,5 @@
+ More ways to burn paper
+ shitty plates
-+ more visible crowbar
+ fight with blergh at end isn't great
+ ending
+ secret lever
diff --git a/desktop/resources/outside-jail/candle-aura.png b/desktop/resources/outside-jail/candle-aura.png
new file mode 100644
index 00000000..d329eec1
Binary files /dev/null and b/desktop/resources/outside-jail/candle-aura.png differ
diff --git a/desktop/resources/outside-jail/candle-aura.pxa/0.pxi b/desktop/resources/outside-jail/candle-aura.pxa/0.pxi
new file mode 100644
index 00000000..a54fa9a6
Binary files /dev/null and b/desktop/resources/outside-jail/candle-aura.pxa/0.pxi differ
diff --git a/desktop/resources/outside-jail/candle-aura.pxa/1.pxi b/desktop/resources/outside-jail/candle-aura.pxa/1.pxi
new file mode 100644
index 00000000..9e468e44
Binary files /dev/null and b/desktop/resources/outside-jail/candle-aura.pxa/1.pxi differ
diff --git a/desktop/resources/outside-jail/candle-aura.pxa/2.pxi b/desktop/resources/outside-jail/candle-aura.pxa/2.pxi
new file mode 100644
index 00000000..8fc93c3e
Binary files /dev/null and b/desktop/resources/outside-jail/candle-aura.pxa/2.pxi differ
diff --git a/desktop/resources/outside-jail/candle-aura.pxa/3.pxi b/desktop/resources/outside-jail/candle-aura.pxa/3.pxi
new file mode 100644
index 00000000..997552b7
Binary files /dev/null and b/desktop/resources/outside-jail/candle-aura.pxa/3.pxi differ
diff --git a/desktop/resources/outside-jail/candle-aura.pxa/CelData.plist b/desktop/resources/outside-jail/candle-aura.pxa/CelData.plist
new file mode 100644
index 00000000..f0b74d60
--- /dev/null
+++ b/desktop/resources/outside-jail/candle-aura.pxa/CelData.plist
@@ -0,0 +1,22 @@
+
+
+
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+
diff --git a/desktop/resources/outside-jail/candle-aura2.png b/desktop/resources/outside-jail/candle-aura2.png
new file mode 100644
index 00000000..99b4ac5c
Binary files /dev/null and b/desktop/resources/outside-jail/candle-aura2.png differ
diff --git a/desktop/resources/outside-jail/candle.png b/desktop/resources/outside-jail/candle.png
new file mode 100644
index 00000000..4badafe2
Binary files /dev/null and b/desktop/resources/outside-jail/candle.png differ
diff --git a/desktop/resources/outside-jail/candle.pxa/0.pxi b/desktop/resources/outside-jail/candle.pxa/0.pxi
new file mode 100644
index 00000000..94b9a10c
Binary files /dev/null and b/desktop/resources/outside-jail/candle.pxa/0.pxi differ
diff --git a/desktop/resources/outside-jail/candle.pxa/1.pxi b/desktop/resources/outside-jail/candle.pxa/1.pxi
new file mode 100644
index 00000000..d7726374
Binary files /dev/null and b/desktop/resources/outside-jail/candle.pxa/1.pxi differ
diff --git a/desktop/resources/outside-jail/candle.pxa/2.pxi b/desktop/resources/outside-jail/candle.pxa/2.pxi
new file mode 100644
index 00000000..94b9a10c
Binary files /dev/null and b/desktop/resources/outside-jail/candle.pxa/2.pxi differ
diff --git a/desktop/resources/outside-jail/candle.pxa/3.pxi b/desktop/resources/outside-jail/candle.pxa/3.pxi
new file mode 100644
index 00000000..06d70cda
Binary files /dev/null and b/desktop/resources/outside-jail/candle.pxa/3.pxi differ
diff --git a/desktop/resources/outside-jail/candle.pxa/CelData.plist b/desktop/resources/outside-jail/candle.pxa/CelData.plist
new file mode 100644
index 00000000..f0b74d60
--- /dev/null
+++ b/desktop/resources/outside-jail/candle.pxa/CelData.plist
@@ -0,0 +1,22 @@
+
+
+
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+
diff --git a/desktop/src-common/advent/screens/rooms/outside_jail.clj b/desktop/src-common/advent/screens/rooms/outside_jail.clj
index d129b1b3..aff72d7b 100644
--- a/desktop/src-common/advent/screens/rooms/outside_jail.clj
+++ b/desktop/src-common/advent/screens/rooms/outside_jail.clj
@@ -70,7 +70,17 @@
(Thread/sleep 500)
(actions/play-animation entities :ego :reach-stop :stop? false)
(actions/play-animation entities :stash :close :stop? false)
- (actions/talk entities :ego "That trapdoor closes as soon as I let the lever go!"))))
+ (actions/talk entities :ego "That trapdoor closes as soon as I let the lever go!"))
+ (= (get-in @entities [:state :time]) :night)
+ (do
+ (actions/walk-to entities :ego [48 36] :face :left)
+ (actions/talk entities :ego "Looks like a candle to me."))
+
+ :else
+ (do
+ (actions/walk-to entities :ego [48 36] :face :left)
+ (actions/do-dialogue entities :ego "Just a candle."
+ :ego "It's just not lit during the day."))))
(defn try-to-go-in-stash [entities]
(when (get-in @entities [:room :entities :rope])
@@ -92,7 +102,9 @@
guard-talk (animation 0.2 (for [i [0 0 0 0 1 0 0 1]] (aget guard-sheet 0 i)))
guard-sleep (utils/make-anim "outside-jail/guard-sleep.png" [43 67] 0.1 (range 4))
open-stash (utils/make-anim "outside-jail/open-stash.png" [58 41] 0.075 (reverse (range 5)))
- close-stash (utils/make-anim "outside-jail/open-stash.png" [58 41] 0.075 (range 5))]
+ close-stash (utils/make-anim "outside-jail/open-stash.png" [58 41] 0.075 (range 5))
+ candle-flame (utils/make-anim "outside-jail/candle.png" [20 25] 0.075 (range 4))
+ candle-aura (utils/make-anim (texture "outside-jail/candle-aura2.png") [135 135] 0.3 [0 1 2 1] )]
(rooms/make :music {:day :town-1 :night :night}
:interactions {:down-dir {:box [30 0 227 20]
:script (actions/get-script entities
@@ -159,7 +171,7 @@
(actions/give entities :broken-clock)
(actions/walk-straight-to entities :ego [170 71]))
:sword (actions/get-script entities (actions/talk entities :ego "I can just use the axe."))}}
- :lever {:box [10 72 17 85]
+ :lever {:box [3 72 20 90]
:script (actions/get-script entities
(interact-with-lever entities))
:scripts {:rope (actions/get-script entities
@@ -167,7 +179,15 @@
(actions/walk-to entities :ego [48 36] :face :left)
(actions/play-animation entities :ego :reach)
(actions/remove-item entities :rope)
- (actions/add-entity entities :rope (get-in @entities [:room :rope]))))}}
+ (actions/add-entity entities :rope (get-in @entities [:room :rope]))))
+ :recipe (actions/get-script entities
+ (actions/walk-to entities :ego [48 36] :face :left)
+ (actions/play-animation entities :ego :reach)
+ (actions/remove-item entities :recipe)
+ (actions/give entities :ash)
+ (actions/talk entities :ego "It burned up into ash."))
+ :default (actions/get-script entities
+ (actions/talk entities :ego "Why would I want to burn that?"))}}
:end-of-rope {:box [177 101 185 108]
:script (actions/get-script entities (try-to-go-in-stash entities))}
:fountain {:box [150 126 193 147]
@@ -193,6 +213,15 @@
:width 10
:height 10
:talk-color (color 0.9 0.3 0.9 1.0)}
+ :candle-flame (assoc (animation->texture screen candle-flame)
+ :origin-x 8 :origin-y 11
+ :x 14 :y 82
+ :baseline 1
+ :night-profile :none
+ :anim candle-flame
+ :anim-start 0)
+ :candle-aura (assoc (animation->texture screen candle-aura) :x 14 :y 82 :baseline 240
+ :additive? true :origin-x 67 :origin-y 67 :scale-x 1 :scale-y 1 :opacity 0.5 :anim candle-aura :anim-start 0 :night-profile :none)
:fountain-particle (assoc (doto (particle-effect "outside-jail/fountain")
(particle-effect! :reset)
(particle-effect! :start))
@@ -257,7 +286,7 @@
(assoc-in entities [:room :fountain-sound :id] (sound! (get-in entities [:room :fountain-sound :sound]) :loop (fountain-vol entities)))
(if (= :night (get-in entities [:state :time]))
(make-night entities)
- entities)
+ (update-in entities [:room :entities] dissoc :candle-aura :candle-flame))
(if (get-in entities [:state :dropped-ball?])
(update-in entities [:room :entities :guard] #(actions/start-animation % :sleep))
(update-in entities [:room :entities] dissoc :bent-bar-window )))))))