diff --git a/desktop/resources/ego/suspended.png b/desktop/resources/ego/suspended.png
index f54fbebc..3210d3e8 100644
Binary files a/desktop/resources/ego/suspended.png and b/desktop/resources/ego/suspended.png differ
diff --git a/desktop/resources/ego/suspended.pxa/1.pxi b/desktop/resources/ego/suspended.pxa/1.pxi
new file mode 100644
index 00000000..be4cd190
Binary files /dev/null and b/desktop/resources/ego/suspended.pxa/1.pxi differ
diff --git a/desktop/resources/ego/suspended.pxa/CelData.plist b/desktop/resources/ego/suspended.pxa/CelData.plist
index 0e12daec..29c78f8b 100644
--- a/desktop/resources/ego/suspended.pxa/CelData.plist
+++ b/desktop/resources/ego/suspended.pxa/CelData.plist
@@ -6,5 +6,9 @@
duration
1
+
+ duration
+ 1
+
diff --git a/desktop/resources/held/bloodclot-head.png b/desktop/resources/held/bloodclot-head.png
new file mode 100644
index 00000000..1b088c77
Binary files /dev/null and b/desktop/resources/held/bloodclot-head.png differ
diff --git a/desktop/resources/held/bloodclot-head.pxa/0.pxi b/desktop/resources/held/bloodclot-head.pxa/0.pxi
new file mode 100644
index 00000000..8b2c36fd
Binary files /dev/null and b/desktop/resources/held/bloodclot-head.pxa/0.pxi differ
diff --git a/desktop/resources/held/bloodclot-head.pxa/1.pxi b/desktop/resources/held/bloodclot-head.pxa/1.pxi
new file mode 100644
index 00000000..06c9e203
Binary files /dev/null and b/desktop/resources/held/bloodclot-head.pxa/1.pxi differ
diff --git a/desktop/resources/held/bloodclot-head.pxa/2.pxi b/desktop/resources/held/bloodclot-head.pxa/2.pxi
new file mode 100644
index 00000000..8279e31d
Binary files /dev/null and b/desktop/resources/held/bloodclot-head.pxa/2.pxi differ
diff --git a/desktop/resources/held/bloodclot-head.pxa/3.pxi b/desktop/resources/held/bloodclot-head.pxa/3.pxi
new file mode 100644
index 00000000..67fd153e
Binary files /dev/null and b/desktop/resources/held/bloodclot-head.pxa/3.pxi differ
diff --git a/desktop/resources/held/bloodclot-head.pxa/4.pxi b/desktop/resources/held/bloodclot-head.pxa/4.pxi
new file mode 100644
index 00000000..b3a40ba0
Binary files /dev/null and b/desktop/resources/held/bloodclot-head.pxa/4.pxi differ
diff --git a/desktop/resources/held/bloodclot-head.pxa/5.pxi b/desktop/resources/held/bloodclot-head.pxa/5.pxi
new file mode 100644
index 00000000..82a24fda
Binary files /dev/null and b/desktop/resources/held/bloodclot-head.pxa/5.pxi differ
diff --git a/desktop/resources/held/bloodclot-head.pxa/6.pxi b/desktop/resources/held/bloodclot-head.pxa/6.pxi
new file mode 100644
index 00000000..ec7be7bc
Binary files /dev/null and b/desktop/resources/held/bloodclot-head.pxa/6.pxi differ
diff --git a/desktop/resources/held/bloodclot-head.pxa/7.pxi b/desktop/resources/held/bloodclot-head.pxa/7.pxi
new file mode 100644
index 00000000..1ac7fdf6
Binary files /dev/null and b/desktop/resources/held/bloodclot-head.pxa/7.pxi differ
diff --git a/desktop/resources/held/bloodclot-head.pxa/8.pxi b/desktop/resources/held/bloodclot-head.pxa/8.pxi
new file mode 100644
index 00000000..3d6c4cd7
Binary files /dev/null and b/desktop/resources/held/bloodclot-head.pxa/8.pxi differ
diff --git a/desktop/resources/held/bloodclot-head.pxa/CelData.plist b/desktop/resources/held/bloodclot-head.pxa/CelData.plist
new file mode 100644
index 00000000..9088485c
--- /dev/null
+++ b/desktop/resources/held/bloodclot-head.pxa/CelData.plist
@@ -0,0 +1,42 @@
+
+
+
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+ duration
+ 1
+
+
+
diff --git a/desktop/resources/held/head.png b/desktop/resources/held/head.png
index f1c6dd70..3a4d7b29 100644
Binary files a/desktop/resources/held/head.png and b/desktop/resources/held/head.png differ
diff --git a/desktop/src-common/advent/screens/.#scene.clj b/desktop/src-common/advent/screens/.#scene.clj
deleted file mode 120000
index bc288428..00000000
--- a/desktop/src-common/advent/screens/.#scene.clj
+++ /dev/null
@@ -1 +0,0 @@
-bryce@bryce-pc.hsd1.wa.comcast.net.5560
\ No newline at end of file
diff --git a/desktop/src-common/advent/screens/rooms/held.clj b/desktop/src-common/advent/screens/rooms/held.clj
index af4b1dfb..9faf6242 100644
--- a/desktop/src-common/advent/screens/rooms/held.clj
+++ b/desktop/src-common/advent/screens/rooms/held.clj
@@ -14,16 +14,31 @@
[play-clj.math :refer :all]
[play-clj.g2d :refer :all]))
+(defn bloodclot-talk-script [entities]
+ (actions/talk entities :ego "Let me down Bloodclot!" :anim :suspended-talk)
+ (actions/do-dialogue entities :bloodclot-head "Not a chance."
+ :bloodclot-head "It's dinnertime, runt."))
+
(defn make [screen]
- (rooms/make :music :fight
- :interactions {}
- :layers [(assoc (texture "held/background.png") :x 0 :y 0 :baseline 0)]
- :entities {}
- :collision "held/collision.png"
- :scale-fn (constantly 1.5)
- :start-pos [113 120]
- :apply-state (fn [screen e]
- (-> e
- (assoc-in [:cam :paused? ] true)
- (update-in [:tweens] dissoc :cam-x :cam-y)
- (update-in [:room :entities :ego] #(actions/start-animation screen % :suspended))))))
+ (let [bloodclot-talk (utils/make-anim "held/bloodclot-head.png" [114 82] 0.1 [0 1 2 1 0 3 3 0 1 2 1 0 3 4 5 6 5 3 3 1 2 1 3 3 3 3 3 0 0 0 7 8 7])
+ bloodclot-stand (utils/make-anim "held/bloodclot-head.png" [114 82] 0.1 (flatten [(repeat 15 0) 7 8 7]))]
+ (rooms/make :music :fight
+ :interactions {}
+ :layers [(assoc (texture "held/background.png") :x 0 :y 0 :baseline 0)]
+ :entities {:bloodclot-head (assoc (animation->texture screen bloodclot-stand)
+ :x 211 :y 114 :baseline 240
+ :origin-x 57 :origin-y 0
+ :script (actions/get-script entities
+ (bloodclot-talk-script entities))
+ :stand bloodclot-stand
+ :talk bloodclot-talk
+ :anim bloodclot-stand
+ :anim-start 0)}
+ :collision "held/collision.png"
+ :scale-fn (constantly 1.5)
+ :start-pos [113 120]
+ :apply-state (fn [screen e]
+ (-> e
+ (assoc-in [:cam :paused? ] true)
+ (update-in [:tweens] dissoc :cam-x :cam-y)
+ (update-in [:room :entities :ego] #(actions/start-animation screen % :suspended)))))))
diff --git a/desktop/src-common/advent/screens/scene.clj b/desktop/src-common/advent/screens/scene.clj
index c19762cd..0e824827 100644
--- a/desktop/src-common/advent/screens/scene.clj
+++ b/desktop/src-common/advent/screens/scene.clj
@@ -364,6 +364,7 @@ void main()
axe (utils/make-anim "ego/axe.png" [60 70] 0.10 (flatten [1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 0 (range 7)]))
axe-wood (utils/make-anim "ego/axe-wood.png" [60 70] 0.10 (flatten [1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 0 (range 11)]))
suspended (utils/make-anim "ego/suspended.png" [18 36] 0.10 [0])
+ suspended-talk (utils/make-anim "ego/suspended.png" [18 36] 0.20 [0 1])
ego {:right {:walk walk-right
:stand stand-anim
@@ -409,6 +410,7 @@ void main()
:axe axe
:axe-wood axe-wood
:suspended suspended
+ :suspended-talk suspended-talk
}
:left {:walk (utils/flip walk-right)
:stand (utils/flip stand-anim)
@@ -444,7 +446,9 @@ void main()
:idea (utils/flip idea)
:axe (utils/flip axe)
:axe-wood (utils/flip axe-wood)
- :suspended (utils/flip suspended)}
+ :suspended (utils/flip suspended)
+ :suspended-talk (utils/flip suspended-talk)
+ }
:baseline (- 240 (last start-pos))
:facing :right
:night-profile :sprite
@@ -537,6 +541,8 @@ void main()
(get-in ego [:left :love]) {:origin-x 36}
(get-in ego [:left :suspended]) {:origin-x 0 :origin-y 0}
(get-in ego [:right :suspended]) {:origin-x 0 :origin-y 0}
+ (get-in ego [:left :suspended-talk]) {:origin-x 0 :origin-y 0}
+ (get-in ego [:right :suspended-talk]) {:origin-x 0 :origin-y 0}
:default {:origin-x 9}})]
(actions/start-animation screen
(merge (animation->texture screen (:stand (:right ego))) ego)