more grandma refinement.
This commit is contained in:
Binary file not shown.
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.6 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -34,5 +34,17 @@
|
||||
<key>duration</key>
|
||||
<real>1</real>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>duration</key>
|
||||
<real>1</real>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>duration</key>
|
||||
<real>1</real>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>duration</key>
|
||||
<real>1</real>
|
||||
</dict>
|
||||
</array>
|
||||
</plist>
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 5.7 KiB |
@@ -72,7 +72,6 @@
|
||||
|
||||
|
||||
(def medal {:name "Medal of strength" :value :medal :cursor :medal})
|
||||
(def certificate {:name "Certificate of courage" :value :certificate :cursor :certificate})
|
||||
|
||||
|
||||
(def items
|
||||
@@ -108,6 +107,6 @@
|
||||
:flask-1-with-cream-of-mushroom {:name "Flask with cream of mushrooms soup" :value :flask-1-with-cream-of-mushroom :cursor :flask-with-contents
|
||||
:scripts {:slobber (make-strength-potion)}}
|
||||
:medal {:name "Medal of strength" :value :medal :cursor :medal}
|
||||
:certificate {:name "Certificate of courage" :value :certificate :cursor :certificate}
|
||||
:kiss {:name "Kiss for courage" :value :kiss :cursor :kiss}
|
||||
:sword {:name "Sword of Blergh" :value :sword :cursor :sword}
|
||||
})
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
[play-clj.utils :refer :all]
|
||||
[play-clj.g2d :refer :all]))
|
||||
(defn get-down [entities]
|
||||
(actions/talk entities :ego "I'll get down.")
|
||||
|
||||
(actions/walk-straight-to entities :ego [151 50] :update-baseline? false :face :left)
|
||||
(actions/play-animation entities :ego :reach)
|
||||
(actions/remove-entity entities :blank)
|
||||
@@ -23,9 +23,10 @@
|
||||
cat-walk (animation 0.2 [(texture "cat-tree/pounce.png")])
|
||||
ladder-entity (assoc (texture "inside-cafeteria/ladder.png") :x 120 :y 60 :baseline 162)
|
||||
grandma-stand (utils/make-anim "cat-tree/grandma.png" [25 36] 0.2 [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1])
|
||||
grandma-cat-stand (utils/make-anim "cat-tree/grandma.png" [25 36] 0.2 [6 6 6 6 6 6 6 6 6 6 6 6 6 6 7])
|
||||
grandma-squat (utils/make-anim "cat-tree/grandma.png" [25 36] 0.2 [3 4 5 4 3])
|
||||
grandma-talk (utils/make-anim "cat-tree/grandma.png" [25 36] 0.2 [0 2 0 2 0 2 0 2 0 2 0 1 0 2 0 0])]
|
||||
grandma-squat-1 (utils/make-anim "cat-tree/grandma.png" [25 36] 0.2 [3 4 5 5 5 5 5])
|
||||
grandma-squat-2 (utils/make-anim "cat-tree/grandma.png" [25 36] 0.2 [5 5 4 3])
|
||||
grandma-talk (utils/make-anim "cat-tree/grandma.png" [25 36] 0.2 [0 2 0 2 0 2 0 2 0 2 0 1 0 2 0 0])
|
||||
grandma-kiss (utils/make-anim "cat-tree/grandma.png" [25 36] 0.2 [0 8 9 10 9 10 9 10 9 8 0])]
|
||||
(rooms/make :music :town-2
|
||||
:interactions
|
||||
{:down-dir {:box [150 0 270 20]
|
||||
@@ -46,6 +47,7 @@
|
||||
{:object nil :x 0 :y 0 :width 320 :height 240 :baseline 240
|
||||
:script (actions/get-script entities
|
||||
(when (get-in @entities [:room :entities :ladder])
|
||||
(actions/talk entities :ego "I'll get down.")
|
||||
(get-down entities)))}))
|
||||
)}}
|
||||
:grass {:box [26 105 60 160]
|
||||
@@ -72,20 +74,27 @@
|
||||
(if (get-in @entities [:room :entities :ladder])
|
||||
(do (actions/talk entities :ego "I think he's going for it!")
|
||||
(actions/play-animation entities :ego :cat-toy-first-half :stop? false)
|
||||
(sound! (sound "cat-tree/cat.ogg") :play)
|
||||
(actions/walk-straight-to entities :cat [138 40] :update-baseline? false :speed 3)
|
||||
(actions/play-animation entities :ego :cat-toy-last-half)
|
||||
(swap! entities #(assoc-in % [:room :entities :grandma :stand]
|
||||
(get-in % [:room :entities :grandma :cat-stand])))
|
||||
(actions/play-animation entities :grandma :squat)
|
||||
(actions/play-animation entities :grandma :squat-1 :stop? false)
|
||||
(actions/remove-entity entities :cat)
|
||||
(actions/play-animation entities :grandma :squat-2)
|
||||
(actions/do-dialogue entities :grandma "Thank you for rescuing my furry friend, young man!")
|
||||
(get-down entities)
|
||||
(actions/walk-straight-to entities :ego [165 45] :face :left)
|
||||
(actions/do-dialogue entities
|
||||
:grandma "Thank you for rescuing my furry friend, young man!"
|
||||
:ego "It's nothing."
|
||||
:grandma "You are so brave!"
|
||||
:grandma "Here's a certificate of bravery!")
|
||||
(actions/talk entities :ego "TODO: get award from little old lady in this room")
|
||||
(actions/give entities :certificate))
|
||||
:ego "It's no big deal."
|
||||
:grandma "You won't go unrewarded!"
|
||||
:grandma "Come here young man.")
|
||||
(actions/walk-straight-to entities :ego [133 35])
|
||||
(actions/talk entities :grandma "For your impressive display of courage and bravery, I give you this. ")
|
||||
(sound! (sound "cat-tree/kiss.ogg") :play)
|
||||
(actions/play-animation entities :grandma :kiss)
|
||||
(actions/give entities :kiss)
|
||||
(actions/play-animation entities :ego :get-sick :stop? false)
|
||||
(actions/walk-straight-to entities :ego [165 45])
|
||||
(actions/talk entities :ego "Ugh! Gross!"))
|
||||
(actions/talk entities :ego "I guess I'm too far away.")))})
|
||||
cat-stand)
|
||||
:grandma (assoc (animation->texture screen grandma-stand)
|
||||
@@ -93,9 +102,10 @@
|
||||
:anim grandma-stand
|
||||
:anim-start 0
|
||||
:talk grandma-talk
|
||||
:cat-stand grandma-cat-stand
|
||||
:kiss grandma-kiss
|
||||
:stand grandma-stand
|
||||
:squat grandma-squat
|
||||
:squat-1 grandma-squat-1
|
||||
:squat-2 grandma-squat-2
|
||||
:origin-x 12
|
||||
:origin-y 0
|
||||
:scale-x 1.45
|
||||
@@ -104,7 +114,7 @@
|
||||
:scale-fn (utils/scaler-fn-with-baseline 110 0.10 1.20)
|
||||
:apply-state (fn [entities]
|
||||
(as-> entities entities
|
||||
(if (actions/has-item? entities :certificate)
|
||||
(if (actions/has-item? entities :kiss)
|
||||
(update-in entities [:room :entities] #(dissoc % :cat))
|
||||
entities)))
|
||||
:start-pos [203 1])))
|
||||
|
||||
@@ -106,7 +106,7 @@
|
||||
(actions/talk entities :ego "I got it! I will become the greatest knight Remington has ever known!"))
|
||||
|
||||
(defn try-to-pull-sword [entities missing-items obtained-items]
|
||||
(let [item->proof {:trophy "wisdom" :medal "strength" :certificate "courage"}]
|
||||
(let [item->proof {:trophy "wisdom" :medal "strength" :kiss "courage"}]
|
||||
(actions/play-animation entities :ego :reach)
|
||||
(actions/do-dialogue entities
|
||||
:ego "I can't pull it out!"
|
||||
@@ -159,8 +159,8 @@
|
||||
(do (actions/talk entities :ego "That's the coolest sword I've ever seen!!")
|
||||
(actions/walk-to entities :ego [37 134] :face :left)
|
||||
(actions/talk entities :ego "If I pull it out I can become a great knight!")
|
||||
(let [missing-items (set/difference #{:trophy :medal :certificate} (get-in @entities [:state :obtained-items]))
|
||||
obtained-items (set/intersection #{:trophy :medal :certificate} (get-in @entities [:state :obtained-items]))]
|
||||
(let [missing-items (set/difference #{:trophy :medal :kiss} (get-in @entities [:state :obtained-items]))
|
||||
obtained-items (set/intersection #{:trophy :medal :kiss} (get-in @entities [:state :obtained-items]))]
|
||||
(if (= #{} missing-items)
|
||||
(pull-sword entities)
|
||||
(try-to-pull-sword entities missing-items obtained-items)))))
|
||||
@@ -203,9 +203,6 @@
|
||||
:anim trophy
|
||||
:anim-start 0
|
||||
:script (actions/get-script entities
|
||||
(actions/give entities :trophy)
|
||||
(actions/give entities :certificate)
|
||||
(actions/give entities :medal)
|
||||
(walk-to-player entities)
|
||||
(if (= nil (get-in @entities [:state :current-riddle]))
|
||||
(let [{:keys [run choices]} (nice-trophy-dialogue entities)]
|
||||
|
||||
@@ -122,6 +122,7 @@
|
||||
grow (animation 0.1 (for [i [0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 3 0 0 0 0 3 0 0 0 3 3 0 0 0 2 2 0 0 2 0 0 2 0 2 0 2 0 2 0 2 0 2 3 2 3 2 3 2 3 2 4 3 4 3 4 3 4]]
|
||||
(texture (aget grow-sheet 0 i))))
|
||||
hold-up-to-window (utils/make-anim "ego/hold-up-to-window.png" [18 36] 0.1 [0 1 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 1 0 0 0 0 0 0])
|
||||
get-sick (animation 0.3 (map (partial get [(aget talk-sheet 0 0 ) (texture "ego/get-sick.png")]) [0 1 1 1 1 1 1 1 1 1 1 1]) )
|
||||
ego {:right {:walk walk-right
|
||||
:stand stand-anim
|
||||
:talk talk-anim
|
||||
@@ -133,6 +134,7 @@
|
||||
:cat-toy-first-half cat-toy-first-half
|
||||
:cat-toy-last-half cat-toy-last-half
|
||||
:grow grow
|
||||
:get-sick get-sick
|
||||
:hold-up-to-window hold-up-to-window
|
||||
[:fire 1] fire-1-anim
|
||||
[:fire 2] fire-2-anim
|
||||
@@ -145,6 +147,7 @@
|
||||
:squat (utils/flip squat-anim)
|
||||
:reach (utils/flip reach-anim)
|
||||
:cat-toy (utils/flip cat-toy-anim)
|
||||
:get-sick (utils/flip get-sick)
|
||||
:cat-toy-first-half (utils/flip cat-toy-first-half)
|
||||
:cat-toy-last-half (utils/flip cat-toy-last-half)
|
||||
:grow (utils/flip grow)
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
(let [{:keys [x y]} (input->screen screen {:x (:input-x screen) :y (:input-y screen)})]
|
||||
(println (:input-x screen) (:input-y screen) "->" x y)))
|
||||
|
||||
(def +all-cursors+ [:main :wool :mushrooms :carrot :right :down :left :up :flask :flask-with-contents :trophy :ladder :stick :cat-toy :balloon :frog-legs :teddy :portrait :recipe :glass-eye :motivational-tapes :used-earplugs :grass :slobber :flask-with-strength :medal :certificate :sword])
|
||||
(def +all-cursors+ [:main :wool :mushrooms :carrot :right :down :left :up :flask :flask-with-contents :trophy :ladder :stick :cat-toy :balloon :frog-legs :teddy :portrait :recipe :glass-eye :motivational-tapes :used-earplugs :grass :slobber :flask-with-strength :medal :kiss :sword])
|
||||
|
||||
(defn cursor [filename which]
|
||||
(let [scale 2
|
||||
|
||||
Reference in New Issue
Block a user