From f3244eaafb28f8aec9c4c48dc051d35b34656339 Mon Sep 17 00:00:00 2001 From: Remington Covert Date: Sat, 8 Nov 2014 18:06:28 -0800 Subject: [PATCH] more puzzling. --- desktop/resources/cursor.png | Bin 3935 -> 4246 bytes desktop/src-common/advent/screens/items.clj | 1 + .../advent/screens/rooms/inside_antique.clj | 20 +++++++++++++----- desktop/src-common/advent/utils.clj | 2 +- 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/desktop/resources/cursor.png b/desktop/resources/cursor.png index 0f63380bfdcdff362d0a36b2091860c32aa1da55..95d8609f19173ff06ec613ad0fa0e09b2031e111 100644 GIT binary patch delta 3171 zcmV-p44m`d9+n}nQv`nuElET{RCodHU43v>M-|@}Ym1W5T1Dxkh-m<&K&O=swIYa2 zlMF4xC{+9Lm+~10$FW5%9~mG_T56r@*pU$kptiLYEw#f?nUD@r6srtr8G%-T5HQV@ z5v>-2itTW{zkT`LoV)Mt{dg}V%yf6=<(xfx&bj+eZr<=|0=;nkmWIq>*A53kQwULAQ|jyK(NQ{;Gm&edJZMZiU%^a$kO!n<(6 z%axUBzEqdq|BmSohuq~ObKpTs^+|htFirc|2iR3B_qM0w?ctuHO<&zx^mj4n?YDl| zoB5fKs`~HlFX{KaVeMk?xhJ1crT8*|f6D3pxd#F4t$R*}!uw*^n>jNfsF^ZCH9Y-_ zj#Jf`>x193G|c4+!+8AF!-Ya=ED1%NADe&5VcXKuqU!4EicVqx{1p`y z8|gDE1@M=bm#<4}=bdjTh})S%O@aB96IA3qwC-CsdmkFvt^R(jT#>@a#?xV`U{61N zNdf+&W-WhEN1xpgxP>fh5@03~aF*5w0G_QzjR^ft%me{?OIA0khrTwCCYmn$VfeQB z&dODxao2GXa1j{z2m}ehsL`WKsss@5o11^6=Fk7Cevt=dWdMAdWZg6Litm?Vi z-*xZ}HEsMg%A_#k>Ypx5@Q3{2o`hhDkqFSnQ5OLhfq{=ekN{vRr6vLM=YCN&Z~CPo z@WX#6cu939<_A{)68vu+HArhq83arOVq6771bnRi$)9RD8%i8(tL=`Cj-o&mc4$>q zRf>Etp#+8iPP?eN*(wRrme;=2lK`&#XU}g4B6IkKa56A_Sbhje05~QB0Pv3wAFO57 z*XFl&0w)%x{q=k`=r5h;f_vcCFZ~U?CzF4IPi?xz`@`Hn209jZ1>(N+Mdt_KQ$aS7 zj(YG09SFhvf;hL=hpJ&R9 zzU#UOxCjh%1VRY_CR0oj5Ul=v@JAAW#w36VKp^*Z;+hHc(3LW*{9pS>9u0o}?B0La z53`0zRo=<2|LDuLR-UthKj*V+@!pME+|<+*Wps2r03jseJ#1Q6IMkE0U&sR!Wp_wGwh0`T{MDpxVSWa*#t z%0eahN7ftpTS~YE`y`JjI{+sJnah!{Qi$MQI zpr8UEFQ4XMV6ghf-ha>PpFV$d6`)53;Ag9@x|VDK#mW9gRc%cWFn;%}-pBb09QXo& z|B=(@)#t}4_1vM$waOER;!pfT2_^HSW-F(sO$?--EaMZv)6PTAlRkOIAgO8qeR*x^ z3*f(c_3Gi2ojrSY9(W`H{^51aPU7me1-7hxE+Ddj$VQr~YhBegNpQ)Q|b0-?j00U{g6SpAd6906LJh?l=iH z)S|#Wq+oPb)Q-`Tr3-6SXWOf4>4KV&hCTq8D^u5v9q%1Kd@z_(NXd0v1Y89AJp!Qw z;OLPfdJ6zF?W0>*@zj6bHod;=rGC1hC7Mz65{hpbx;8I?MKAL85s zNSg%ge4#B@H)DU1chij{1CaOo`Yi$MnG8JhtKAAZuN*iQdb>E#x9fyb@)`eorw&t3 z?e5w54Qbmu1pm=PuTYQt##2puJ2HLH*nk^Xv;nuA4FJ{$cm2s1dy}T@E3Ks zjw|x0Rl7L{^aZ&3BlNT3$tA>_M*0g5Y z&(_DyGhYp8@(B9Wjobf6IUg%+^AO;DcaKpl7^PtNsB7Kr zcZIZ(1Z43=@P`xdS&{%G0ybcWKPC#M4j=!6PRY&xOYPkMn!m>|J>&}I|7w35AS84h z7XcT60gHe>1W54bEYLS)9J5gq)B*fh{bR+C#)^QchcN*B;s-vbuDNAQsJsZ!MptoZ9oC+N&EiV@`_ru7BDAOF)w6=)jp z=QRlG1bNC$N*dU&CtK|aY22mes|hn_qHDDC2&20+4C{mFavO27T(r_|f!FKbgI0swx{8>fHP z$FBb6wbJrj{oC|Q*~{-K-`iXl$g%R5<$tM=)fa5{v^-ysph%x4p9K6E#~A=q4<&!R z_-G&e@*tq3ydL%0AJnl-D{o6Rf3LrAs*OK>uX6tjARH#wa}j?S=m-R7 z0QzGheF^-W@5KOq`tFNTd#OH3wdZ?DOR@ToTIna1{^=i;fTZXCscWN$p3i^VAIH(R zB>@2DI6&ta0Qv$o&kD#f8=nQZZ9XVZ>x-bzM1YiX`Xl8DeI delta 2858 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 IM6N<$g5m|Gx&QzG diff --git a/desktop/src-common/advent/screens/items.clj b/desktop/src-common/advent/screens/items.clj index c35f1a21..15d23a5c 100644 --- a/desktop/src-common/advent/screens/items.clj +++ b/desktop/src-common/advent/screens/items.clj @@ -49,5 +49,6 @@ (def frog-legs {:name "Frog legs" :value :frog-legs :cursor :frog-legs}) (def stool {:name "Stool" :value :stool :cursor :stool}) (def teddy {:name "Teddy Bear" :value :teddy :cursor :teddy}) +(def portrait {:name "Portrait" :value :portrait :cursor :portrait}) diff --git a/desktop/src-common/advent/screens/rooms/inside_antique.clj b/desktop/src-common/advent/screens/rooms/inside_antique.clj index 7a4bccdb..066eb481 100644 --- a/desktop/src-common/advent/screens/rooms/inside_antique.clj +++ b/desktop/src-common/advent/screens/rooms/inside_antique.clj @@ -88,16 +88,26 @@ :script (actions/get-script entities (actions/walk-to entities :ego [222 3]) (actions/transition-background entities :inside-castle [182 90]))} - :portrait {:box [109 120 125 140] - :script (actions/get-script entities - (actions/talk entities :ego "It's a portrait, labeled 'Herb.'") - (actions/update-state entities (fn [state] (update-in state [:clues] #(conj % :name)) )))}} + :window {:box [212 130 256 180] + :script (actions/get-script entities + (actions/talk entities :ego "It's a nice, big window.")) + :scripts {:portrait (actions/get-script entities + (actions/play-animation entities :ego :reach) + (actions/talk entities :ego "The portrait says 'Herb' on the back.") + (actions/update-state entities (fn [state] (update-in state [:clues] #(conj % :name)) )))}}} :layers [(assoc (texture "inside-antique/background.png") :x 0 :y 0 :baseline 0)] :entities {:shopkeep (actions/start-animation screen (assoc (animation->texture screen shopkeep-stand) :x 137 :y 128 :baseline 112 :stand shopkeep-stand :talk shopkeep-talk :script (actions/get-script entities (do-antique-dialogue entities)) ) - :stand)} + :stand) + :portrait (assoc (texture "inside-antique/portrait.png") + :x 109 + :y 120 + :script (actions/get-script entities + (actions/talk entities :ego "It's a portrait. There's something on the back but I can't read it.") + (actions/remove-entity entities :portrait) + (actions/give entities items/portrait)))} :collision "inside-antique/collision.png" :scale-fn (utils/scaler-fn-with-baseline 110 0.10 1.50)))) diff --git a/desktop/src-common/advent/utils.clj b/desktop/src-common/advent/utils.clj index 084ee7e5..d9142614 100644 --- a/desktop/src-common/advent/utils.clj +++ b/desktop/src-common/advent/utils.clj @@ -11,7 +11,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 :stool :stick :cat-toy :balloon :frog-legs :teddy]) +(def +all-cursors+ [:main :wool :mushrooms :carrot :right :down :left :up :flask :flask-with-contents :trophy :stool :stick :cat-toy :balloon :frog-legs :teddy :portrait]) (defn cursor [filename which] (let [scale 2