From 4d044310446a629bdd3f246d76b5a9193e91ddbc Mon Sep 17 00:00:00 2001 From: Bryce Covert Date: Wed, 9 Sep 2015 18:36:29 -0700 Subject: [PATCH] credits screen and stuff. --- desktop/gametodos.txt | 4 - .../resources/dream/fairy-godfather.pxa/0.pxi | Bin 264078 -> 264102 bytes .../resources/dream/fairy-godfather.pxa/1.pxi | Bin 264078 -> 264102 bytes .../resources/dream/fairy-godfather.pxa/2.pxi | Bin 264078 -> 264102 bytes .../resources/dream/fairy-godfather.pxa/3.pxi | Bin 264078 -> 264102 bytes .../resources/dream/fairy-godfather.pxa/4.pxi | Bin 264078 -> 264102 bytes .../resources/dream/fairy-godfather.pxa/5.pxi | Bin 264078 -> 264102 bytes .../resources/dream/fairy-godfather.pxa/6.pxi | Bin 264078 -> 264102 bytes .../resources/dream/fairy-godfather.pxa/7.pxi | Bin 264078 -> 264102 bytes .../resources/dream/fairy-godfather.pxa/8.pxi | Bin 264078 -> 264102 bytes desktop/src-common/advent/screens/credits.clj | 102 +++++++++++++++--- .../advent/screens/rooms/.#behind_house.clj | 1 + .../advent/screens/rooms/behind_house.clj | 12 ++- .../src-common/advent/screens/rooms/held.clj | 7 +- .../advent/screens/rooms/inside_castle.clj | 2 +- .../advent/screens/rooms/outside_house.clj | 18 ++-- .../src-common/advent/screens/rooms/space.clj | 9 +- desktop/src-common/advent/screens/title.clj | 3 +- 18 files changed, 126 insertions(+), 32 deletions(-) create mode 120000 desktop/src-common/advent/screens/rooms/.#behind_house.clj diff --git a/desktop/gametodos.txt b/desktop/gametodos.txt index ac831dea..119a8f7e 100644 --- a/desktop/gametodos.txt +++ b/desktop/gametodos.txt @@ -3,15 +3,11 @@ ART PROGRAMMING + fight with blergh at end isn't great -+ blergh taunts for first fight + proper save/settings file location + Save slots? + try to have dialogue for every wrong interaction + Dialogue frozen + ending credits -+ no self-use when held by bloodclot. -+ no premptive potion making - AUDIO + Walking diff --git a/desktop/resources/dream/fairy-godfather.pxa/0.pxi b/desktop/resources/dream/fairy-godfather.pxa/0.pxi index 6dce43e1f842465ea9026726f78e8e868738a013..d39cee70838e5322dd14b8a3eb2d182b67549fa0 100644 GIT binary patch delta 961 zcmX}qSxD4T6vy%Zax^i^g-|gA$QtO{cDi}5|X6DwY%-A?hF6mU7wzy4Z ze@x9B&B8JaDk&nwmX|0{BZvrtdI(#H7V06QuP9yk-1B?7=bp=LX$=}|4GP|0R%$JG z#>c-d(LoRn+{pptTofj_ldiL$qS00V=TFUnPuow<&zPHDiPg&LRaZ&L#9C)eEl3_{8wYhT3y4={$uc#Uby;5&XRqAAd^5TS@e z3M?pt15UV50h($w)tW(1tplc;trK1FVhE$S2QHy;3GE@C;yGU84L;(tBD#hJh{OtP zLOKdjjs~0sJ#>2LJ?O%r+{HL}O<@pui+74Fmk)dfmZ)=8xiVkpipb1A+8ezv delta 935 zcmYMyOGs2v9LMo{&pj&Egfodr3bqg>s)ZsUL#2#vIKo za~!p~>SX!Mq(taRL`knr5Lmhh1EFjaQPBe;g6caI^@q@>*j8v2lG_%4E+0MNtmIg+_ScLjXaHVFHtw!evZj2G=o*`*?`Qn8OP!VHxl69v|@u zU+@(_6h+k(#iK^hL}DdY!GvhUAQo$}4oTRARHR`u(y({4h1pE7{L^7;x;&h;1J>gp5Q4K@EULM9X}PRMI#<5*n#~hM-w{G4FWX+wE!+* z8Vsg+*jRgo4~mp3!og-T0cqHZ9PB|6xJGG5DY#Bq4KLczg
9KtvlNM6Ma+`}B^ T5qcw39HDQtO{cDi}5|X6DwY%-A?hF6mU7wzy4Z ze@x9B&B8JaDk&nwmX|0{BZvrtdI(#H7V06QuP9yk-1B?7=bp=LX$=}|4GP|0R%$JG z#>c-d(LoRn+{pptTofj_ldiL$qS00V=TFUnPuow<&zPHDiPg&LRaZ&L#9C)eEl3_{8wYhT3y4={$uc#Uby;5&XRqAAd^5TS@e z3M?pt15UV50h($w)tW(1tplc;trK1FVhE$S2QHy;3GE@C;yGU84L;(tBD#hJh{OtP zLOKdjjs~0sJ#>2LJ?O%r+{HL}O<@pui+74Fmk)dfmZ)=8xiVkpipb1A+8ezv delta 935 zcmYMyOGs2v9LMo{&pj&Egfodr3bqg>s)ZsUL#2#vIKo za~!p~>SX!Mq(taRL`knr5Lmhh1EFjaQPBe;g6caI^@q@>*j8v2lG_%4E+0MNtmIg+_ScLjXaHVFHtw!evZj2G=o*`*?`Qn8OP!VHxl69v|@u zU+@(_6h+k(#iK^hL}DdY!GvhUAQo$}4oTRARHR`u(y({4h1pE7{L^7;x;&h;1J>gp5Q4K@EULM9X}PRMI#<5*n#~hM-w{G4FWX+wE!+* z8Vsg+*jRgo4~mp3!og-T0cqHZ9PB|6xJGG5DY#Bq4KLczg
9KtvlNM6Ma+`}B^ T5qcw39HDQtO{cDi}5|X6DwY%-A?hF6mU7wzy4Z ze@x9B&B8JaDk&nwmX|0{BZvrtdI(#H7V06QuP9yk-1B?7=bp=LX$=}|4GP|0R%$JG z#>c-d(LoRn+{pptTofj_ldiL$qS00V=TFUnPuow<&zPHDiPg&LRaZ&L#9C)eEl3_{8wYhT3y4={$uc#Uby;5&XRqAAd^5TS@e z3M?pt15UV50h($w)tW(1tplc;trK1FVhE$S2QHy;3GE@C;yGU84L;(tBD#hJh{OtP zLOKdjjs~0sJ#>2LJ?O%r+{HL}O<@pui+74Fmk)dfmZ)=8xiVkpipb1A+8ezv delta 935 zcmYMyOGs2v9LMo{&pj&Egfodr3bqg>s)ZsUL#2#vIKo za~!p~>SX!Mq(taRL`knr5Lmhh1EFjaQPBe;g6caI^@q@>*j8v2lG_%4E+0MNtmIg+_ScLjXaHVFHtw!evZj2G=o*`*?`Qn8OP!VHxl69v|@u zU+@(_6h+k(#iK^hL}DdY!GvhUAQo$}4oTRARHR`u(y({4h1pE7{L^7;x;&h;1J>gp5Q4K@EULM9X}PRMI#<5*n#~hM-w{G4FWX+wE!+* z8Vsg+*jRgo4~mp3!og-T0cqHZ9PB|6xJGG5DY#Bq4KLczg
9KtvlNM6Ma+`}B^ T5qcw39HDQtO{cDi}5|X6DwY%-A?hF6mU7wzy4Z ze@x9B&B8JaDk&nwmX|0{BZvrtdI(#H7V06QuP9yk-1B?7=bp=LX$=}|4GP|0R%$JG z#>c-d(LoRn+{pptTofj_ldiL$qS00V=TFUnPuow<&zPHDiPg&LRaZ&L#9C)eEl3_{8wYhT3y4={$uc#Uby;5&XRqAAd^5TS@e z3M?pt15UV50h($w)tW(1tplc;trK1FVhE$S2QHy;3GE@C;yGU84L;(tBD#hJh{OtP zLOKdjjs~0sJ#>2LJ?O%r+{HL}O<@pui+74Fmk)dfmZ)=8xiVkpipb1A+8ezv delta 935 zcmYMyOGs2v9LMo{&pj&Egfodr3bqg>s)ZsUL#2#vIKo za~!p~>SX!Mq(taRL`knr5Lmhh1EFjaQPBe;g6caI^@q@>*j8v2lG_%4E+0MNtmIg+_ScLjXaHVFHtw!evZj2G=o*`*?`Qn8OP!VHxl69v|@u zU+@(_6h+k(#iK^hL}DdY!GvhUAQo$}4oTRARHR`u(y({4h1pE7{L^7;x;&h;1J>gp5Q4K@EULM9X}PRMI#<5*n#~hM-w{G4FWX+wE!+* z8Vsg+*jRgo4~mp3!og-T0cqHZ9PB|6xJGG5DY#Bq4KLczg
9KtvlNM6Ma+`}B^ T5qcw39HDQtO{cDi}5|X6DwY%-A?hF6mU7wzy4Z ze@x9B&B8JaDk&nwmX|0{BZvrtdI(#H7V06QuP9yk-1B?7=bp=LX$=}|4GP|0R%$JG z#>c-d(LoRn+{pptTofj_ldiL$qS00V=TFUnPuow<&zPHDiPg&LRaZ&L#9C)eEl3_{8wYhT3y4={$uc#Uby;5&XRqAAd^5TS@e z3M?pt15UV50h($w)tW(1tplc;trK1FVhE$S2QHy;3GE@C;yGU84L;(tBD#hJh{OtP zLOKdjjs~0sJ#>2LJ?O%r+{HL}O<@pui+74Fmk)dfmZ)=8xiVkpipb1A+8ezv delta 935 zcmYMyOGs2v9LMo{&pj&Egfodr3bqg>s)ZsUL#2#vIKo za~!p~>SX!Mq(taRL`knr5Lmhh1EFjaQPBe;g6caI^@q@>*j8v2lG_%4E+0MNtmIg+_ScLjXaHVFHtw!evZj2G=o*`*?`Qn8OP!VHxl69v|@u zU+@(_6h+k(#iK^hL}DdY!GvhUAQo$}4oTRARHR`u(y({4h1pE7{L^7;x;&h;1J>gp5Q4K@EULM9X}PRMI#<5*n#~hM-w{G4FWX+wE!+* z8Vsg+*jRgo4~mp3!og-T0cqHZ9PB|6xJGG5DY#Bq4KLczg
9KtvlNM6Ma+`}B^ T5qcw39HDQtO{cDi}5|X6DwY%-A?hF6mU7wzy4Z ze@x9B&B8JaDk&nwmX|0{BZvrtdI(#H7V06QuP9yk-1B?7=bp=LX$=}|4GP|0R%$JG z#>c-d(LoRn+{pptTofj_ldiL$qS00V=TFUnPuow<&zPHDiPg&LRaZ&L#9C)eEl3_{8wYhT3y4={$uc#Uby;5&XRqAAd^5TS@e z3M?pt15UV50h($w)tW(1tplc;trK1FVhE$S2QHy;3GE@C;yGU84L;(tBD#hJh{OtP zLOKdjjs~0sJ#>2LJ?O%r+{HL}O<@pui+74Fmk)dfmZ)=8xiVkpipb1A+8ezv delta 935 zcmYMyOGs2v9LMo{&pj&Egfodr3bqg>s)ZsUL#2#vIKo za~!p~>SX!Mq(taRL`knr5Lmhh1EFjaQPBe;g6caI^@q@>*j8v2lG_%4E+0MNtmIg+_ScLjXaHVFHtw!evZj2G=o*`*?`Qn8OP!VHxl69v|@u zU+@(_6h+k(#iK^hL}DdY!GvhUAQo$}4oTRARHR`u(y({4h1pE7{L^7;x;&h;1J>gp5Q4K@EULM9X}PRMI#<5*n#~hM-w{G4FWX+wE!+* z8Vsg+*jRgo4~mp3!og-T0cqHZ9PB|6xJGG5DY#Bq4KLczg
9KtvlNM6Ma+`}B^ T5qcw39HDQtO{cDi}5|X6DwY%-A?hF6mU7wzy4Z ze@x9B&B8JaDk&nwmX|0{BZvrtdI(#H7V06QuP9yk-1B?7=bp=LX$=}|4GP|0R%$JG z#>c-d(LoRn+{pptTofj_ldiL$qS00V=TFUnPuow<&zPHDiPg&LRaZ&L#9C)eEl3_{8wYhT3y4={$uc#Uby;5&XRqAAd^5TS@e z3M?pt15UV50h($w)tW(1tplc;trK1FVhE$S2QHy;3GE@C;yGU84L;(tBD#hJh{OtP zLOKdjjs~0sJ#>2LJ?O%r+{HL}O<@pui+74Fmk)dfmZ)=8xiVkpipb1A+8ezv delta 935 zcmYMyOGs2v9LMo{&pj&Egfodr3bqg>s)ZsUL#2#vIKo za~!p~>SX!Mq(taRL`knr5Lmhh1EFjaQPBe;g6caI^@q@>*j8v2lG_%4E+0MNtmIg+_ScLjXaHVFHtw!evZj2G=o*`*?`Qn8OP!VHxl69v|@u zU+@(_6h+k(#iK^hL}DdY!GvhUAQo$}4oTRARHR`u(y({4h1pE7{L^7;x;&h;1J>gp5Q4K@EULM9X}PRMI#<5*n#~hM-w{G4FWX+wE!+* z8Vsg+*jRgo4~mp3!og-T0cqHZ9PB|6xJGG5DY#Bq4KLczg
9KtvlNM6Ma+`}B^ T5qcw39HDQtO{cDi}5|X6DwY%-A?hF6mU7wzy4Z ze@x9B&B8JaDk&nwmX|0{BZvrtdI(#H7V06QuP9yk-1B?7=bp=LX$=}|4GP|0R%$JG z#>c-d(LoRn+{pptTofj_ldiL$qS00V=TFUnPuow<&zPHDiPg&LRaZ&L#9C)eEl3_{8wYhT3y4={$uc#Uby;5&XRqAAd^5TS@e z3M?pt15UV50h($w)tW(1tplc;trK1FVhE$S2QHy;3GE@C;yGU84L;(tBD#hJh{OtP zLOKdjjs~0sJ#>2LJ?O%r+{HL}O<@pui+74Fmk)dfmZ)=8xiVkpipb1A+8ezv delta 935 zcmYMyOGs2v9LMo{&pj&Egfodr3bqg>s)ZsUL#2#vIKo za~!p~>SX!Mq(taRL`knr5Lmhh1EFjaQPBe;g6caI^@q@>*j8v2lG_%4E+0MNtmIg+_ScLjXaHVFHtw!evZj2G=o*`*?`Qn8OP!VHxl69v|@u zU+@(_6h+k(#iK^hL}DdY!GvhUAQo$}4oTRARHR`u(y({4h1pE7{L^7;x;&h;1J>gp5Q4K@EULM9X}PRMI#<5*n#~hM-w{G4FWX+wE!+* z8Vsg+*jRgo4~mp3!og-T0cqHZ9PB|6xJGG5DY#Bq4KLczg
9KtvlNM6Ma+`}B^ T5qcw39HD zre=<2VHpOM6cuL6OBA>eM1(;-ge^o1^$^illrDVk`90lp&*e6^_zbl8`0gt%vXqoY zMoy`kE^h99{Z8LiYPfS#&?5W6GDmIQspfMX=P&d)_wLYF9tm?^?Nm3{n$!l9I!hZd zse1A@qkW4WG4e1*pVE!?sM(mHd*1gxVA`FW7H2E6*(WUpUM0qaCabkW<;Gu4{M{=m zs}5J!7(u#}YDbS5t-37Lj@KJQx&*p4oH$uynvDTQhAtt&6LImU8#8_UQq8eh*@gLb z+d*qioXwhN$#*pw%R~Y^T3Vf6p>1c|jcAc5)iA6gp^2Sc>8WOu-IC+#HqEE>s>q0t z$Z8I}*lSKT$7NZ|vPxVo)Bl|5Qk6#)vCPl&=S&E|MqZC!B zLn{n)p&tXdf#+e_5sP?iM_^pVhK*vJ(BLayqqZoFSq73DrsYX++3G~$3VK~@2&iijt?!C?}P zXe3}4_Mi|&u!1RtDWw99Xoi6<^kD!);6>#Q#=vU|gUDOFQ)Ib(;4`p9ovX^_`8rob GX8r-BP{gDF delta 958 zcmYMyTSyd99LMpQIY-U1ToaQN?76&=i^^%sYX=awW zu9~B6n%7K9gl-a{lGRHPSnfj@2xTu36SC+|6b zK@XI2gVt*FzC-*yZO-<9$d1k~Jw?hmwOg;2GBT;peK6f@v|00pFB|`M{5x>PoNi9G zlvG*l!-K|ueYPPmEh9C*COm^64fA7BUEbznOYaR9Xxu_hapVhF7AO%Xlz28#}hn-2e0u4 z-|Z*^f~$ki3aIn8gAX;k_eN7@>d4d&&NnluN$>Y|Fl~ diff --git a/desktop/src-common/advent/screens/credits.clj b/desktop/src-common/advent/screens/credits.clj index 4cf6ed0a..f83ba5c7 100644 --- a/desktop/src-common/advent/screens/credits.clj +++ b/desktop/src-common/advent/screens/credits.clj @@ -15,29 +15,105 @@ [com.badlogic.gdx Application Audio Files Game Gdx Graphics Input InputMultiplexer InputProcessor Net Preferences Screen])) +(defn center [e] + (assoc e :x (- (/ 1280 2) (/ (or (:width e) (.getWidth (:object e))) 2)))) + +(def credit-messages + [["\"Tick's Tales\" Created By" + "Bryce Covert"] + ["Artwork" + "Bryce Covert"] + ["Programming" + "Bryce Covert"] + ["Music" + "Bryce Covert"] + ["Sound Effects" + "Bryce Covert"] + ["Frog Legs" + "Marya Yama"] + ["Perspective Tutorials" + "Jana Covert"] + ["Motivational Tapes" + "Eriq Chang"] + ["In Loving Memory Of" + "Took, son of Luke, son of Puke"]]) + +(defn get-role-style [entities opacity] + (style :label (:font entities) (color 1.0 1.0 1.0 opacity))) + +(defn style-role [entities] + (when-let [opacity (:opacity (:role entities))] + (label! (:role entities) :set-style (get-role-style entities opacity)))) + +(defn get-person-style [entities opacity] + (style :label (:font entities) (color 0.6 1.0 1.0 opacity))) + +(defn style-person [entities] + (when-let [opacity (:opacity (:person entities))] + (label! (:person entities) :set-style (get-person-style entities opacity)))) + +(defn chain-tweens [screen entities id] + (let [fade-out (tween/tween [:fade id :out] + (assoc screen :total-time (+ 4.0 (:total-time screen))) + [id :opacity] + 1.0 0.0 + 2.0 + :finish #(dissoc % id)) + pause (tween/tween [:fade id :pause] + (assoc screen :total-time (+ 2.0 (:total-time screen))) + [id :opacity] + 1.0 1.0 + 2.0 + :finish (fn [e] (assoc-in e [:tweens [:fade id :out]] fade-out))) + fade-in (tween/tween [:fade id :in] screen + [id :opacity] + 0.0 1.0 + 2.0 + :finish (fn [e] (assoc-in e [:tweens [:fade id :pause]] pause)))] + fade-in)) + +(defn start-message-if-necessary [screen entities] + (if (and (not (get-in entities [:role])) + (= 0.0 (get-in entities [:fade :opacity]))) + (let [[[next-role next-person] & remaining-messages] (:remaining-messages entities)] + (if next-role + (-> entities + (assoc :role (center (assoc (label next-role (get-role-style entities 0.0) :set-alignment Align/center) :x 640 :y 480 ))) + (assoc :person (center (assoc (label next-person (get-person-style entities 0.0) :set-alignment Align/center) :x 640 :y 440 ))) + (assoc-in [:tweens [:fade :role :in]] (chain-tweens screen entities :role)) + (assoc-in [:tweens [:fade :person :in]] (chain-tweens screen entities :person)) + (assoc :remaining-messages remaining-messages)) + entities)) + entities)) + (defscreen credits :on-show (fn [screen entities] - (utils/setup-viewport screen 320 240) + (utils/setup-viewport screen 1280 960) (input! :set-cursor-image (utils/cursor "cursor.png" :main) 0 0) - {:fade (assoc (texture "black.png") - :scale-x 80 - :scale-y 80 - :opacity 0.0 - :origin-x 0 - :origin-y 0) - :the-end (assoc (texture "the-end.png") :x 0 :y 0) - :tweens {:fade-in - (tween/tween :fade-in screen [:fade :opacity] 1.0 0.0 5.0 :ease tween/ease-out-cubic)}} - ) + (let [font (bitmap-font "ego/font.fnt" )] + {:font font + :fade (assoc (texture "black.png") + :scale-x 80 + :scale-y 80 + :opacity 0.0 + :origin-x 0 + :origin-y 0) + :remaining-messages credit-messages + :the-end (assoc (texture "the-end.png") :x 0 :y 0 :scale-x 4 :scale-y 4 :origin-x 0 :origin-y 0) + :tweens {:fade-in + (tween/tween :fade-in screen [:fade :opacity] 1.0 0.0 5.0 :ease tween/ease-out-cubic)}})) :on-render (fn [{:keys [^FitViewport viewport] :as screen} [entities]] (.apply viewport) - (let [entities (utils/apply-tweens screen entities (:tweens entities))] + (let [entities (utils/apply-tweens screen entities (:tweens entities)) + entities (start-message-if-necessary screen entities)] + (style-role entities) + (style-person entities) - (render! screen [(:the-end entities) (:fade entities)]) + (render! screen [(:the-end entities) (:role entities) (:person entities) (:fade entities)]) entities)) diff --git a/desktop/src-common/advent/screens/rooms/.#behind_house.clj b/desktop/src-common/advent/screens/rooms/.#behind_house.clj new file mode 120000 index 00000000..db1830a8 --- /dev/null +++ b/desktop/src-common/advent/screens/rooms/.#behind_house.clj @@ -0,0 +1 @@ +brycecovert@brometheus.local.31618 \ No newline at end of file diff --git a/desktop/src-common/advent/screens/rooms/behind_house.clj b/desktop/src-common/advent/screens/rooms/behind_house.clj index 8f96ef2f..fe8665d2 100644 --- a/desktop/src-common/advent/screens/rooms/behind_house.clj +++ b/desktop/src-common/advent/screens/rooms/behind_house.clj @@ -85,7 +85,17 @@ (actions/talk entities :ego "It looks like the wall is crumbling here.") (actions/play-animation entities :ego :reach) (actions/update-entity entities :peeling #(assoc % :opacity 0)) - (actions/update-state entities (fn [state] (assoc state :opened-crack? true))))))) + (actions/update-state entities (fn [state] (assoc state :opened-crack? true)))))) + :scripts {:stick (actions/get-script entities + (if (get-in @entities [:state :opened-crack?]) + (actions/talk entities :ego "I could shove the stick in that, hole, but why?") + (actions/do-dialogue entities + :ego "It looks like that wall is crumbling." + :ego "I can probably scratch it off with my hand."))) + :sword (actions/get-script entities + (actions/do-dialogue entities + :ego "I should be careful with this sword." + :ego "It's sharp!"))}) :bird (utils/make-bird screen [[50 235] [80 220] [100 239] [180 235] [85 225]]) :outside-particles (common/make-outside-particles)} :collision "behindhouse/collision.png" diff --git a/desktop/src-common/advent/screens/rooms/held.clj b/desktop/src-common/advent/screens/rooms/held.clj index a2c19e6d..a6500df6 100644 --- a/desktop/src-common/advent/screens/rooms/held.clj +++ b/desktop/src-common/advent/screens/rooms/held.clj @@ -96,4 +96,9 @@ (update-in [:tweens] dissoc :cam-x :cam-y) (update-in [:room :entities :ego] #(actions/start-animation screen % :suspended)) (assoc-in [:room :entities :ego :stand-override] :suspended) - (assoc-in [:room :entities :ego :talk-override] :suspended-talk)))))) + (assoc-in [:room :entities :ego :talk-override] :suspended-talk) + (assoc-in [:room :entities :ego :get-script] (fn [cursor [x y]] + (actions/get-script entities + (if (= :flask-1-strength (:value cursor)) + (common/do-win entities) + (actions/talk entities :ego "I can't reach it!")))))))))) diff --git a/desktop/src-common/advent/screens/rooms/inside_castle.clj b/desktop/src-common/advent/screens/rooms/inside_castle.clj index 4b4548a3..ed256d9e 100644 --- a/desktop/src-common/advent/screens/rooms/inside_castle.clj +++ b/desktop/src-common/advent/screens/rooms/inside_castle.clj @@ -275,7 +275,7 @@ (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 am Bloodclot, the 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..." diff --git a/desktop/src-common/advent/screens/rooms/outside_house.clj b/desktop/src-common/advent/screens/rooms/outside_house.clj index ad2a3459..fb437c47 100644 --- a/desktop/src-common/advent/screens/rooms/outside_house.clj +++ b/desktop/src-common/advent/screens/rooms/outside_house.clj @@ -31,8 +31,7 @@ (assoc-in [:tweens :dawn-g-s] (tween/tween :dawn-g-s screen [:time-profiles :sprite :g] :current 0.36 50.0 :entities entities)) (assoc-in [:tweens :dawn-b-s] (tween/tween :dawn-b-s screen [:time-profiles :sprite :b] :current 0.23 50.0 :entities entities)) (assoc-in [:tweens :hue-amount-v-s] (tween/tween :hue-amount-v-s screen [:time-profiles :sprite :hue-amount] :current 0.0 50.0 :entities entities)) - (assoc-in [:tweens :multiply-amount-v-s] (tween/tween :multiply-amount-v-s screen [:time-profiles :sprite :multiply-amount] :current 0.0 50.0 :entities entities))) - ) + (assoc-in [:tweens :multiply-amount-v-s] (tween/tween :multiply-amount-v-s screen [:time-profiles :sprite :multiply-amount] :current 0.0 50.0 :entities entities)))) (continue [this screen entities] entities) (done? [this screen entities] @@ -43,8 +42,6 @@ :none))) - - (defn walk-to-castle [entities & {:keys [skip-type stop?] :or {skip-type :end stop? true}}] (actions/walk-to entities :ego [0 80] :skip-type skip-type) (actions/walk-straight-to entities :ego [-20 80]) @@ -699,6 +696,10 @@ (items/make-cream-of-mushroom entities) (leave-sheep entities)) (actions/talk entities :ego "She's too far away."))) + + :sword + (actions/get-script entities + (actions/talk entities :ego "That's just cruel.")) nil) :left {:walk (utils/flip sheep-walk) :stand (utils/flip sheep-stand)} @@ -731,8 +732,8 @@ (actions/talk entities :ego "Aww, it's a newborn lamb!") ) :scripts {:carrot (actions/get-script entities (actions/talk entities :ego "I think it's still nursing.")) - :grass (actions/get-script entities (actions/talk entities :ego "I think it's still nursing."))} - ) + :grass (actions/get-script entities (actions/talk entities :ego "I think it's still nursing.")) + :sword (actions/get-script entities (actions/talk entities :ego "I prefer to let the butcher make lamb chops."))}) :butterfly (assoc (animation->texture screen butterfly-stand) :x 161 :y 218 @@ -756,7 +757,10 @@ :scripts put-something-in-cauldron)) :wizard (rooms/make-entity :wizard (common/make-wizard screen {:x 190 :y 78 :baseline 162 :scale-x 1.2 :scale-y 1.2 :script (actions/get-script entities (talk-to-gandarf-outside entities)) - :scripts {:default (actions/get-script entities (actions/talk entities :wizard "No time for that!"))}})) + :scripts {:default (actions/get-script entities (actions/talk entities :wizard "No time for that!")) + :sword (actions/get-script entities (actions/do-dialogue entities + :wizard "The Sword of Blergh!" + :wizard "Good job, Tick."))}})) :note (rooms/make-entity :note (assoc (texture "outsidehouse/note.png") :x 277 :y 74 :baseline 160 :night-profile :none diff --git a/desktop/src-common/advent/screens/rooms/space.clj b/desktop/src-common/advent/screens/rooms/space.clj index bc7293ba..fd784e4d 100644 --- a/desktop/src-common/advent/screens/rooms/space.clj +++ b/desktop/src-common/advent/screens/rooms/space.clj @@ -20,11 +20,12 @@ (get-in entities [:state :active?]) (not (get-in entities [:state :blergh-dead?])) (not (actions/has-item? entities :magic-slingshot))) - ((actions/get-script entities (actions/do-dialogue entities :bloodclot-head (rand-nth ["Come on, little man! Try and hit me!" - "What's the matter? Cold feet?" + ((actions/get-script entities (actions/do-dialogue entities :bloodclot-head (rand-nth ["Come over here, so I can eat you!" + "The taste of children makes my tummy rumble!" "Come here and fight me like man!" - "Your precious Georgia McGorgeous would be laughing if she saw you now." - "Pick up your weapon and fight!"]))) entities)) + "Georgia McGorgeous will be so impressed with how quickly I eat you!" + "Come on, I'm hungry!" + "First I'll eat you, then I'll eat Georgia McGorgeous!"]))) entities)) nil) (defn shock [screen entities] diff --git a/desktop/src-common/advent/screens/title.clj b/desktop/src-common/advent/screens/title.clj index 8b1c0a3a..d8b2a480 100644 --- a/desktop/src-common/advent/screens/title.clj +++ b/desktop/src-common/advent/screens/title.clj @@ -210,7 +210,8 @@ (tween/tween :fade-out screen [:fade :opacity] 0.0 1.0 1.0 :finish (fn [entities] (utils/stop-sound (:music entities)) - (set-screen! @(resolve 'advent.core/advent) scene/scene scene/demo scene/hud dialogue/talking-screen dialogue/choice-screen inventory/inventory-screen safe/safe-screen fade/fade-screen) + (set-screen! @(resolve 'advent.core/advent) scene/scene scene/demo scene/hud dialogue/talking-screen dialogue/choice-screen inventory/inventory-screen safe/safe-screen fade/fade-screen + ) entities) :ease tween/ease-in-cubic)) (assoc-in [:tweens :fade-out-music]