diff --git a/desktop/resources/inside-jail/warden.png b/desktop/resources/inside-jail/warden.png index 4426e184..287ee90d 100644 Binary files a/desktop/resources/inside-jail/warden.png and b/desktop/resources/inside-jail/warden.png differ diff --git a/desktop/resources/inside-jail/warden.pxa/0.pxi b/desktop/resources/inside-jail/warden.pxa/0.pxi index cac1a42b..cd4d66ba 100644 Binary files a/desktop/resources/inside-jail/warden.pxa/0.pxi and b/desktop/resources/inside-jail/warden.pxa/0.pxi differ diff --git a/desktop/resources/inside-jail/warden.pxa/1.pxi b/desktop/resources/inside-jail/warden.pxa/1.pxi index 99189bfb..196f8e9e 100644 Binary files a/desktop/resources/inside-jail/warden.pxa/1.pxi and b/desktop/resources/inside-jail/warden.pxa/1.pxi differ diff --git a/desktop/resources/inside-jail/warden.pxa/2.pxi b/desktop/resources/inside-jail/warden.pxa/2.pxi index 4fa211ec..26894f5e 100644 Binary files a/desktop/resources/inside-jail/warden.pxa/2.pxi and b/desktop/resources/inside-jail/warden.pxa/2.pxi differ diff --git a/desktop/resources/inside-jail/warden.pxa/3.pxi b/desktop/resources/inside-jail/warden.pxa/3.pxi index ab13f957..5e692bcf 100644 Binary files a/desktop/resources/inside-jail/warden.pxa/3.pxi and b/desktop/resources/inside-jail/warden.pxa/3.pxi differ diff --git a/desktop/resources/inside-jail/warden.pxa/CelData.plist b/desktop/resources/inside-jail/warden.pxa/CelData.plist index f0b74d60..245204bc 100644 --- a/desktop/resources/inside-jail/warden.pxa/CelData.plist +++ b/desktop/resources/inside-jail/warden.pxa/CelData.plist @@ -18,5 +18,13 @@ duration 1 + + duration + 1 + + + duration + 1 + diff --git a/desktop/src-common/advent/actions.clj b/desktop/src-common/advent/actions.clj index cd73316e..ba21fb87 100644 --- a/desktop/src-common/advent/actions.clj +++ b/desktop/src-common/advent/actions.clj @@ -764,6 +764,10 @@ (defn in-love [entities] - (transition-music entities :love :duration 1.0) - (play-animation entities :ego :love) - (transition-music entities nil :duration 1.0)) + (let [seen-love (get-in @entities [:state :has-seen-love?])] + (when (or (not seen-love) + (< (rand-int 10) 3)) + (transition-music entities :love :duration 1.0) + (play-animation entities :ego :love) + (actions/update-state entities (fn [s] (assoc s :has-seen-love? true))) + (transition-music entities nil :duration 1.0)))) diff --git a/desktop/src-common/advent/screens/rooms/inside_jail.clj b/desktop/src-common/advent/screens/rooms/inside_jail.clj index 3d3af7dd..3a68d112 100644 --- a/desktop/src-common/advent/screens/rooms/inside_jail.clj +++ b/desktop/src-common/advent/screens/rooms/inside_jail.clj @@ -201,13 +201,12 @@ (aget warden-sheet 0 i))) warden-stand (animation 0.1 (for [i (flatten [(repeat 30 0) 2 (repeat 20 0) 2])] (aget warden-sheet 0 i))) - warden-fall-asleep (animation 0.1 (for [i (flatten [(repeat 5 0) 2 2 (repeat 10 0) 2 2 2 2 2 2 2 (repeat 10 0) 2 2 2])] + warden-fall-asleep (animation 0.1 (for [i (flatten [(repeat 5 0) 2 2 (repeat 10 0) 2 2 2 (repeat 10 0) 2 2 2])] (aget warden-sheet 0 i))) - warden-sleep (animation 0.5 (for [i (flatten [ 3 3 2 2 2])] + warden-sleep (animation 0.25 (for [i (flatten [ 3 4 3 4 3 4 3 4 3 4 5 5 2 2 2 2 2 2])] (aget warden-sheet 0 i))) candle (utils/make-anim "inside-jail/candle.png" [20 25] 0.1 (range 4)) - candle-aura (utils/make-anim (texture "inside-house/candle-aura.png") [27 27] 0.2 [0 1 2 3 2 1] ) - ] + candle-aura (utils/make-anim (texture "inside-house/candle-aura.png") [27 27] 0.2 [0 1 2 3 2 1])] (rooms/make :music :inside-antique :interactions { :lock {:box [172 102 190 124] @@ -239,6 +238,15 @@ (actions/update-state entities #(assoc % :dropped-ball? true)) (actions/do-dialogue entities :ego "Geronimo!!" :ego "*crash*!") + (Thread/sleep 200) + (actions/begin-animation entities :warden :stand) + (Thread/sleep 300) + (actions/do-dialogue entities + :warden "Charlie, is that you chap?" + :warden "What're you doing digging through my trash can?") + (Thread/sleep 300) + (actions/play-animation entities :warden :fall-asleep :stop? false) + (actions/begin-animation entities :warden :sleep) (actions/remove-item entities :ball-n-chain)) (actions/do-dialogue entities :ego "I don't know what to do with that."))) :sword (actions/get-script entities (actions/talk entities :ego "I wouldn't want to accidentally break the Sword of Blergh."))