diff --git a/desktop/resources/ego/dot.png b/desktop/resources/ego/dot.png new file mode 100644 index 00000000..9b630c47 Binary files /dev/null and b/desktop/resources/ego/dot.png differ diff --git a/desktop/resources/ego/scared.png b/desktop/resources/ego/scared.png new file mode 100644 index 00000000..670c25d6 Binary files /dev/null and b/desktop/resources/ego/scared.png differ diff --git a/desktop/resources/ego/scared.pxa/0.pxi b/desktop/resources/ego/scared.pxa/0.pxi new file mode 100644 index 00000000..4c2b12ea Binary files /dev/null and b/desktop/resources/ego/scared.pxa/0.pxi differ diff --git a/desktop/resources/ego/scared.pxa/1.pxi b/desktop/resources/ego/scared.pxa/1.pxi new file mode 100644 index 00000000..7484b518 Binary files /dev/null and b/desktop/resources/ego/scared.pxa/1.pxi differ diff --git a/desktop/resources/ego/scared.pxa/2.pxi b/desktop/resources/ego/scared.pxa/2.pxi new file mode 100644 index 00000000..210670e0 Binary files /dev/null and b/desktop/resources/ego/scared.pxa/2.pxi differ diff --git a/desktop/resources/ego/scared.pxa/3.pxi b/desktop/resources/ego/scared.pxa/3.pxi new file mode 100644 index 00000000..8f38c5e2 Binary files /dev/null and b/desktop/resources/ego/scared.pxa/3.pxi differ diff --git a/desktop/resources/ego/scared.pxa/CelData.plist b/desktop/resources/ego/scared.pxa/CelData.plist new file mode 100644 index 00000000..f0b74d60 --- /dev/null +++ b/desktop/resources/ego/scared.pxa/CelData.plist @@ -0,0 +1,22 @@ + + + + + + duration + 1 + + + duration + 1 + + + duration + 1 + + + duration + 1 + + + diff --git a/desktop/resources/ego/step b/desktop/resources/ego/step new file mode 100644 index 00000000..cefbd7fd --- /dev/null +++ b/desktop/resources/ego/step @@ -0,0 +1,148 @@ +Untitled +- Delay - +active: false +- Duration - +lowMin: 100.0 +lowMax: 100.0 +- Count - +min: 0 +max: 200 +- Emission - +lowMin: 5.0 +lowMax: 5.0 +highMin: 60.0 +highMax: 60.0 +relative: false +scalingCount: 1 +scaling0: 1.0 +timelineCount: 1 +timeline0: 0.0 +- Life - +lowMin: 2000.0 +lowMax: 2000.0 +highMin: 500.0 +highMax: 1000.0 +relative: false +scalingCount: 3 +scaling0: 1.0 +scaling1: 1.0 +scaling2: 0.3 +timelineCount: 3 +timeline0: 0.0 +timeline1: 0.66 +timeline2: 1.0 +- Life Offset - +active: false +- X Offset - +active: false +- Y Offset - +active: false +- Spawn Shape - +shape: point +- Spawn Width - +lowMin: 0.0 +lowMax: 0.0 +highMin: 0.0 +highMax: 0.0 +relative: false +scalingCount: 1 +scaling0: 1.0 +timelineCount: 1 +timeline0: 0.0 +- Spawn Height - +lowMin: 0.0 +lowMax: 0.0 +highMin: 0.0 +highMax: 0.0 +relative: false +scalingCount: 1 +scaling0: 1.0 +timelineCount: 1 +timeline0: 0.0 +- Scale - +lowMin: 1.0 +lowMax: 1.0 +highMin: 1.0 +highMax: 1.0 +relative: false +scalingCount: 1 +scaling0: 1.0 +timelineCount: 1 +timeline0: 0.0 +- Velocity - +active: true +lowMin: 0.0 +lowMax: 0.0 +highMin: 5.0 +highMax: 5.0 +relative: false +scalingCount: 1 +scaling0: 1.0 +timelineCount: 1 +timeline0: 0.0 +- Angle - +active: true +lowMin: 90.0 +lowMax: 90.0 +highMin: 0.0 +highMax: 180.0 +relative: false +scalingCount: 3 +scaling0: 1.0 +scaling1: 0.0 +scaling2: 0.0 +timelineCount: 3 +timeline0: 0.0 +timeline1: 0.5 +timeline2: 1.0 +- Rotation - +active: false +- Wind - +active: false +- Gravity - +active: true +lowMin: 2.0 +lowMax: 2.0 +highMin: -10.0 +highMax: -10.0 +relative: false +scalingCount: 3 +scaling0: 0.0 +scaling1: 0.7755102 +scaling2: 1.0 +timelineCount: 3 +timeline0: 0.0 +timeline1: 0.6369863 +timeline2: 0.9589041 +- Tint - +colorsCount: 3 +colors0: 1.0 +colors1: 1.0 +colors2: 1.0 +timelineCount: 1 +timeline0: 0.0 +- Transparency - +lowMin: 0.0 +lowMax: 0.0 +highMin: 1.0 +highMax: 1.0 +relative: false +scalingCount: 4 +scaling0: 0.0 +scaling1: 1.0 +scaling2: 0.75 +scaling3: 0.0 +timelineCount: 4 +timeline0: 0.0 +timeline1: 0.2 +timeline2: 0.8 +timeline3: 1.0 +- Options - +attached: false +continuous: false +aligned: false +additive: true +behind: false +premultipliedAlpha: false +- Image Path - +dot.png diff --git a/desktop/resources/space/Untitled.png b/desktop/resources/space/Untitled.png new file mode 100644 index 00000000..c6076204 Binary files /dev/null and b/desktop/resources/space/Untitled.png differ diff --git a/desktop/resources/space/bloodclot-stand.pxa/1.pxi b/desktop/resources/space/bloodclot-stand.pxa/1.pxi new file mode 100644 index 00000000..24952d3b Binary files /dev/null and b/desktop/resources/space/bloodclot-stand.pxa/1.pxi differ diff --git a/desktop/src-common/advent/screens/rooms/inside_castle.clj b/desktop/src-common/advent/screens/rooms/inside_castle.clj index 48ee80de..89dfff5c 100644 --- a/desktop/src-common/advent/screens/rooms/inside_castle.clj +++ b/desktop/src-common/advent/screens/rooms/inside_castle.clj @@ -145,21 +145,24 @@ (actions/add-entity entities :blergh (get-in @entities [:room :blergh])) - (actions/do-dialogue entities :ego "Who are you?!" + (actions/talk entities :ego "Who are you?!" :anim :scared-talk) + (actions/begin-animation entities :ego :scared) + (actions/do-dialogue entities :bloodclot-head "I am Bloodclot, the Scottish goblin!" :bloodclot-head "I've spent last 100 years training for this day." :bloodclot-head "The day when I must best the worthiest of knights in battle." :bloodclot-head "But I had never expected my foe to be so..." :bloodclot-head "... appetizing." :bloodclot-head "You're no hero. You're just a morsel." - :bloodclot-head "Come here, and I promise I will spare you much pain." - :ego "Wait a second. I'm just a kid.") + :bloodclot-head "Come here, and I promise I will spare you much pain.") + (actions/talk entities :ego "Wait a second. I'm just a kid." :anim :scared-talk) (actions/walk-straight-to entities :ego [115 45] :override-dir :right) - (actions/do-dialogue entities :ego "I'm just trying to impress Georgia McGorgeous.") + (actions/talk entities :ego "I'm just trying to impress Georgia McGorgeous." :anim :scared-talk) (actions/walk-straight-to entities :ego [75 45] :override-dir :right) - (actions/do-dialogue entities :ego "I just... accidentally pulled the sword!") + (actions/talk entities :ego "I just... accidentally pulled the sword!":anim :scared-talk) (actions/walk-straight-to entities :ego [35 45] :override-dir :right) - (actions/do-dialogue entities :ego "I wouldn't taste very good anyhow!") + (actions/talk entities :ego "I wouldn't taste very good anyhow!" :anim :scared-talk) + (actions/begin-animation entities :ego :scared) (actions/do-dialogue entities :bloodclot-head "'Fight he must for one more test,\nHe will die if not the best.'" :bloodclot-head "Ring any bells?" diff --git a/desktop/src-common/advent/screens/scene.clj b/desktop/src-common/advent/screens/scene.clj index 2e127b8e..66a59cdd 100644 --- a/desktop/src-common/advent/screens/scene.clj +++ b/desktop/src-common/advent/screens/scene.clj @@ -188,6 +188,8 @@ shock (utils/make-anim "ego/shock.png" [40 48] 0.075 (flatten (repeat 2 [(repeat 5 [0 1 2]) (repeat 5 [3 4 5]) (repeat 5 [6 7 8])]))) burnt (utils/make-anim "ego/burnt.png" [40 46] 0.12 [1 2 3 2 1 2 3 2 1 0 2 0 4 5 6 7 8 9 10 11 10 9 10 11]) passed-out (utils/make-anim "ego/burnt.png" [40 46] 0.12 [9 10 11 10]) + scared (utils/make-anim "ego/scared.png" [18 36] 0.05 [0 1]) + scared-talk (utils/make-anim "ego/scared.png" [18 36] 0.05 [0 1 0 1 0 1 0 1 2 3 2 3 2 3 2 3]) ego {:right {:walk walk-right :stand stand-anim @@ -218,7 +220,9 @@ :pant pant :shock shock :burnt burnt - :passed-out passed-out} + :passed-out passed-out + :scared scared + :scared-talk scared-talk} :left {:walk (utils/flip walk-right) :stand (utils/flip stand-anim) :talk (utils/flip talk-anim) @@ -447,7 +451,7 @@ :inventory (assoc (texture "inventory.png") :x 278 :y 0 :baseline 9000 :mouse-in? (zone/box 278 0 320 42)) :fps (assoc (label "0" (color :white) ) :x 5 :baseline 0)}] - (music! (utils/get-current-music entities) :set-volume (get-in entities [:volume :value])) + (music! (utils/get-current-music entities) :set-volume 0.0 #_(get-in entities [:volume :value])) (utils/play-sound (get-in entities [:musics (actions/get-music (get-in entities [:room :music]) (get-in entities [:state :time]))])) @@ -486,7 +490,7 @@ (play-key-sounds (get-in entities [:room :entities])) (doseq [m (vals (get-in entities [:musics]))] (when m - (music! m :set-volume (get-in entities [:volume :value]) ))) + (music! m :set-volume 0.0 #_(get-in entities [:volume :value]) ))) (label! (:fps entities) :set-text (str (game :fps)))