From fbcc1b0e45bf6bacf29ba17a836cabaad6931030 Mon Sep 17 00:00:00 2001 From: nek0 Date: Wed, 30 May 2018 22:15:49 +0200 Subject: [PATCH] walking animation --- assets/intruder.kra | Bin 562301 -> 744753 bytes assets/intruder.png | Bin 4096 -> 12413 bytes src/Init.hs | 19 +++++++---- src/Test.hs | 76 ++++++++++++++++++++++++++++++++++++++------ 4 files changed, 79 insertions(+), 16 deletions(-) diff --git a/assets/intruder.kra b/assets/intruder.kra index fb37f85d38ff3808093ccfa67ef444d986bc5c38..aa427946121188f58dd8d328ed73febad440ad87 100644 GIT binary patch delta 45231 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 delta 11042 zcmb7q1z40#*Z=OaOD)~q-Q6M}-AH#xqaZ20q=bZ0OP6#@xQH|eh)9=6DcvF&NqyL6NrB~-rs@ksHdl9Q6%1%=WxJjPF+jCxB`XJ4*G?=Opz zI!y6?xLb2@cWHsnacrSy>hj6VW;VEM?>h^6+NoOO>p^}ZURXC>^Z6B3PHi@2Fm_mJ zX(`0Pq;j}E^3?(n<(U!a74%E5c$rq=@=IEmKrgCX-JlC+aYzQbI&>|r`f!g*aNoZ_ z*D}l|(EVw}6I!07#e7!g`HDW{*fFbkr-J(+(dzM}>bG;90%sJt`1aFWcLe?$)(y$E{iVgAK+WQYKON>RfWUc>9kiyv!))B6@Sx`gazrn zbUs$^mZ2W(x=g>%MoiYS05C@h4{PI7)aCXpzlNk!7N^Z?6ao}%im)vYbkk|f5?rP( zOZ{d8-0IHoTlNgPW_hcN6f#odB25=@jOE=gPA%>=*k?W*0Ek$B zZQNdKU;GHOQd}z{cb=zwYfXVx+e<`am1(f9l9EJNzN%D~@@T-9ji5WJj?QV3s7U!k zk}VSN!*@RT&r)6Spu-}iS6&7&jOt*!#sURJid+Y#wK_8jdWbcCynw}H9;fpTK6<+! z)ErEz-wneHSZm;$=vhp0WH0Mv##s`TIUvl;4%{$6p&dt0D>1`Q_MNqkMANo0# zV*V@z1p0x$ZMnPu!2RQ3=(i50F5B?+dm9h{fG5wRu)xYqKQnSBQ#>h|(9A-S_7V^u zpd%EPv*~>~dDBi{6}Ld+Z@RZXamj?+p|*APwS>gv(N8w?pu|e`4LM>;SYEK4+D+*2 zfcf{JtZUynzc<5~Nt`lr)J><2H)khD(^-sh9ZZsO$wF`3`4xlkt$SM>cQ z&G&veJ6^@6cftR#(Nu!e{^qbAh&8Vk@--k?y z#ig;C<%_BIOiB26v|G+T&H2h@Zu40r)As>Uu=0v;(2Z+bG)DXDX1e!!V|8Jld6Z@k z8CELxH-VoXEgwmsyDWQe9?mMq5OL<5hV_Rv$|_kqikI*dL{QZ zOdCcFdp)`}v6Wi$?lC>%?)U9_o9)$l>@o-9S;241dWZ3DZegC^B(?fa8^{!8YDUtA zuL1uwrXs0l@C!TuAPz}TWCVTeVdvvy_k`!Ms{=3&&+{NgTT=-elL8Yd!d6k1zmF^_ z0RSKX9Ti!VtH*}DL6#Vgm5n_C0G!@i0;Y1}AXV_BRpe#$e6#nm1H4k!a{BKcTn=+5 z4>8lPVxoGmqswZ8bYgAH-78(IpZS_<>Cb&_+F-LVI-RYVrkQEj5nu2xe-x>2P~6mV zzaYB0QK7RCr#22vnx`6M^Z! zt}EPBpfJN`(}~Oom2lnZh&ORo!3uJn^|9q~#`ZN_7aFBO#PqDTkeZ9McPQFI#M_DivsHKUT8qDfgP(SsEbirLzr>SY=R_+47uMy%i>i;Yxb!J%M+|LMe zWnWdSc?UQaa)7Y#IHS}RhUt$MKmA56t^TDKD8_&WB6N9B@v51El_Zhi_!2+!Y$$*{ zJckeX6wj!NqJrTWIlcM>(eRB4d3*q>qZ@7_jXD}nv_<%1YC03ZvJ7w^?Wkua8JM5vRqf8yV-Z{nU08J`3 z6GqSYh73j?I(7AHtB?M@{DrOWcbW$_OwBN`U_Dg)Tul#)TQo=n7-qNTGWJC6t&NRH zL@w&8q%XUDY)?KZdJ`rNU5}A&H&_ZwYY|U5jc8X;K49`K{z**0L!G!@&{#$UbIXNq zCpph~&KYf)$0%Oxr-W^x|3G_9xP9`{k>V*mo}ASyBQ_t>3GG(6^u>e-i@2=Ne3u0e z*AxC4zPw;d(d%|;xdOfiN6)@#Q7&)IJ4{?KBoX%J&zov2oKL)Yyl>YGZGHIZgg)!_ z{;H!I=?imw`*+*pJ}+0n_*EyZ3b3^-of6Gl5Pz3Ur&0|oJRUap^pOrXsQ_zr7Tq2R zx|hLB>r+oBT2f1+sEIGjJ&&-Dm-IXB7MA2$#bq@q(>%NY(}yCG2QYZdMBkVvd^l;e zjmb8FK1U>sJ{ssxXGjNRq@Vp_KrDVG(t}C;%mg0o~O}s=yY11K@JDpJ%Q)^nB6@ zwR+oLPF~SL1e0jgM^}xV7q(OTILDnZ6C=jKd8neyrXc+t)pq)j9*bZq`1^vR&7+@_ zW5A<1EOkx12b(YaA59NG?BIuf=&r9Diz-gz7QFwSX!q!1myLVZ3YSFM{J^%8al*k5 zTb>HvIZ&8u_e}!i&_$Dc_gr0)F+Oi?)^qcl_wwVp^WoQ~=UvO@P6sgX_{DDVclfBe zgzHBQCmnWIc$RzQ3SCK^&vz3Ov0Q_9$~z6~%bGvUgJySqdbJ&lxJU}S$dp>1Ox&|v zKQ`W%5q-9BXQCx;>!5f@r~0A!;v*iOst3@bUZUgTQY$`Eu_dYLNJod@fZdLa#`yelLtNf8eGQsX=3lj zJu@p0!gC5DVHtuZr;Yi*pyz~~=zV)-YI@Tt)%2mc;)zBmb6cyh&UqFu{r-#{nN0~< zeA~}{w0H~*6LCM~stWU2^a9(Y0a!ixBQsI@M#X6yx_qHBI>bU63OX|S$l@N>)j+zf zw$ynUwPk0;slV@8&H|l{S)fkXAOo%FSM${tsx+GH z>BmZ|!-hF#TkM2cv1GM!RAwyq9K`4!o8HV*}@y(>V#>#dO)mJ)%ma)2$CYl3rj)D+D@!j!6L*Mhm={&xXW@SvV zhoU9NN2&*^a~^YLJmq~^8^y@jlDJO)W!$egkeUB|`nx(l;?0+NPrtSi1;oBG;zFnA z!wM~Qih%iFQK3In8i{yP4Ak0?4u{PF6cqVGWdQHc8TiNy(?`gj#DxdU;UyVM^>l;z zI7Ob_-Sb5|5aOI*g?o(cdS(c|r0J;5`*_fHZ}aL7+Z|K^!hl(fB(E=4f~L{cj#i6H zA8j66;U!iA9%5c*QiumO<-o|A@2i>=-N^>?!Np-rG*lx>w7dPu8!SXP^{#uUKbA;V zvQXe^&SZo*iI6j`jS;p$&6R=NmF&xjXK%tj0R2k)CvmiV)zd?4-U%0^#OqU{^F5cc z$xyVlX5A1m5hBJHRW_r18LGJTP=GH(r=-xT!FaZ#1LIjwm_4Q)fe4w(=$wFZ&4j9K zFbxK5OP}Anj%7D_7(MakG3n0Ie*a=xeguQAN>qsziBRE-9w8CjdV4=sVZ96qQQZc9 za^549D0FK^8NQ=^1SleUw8FJSQ?NN#?UMrK<*bAAs76Erx0%Cy?}rP{$@`dd`?@8A zd4ole)~AsQfw&>!UiI2Tg@dc<8Jgni+`}O-FAASQb#sU3gKAg1F2<6cSAASu$oQgY zTOu;3srl~d>U}$VNfm$k*C1f`!v~yMW|SGEt?3dvQP7Po*38l$#f=3^rrflLD@jVT z8}n+iU&ufx!6gc%ML7Asu<{wmgd@3 zAv#^?2Nj21FeP~JuC3&zHrVMQ3(UFOU-ZHdZJxe}fd|WStxEDx+0n1^Gjr8DSiv+4+tHCmp2Hb3bQF z77Y&+7^r--*(sC{rM-Lqz&Z&NCN8h7ZZM_NgVhpgvGbN(SmLB8@4B57>KQj4rt9pTTWCkW3cgsmgjlAaP5nR z#>5ZnmeC!h&#({LM!MEyNkpaMC}%dO^7Kd2Wj1ha=J_A9`aHZpJQBS#a)BLLCn=x6 zq)dVO>7wDw-cZe5(;$iyhmwhzDlwJmymJku4E5EblHkf!9pxs9ZdhMP`P(KhQD+&> zM^s}X+E%Nt7SB*{vP@1fXQhk5Ju^GAFJe-zxOVUCe7R`6 z;KQ*=#Jz&4OS5XU_)&?oR#*kj@?SB!Ux6#86q{ksfrg~+?-No+Cpip1W_PzNRTaHm zS&sQ+wHcPlAbB#u%jhH1&jVD;VsY+~(>PJzxA;lj2g5}zpAJ`#L(8ao`sSdZxVh<7 z2K%Nmz(Fvhn)A9lOn*tCX`_C+#WiiacEdqd zQp|ondX=ed8jp^zW{36BYEzS%ovhjOA?N}Fgwy@v8}Bf24qUs=Z84s`!DjVw!sUGQ zgf-k-q7wFDI-f@eka5J$y;S*|jrKnc5moLht3Dt|pc^l~sflKCik*7+X%3X{(Z+Uq8_E zS{pa<&TBLxO5KV=u5{DGjC?soD?hP}lZ!wL!PgTo0)kcRx`MVmN}m+nF0n1&^yE|d(=ovq?#fpo4I%#9+EYEqeF7imTZlWsY%1L; z8{7kJ$*x@>ErdX5jV68WOH9E7h0D9%j^vR!SVWfJ0`;~>df9V7%w_ES>!47ZCJnp1 zcrKm%zAb6mfpgn}jwDt`q+~Zjnv${a@w;KpH-i46K2)Vo>?ua&I9*t;a$n^#P@Vf! z8E{%8l8&)-;%I64Q#2VrP&r#{ybd-An!ZQN{oYw!)N*j;t=yg$v7=;gMf< zinD1j4pe*ms$z2YA27APD|_QAr11dep+VeqlFXNx;~Na;6}ETU8S!}hyjGmuKrSLk z38U$rdwG=7{uzc+P!5&TL6rK>+L$8g%0eD5!C>gB#6vy9w7S(-tYzt$aizpnHGLX2 zU{xCtj*vXS2WQ&Si%Y-22m6p_%x6X&!Gd3I1~w|zcLXX&gy>Y`Ed7IJ4;w^aIQvo( z5+@Fr??;t!M7sC!uAU}U-<7;GYxwf|;fdo^Ua>lsx%Xp7wgeH?{U;tSP9e_1@-&gr z1+@vWvB1rOEOh#Hb|~K@o#}Chw&t7T=8V`pVnGsW-}_w5`IlqLHzOIEA`|EFl%mGKwt~z*08|t-Zixhr zXA34vUNaSiBdCEmK!Id4^Y6(r7C4AL8sHuX%pwCIOXjrhOFno*iAZArk^oTzM8%Tn zL%HCe8G)H-ngGDfvZi4&eJ%?;-vY>l5M%~cV1vZ?5K98UUKB7hvVFs5iZ~FlC<^q$ zLE-1)YsjmR2O@HnfNdZ!=;nqD{^~Ufb@JO9&gAD6P(+<7kd6o>B8q$k3;fIiSO}jB z1`;K66k#T3PqQNSEP=$}hV~IbAVSy<*Z?91kS#OGbP6wn0Lv_Q0oThQ3BZj^!^ep( zAfnX?h{=G0OwGaX;(}R{Z!V~Q{c#rnvoy$G68;vc)&N=HA=E%oL}?B10Q4_)_`x&a zzxCmxMo0UHvE{t`7L74ZS#bk;x!V)Gu* z4TRu)54uMEGq^|)in?qR1oDNJn1~8$6eK{j{w)B1>mTg9^eA1J4K44HqFu{dQO)~5 zqCy*#PK<`kDRv;@n=?=l*w8)wM|72iVvmk6eSeE6;f-vTY`F_*@LPfZ)#K%av^OD7dL_8;NKvhKhytLo)&&$iGQzGYw}L6C%sBs3(UBMAfHTZT#J3A>#r+yDhg zIt~DkstW?(B0chvori;+t}c<;7-A4@G{%Wd~L z88l=?}eY7{_*2S*TEE@RM=xlHjemO5i`dYtzZOB7jsBUUulP-%8e^^ z*g4&q@AuU4X^P%mQIs?hNEeR=Z^fO3M>_sr4iHphZHR61pzT*8<5OB9NckT!2Y)D2`YN zeI{r|%Xh@{R(=^dR{iYV{?6rH%E%D)$b+`?vS#>Cp7>#|jiJ|K)YxLw);<t^#s;RE8PpOwYA;iZLU$G$EzV!0@ZiXv`JwKc&m}~au&z=4CPp7}VWne?ZU(TeftW_Q zXLeUTZw;`>rdR@@Oc85H<_avcsT|{JGNC$rrvHiz#SB}wyUL&1FI(E+x?c{OX0HHm zXEmlQk@Avsy_4^PZc$UPi=`V@>c}qHlTz2H6m`FZyrh-47NaL+r*iKe4SvnncFaj` zzoaS_m>k#K(oTCM^AI`&HmODoM zyI*&Wkf>@Lo2DFjh!T9kYSwWBrUeO>Ha(=lm(e z9z&M$K-M6)`uM=2`2;YgPHlZMT9gv};VOP4OVCxYYlTZ+ZEa{d5zV$bgP!^Ip+jUYk^-SsG>#-E*c zi%bCDxt`N63+@l$lRg@rAw4t;5wS5*|I1id(tw#$3~ySQ^_z*G427SSX%RxG>t^nG zBv1{X3_XcPy$PFw8d>i&X0^RQVlQItHcjPzncF}}aa!FegusKXQODBAP}5eKc1Jux zmz2+ihFe1Zr$G5{Hz<31^u%rc>Z3p|bX4)5WB=dWqYkjz8%-tMLW9qR;hauab)TIF zsQ2+che1BpCWMIqe zYTLwYA4%0tb=l%cX`Y_esTL0f(TpMv=N`ZD-R?WOl41&y>BaP3c&pK38)*t~dRgkH zAOv=)H5!~pVM`_dd_esUw+7lO9K^1+a^h|Qs|;1a9SyClH0B7Z+5(&%HX(Q?v!Tmw z*#Qe$B_f1bSu3xcFoX1UX=Wxk))$b@l^f4%nb=(4@*1!6wO%`qyET7xhN^oG`C1{e zSRk5IiE8bYn;2LZ6DI~;t6+uwh}ETJJe{J?qLB$jTi%)1qQ43!S0qoZ0 zb%Mnc2aLNW@+_SCne$sxdmwl|ddp;sbZxaz_?p1iC0NTyDg+`YxyD{A;E~KBUQ+R^ zRMBMWX9`i~VjIqvzMC5eaFdo`AiFOWWE%Fyzg|OZk|gYeEM%X2TG-poz5} z7b9_C;CFX<(E~ewdw~F^Colg7F|SEcA>r%c?)F9u5z$gCjjeT>wq=k%+&VeaW*2D; zm^(A3FjKmqI{&oIrPd%@CnYRIKGoK0Y|ek`f<6xQc-XoufL_6?wz)G;z=bLY2gozi zf29-V#ArBs4Q>)JKKGetk<+i%<7wxf$;daESv3fN#P2LF3su92V*CK*PUUVZ+(D+B zhX8U?Jr2b$1TtA}mF!@b&zW!SD?T_cfBEdu@zkDVD}7^a{Y*i=(GA)btt^)xWIAg= zN4i8pAcJG5%`w2ruLqZUzq~|-F*Q$hGc#>zacxqw0UDC8!a>gOa9ltJafK}xH4Zx( z>9v74H?1eG)d5VbYq9G2k4G4@WY0x%kKM3?@p@76_gs7dw+)uCI5rG_7(m>v^hkgy zQG-6|C@jWcI_+`#RXjhOU~Wi2B3&dFAOmxwcUd(2|L;LwzPqeii|1Ezd4CU^u)pm^ z{~cm~o2=O?CU|H5#PghJjw98EMkc|aoM>Xg&Z9}SI31!rb7poMJ558|4a)nId0o^& zWx6ij3b`<(ca_GLJeWgKyu+KbciAeP4#_ttCw$8)an~?+gV|V+96UwG|4h9+R>Uk1 z=5_}!a~K6@SDQMmq|{91aR!FJXa%$++{)5Bq12;4kY==rf3clD8BifzU`&}RJ^TPb zG@pRh7%7ucGX8NHn%C^vziSraAr$z06D?66S;y6%#V7GB@!+r;2pa9X?0|1vCum^ zIH{eNdQIA?AU>sZHx-sZnr3KhFV3o*syqGQUK+4ykbUQ{Q(e5+YwvpQ@e85_SbZmu zYO^GlYH|z3KDHHSW;7mJ*b1YUR7mg+ zrRZubv|$`@a*mDclpyzB_LVZGypGO+jwNY!Ge#I6C#4HA24UKQYZAC+ggAa`krlRr z_=R#Z8^GAxHS6UUGt)e%FCfKItqbM%0Sc8ifR2l-GYcV@cpVFi0G8N`#iNx zUuH;E9JWjoB4UP{I@U}}JA^&ioHE!4cKebZf~NgW65wT$-NW&UElXbTzwJo6(7rV! z1|1B)e`0Z!_cL%$ZKk&M@SR)h1x#BF2qHrH*Udupf^R6Lgvhh)EukanuLo{s0Hyqo zJBRQ{11Kl$?ZNn8x22GG5s`On{`C}vX2VAeptQe~{__^jAFZO$C^)tul!ERS=^yE= zKN`rgC{&gNj&BPlgOKk(;noq&x@Ii-g-L`u_mX+bfI! diff --git a/assets/intruder.png b/assets/intruder.png index fcbe2c4d140b609169822daebe19aff4c8237483..0f701986f3c2040d12e10e9f2bffa55b074b3500 100644 GIT binary patch literal 12413 zcmeHuX;f3ow(d$yltvKgL{Y#70Z~DvQ4omqjdX(G76i7s?GQmwK!mJB-6A3e1qDS- zq!H9jqx1$y6cJI8R!|y2P&$DS0wf{LdbP6mx%-T9&inCxy!Xx+_d0a2$VyesnlK}&u`|6%g1a*soh z7UX2R%R4$?qW9(XLEBEle%$KSjdDftD*8wG(hs>CVle9a`xYkXuNdvFI$=^Y@}6+z zN72DL#_+=Ahr_HXXJb51Xz_Hfwc=z7n$KfAO*ExlnXyBw2v`EjRsA~rTMvHMi>x|%sVh6TGDj=H%kL#xwA>PjE@q9C)6kKE%`i!GMD z!~`Ir8LpvWB{!ubJKcpgb%fA0+3@Z0K{-cv4QpZbGU6cYzc>RiP$YBue)jDTKq7{2 zH`H(b{d}tMMIC{`?R^r>F!FvvO?_6}6TZrx|)9r&v7aEFM+QnDVc~>j7@>#Q?2Q3?>T5Ec2Ztue!OXK9OL*P!s zx4u;reerR-!9PAa4qEZ!VmW<6>P^!lXT?pG+qA=?`eI*v5ehrE)drg)a=WUh1NJ4< z^c@_39V%>uhZ&uW^g^Wk?dmVrJ=Y|dNEgLj)5E=Rg1N(j#yL*;ajs%qBW4qEFjUOK z-$RBCE>(%+DllRALS#qyyTE1LNaeagIm1p$AT!hiHh9JC;W%8_K zOA?xeR;pp*^CG{NpGf1)v)32gs*;{+MySL%2LG{=>x)GGW8e9wuw;of-6Bx4 z91D>M=de0oXwURd%dQl}IMuisuZ3EosRIuq$1#O)B2hNljW5nK(6+=Eg`}Aa8VqJ1 zaWtC#cvvuUkHcROPT0vj7bg*wWZAqF3r!S3Jcp7j2n{+B04 z<0H#niV~>lF5E4{%~#>WiiYBN^@EMby`zV}95P1^QIX${c3s`%btfbHirN3bdFuZ{IYp6aOUHw@(#JzeN`jzacc0O zX5_RLUL#K2xl-_pGGvS?aV0_ISJ;bB;ro_GT!(0dx0`6t+fC!VTwGbm59(K$(<(uk zw#tqi;z&O8it5451~f=Fw7?FF8<4q2pAVJ2@TmZMPe1yjXy;^mW!!feQg?>g03Pdu zF=><~7O5l`J562CEBWl26(F*zi&I1L7Dn7Dks&R=X3NAGE|?uVu)PYur&>qFTwx>T z+J@K~!TkHV#7v)Z8N;D5%f^IYV$|-s(W;6^!NeuZfud7A-%=s_YOS7%-d|P~Y$CQw zBfV|ZkEZ0tC)7%_lz{QJwOw&jErV{H*xg${7_&~SGEF*v_ort)&y2I5Z03H`fV2gMCT z@nOE=d{|(ewis(s=6<^H)VcGoc}Ypw4Y&fqp z&nX&4KbZ0iT%7qvWc1zj=1;0X02fwncRX$S3@JVrHFH8!OKkH&#A{=$tqU~yw4~gp z7}{Pn)r86P(VUmo0)NFvw1XO@i!46fRlB(UW$h=Hhp;pt(YZ`;=0RcPt*q?9(vZCd zP#2W>K#DvV8i1=qHY%JJm)C{9{@i_zx_C`J9D*%I&SH!8paR)L2hP)F z+zoP?vioN44Hb%nR@~dHu0d+_-NRq*DBlng!!`@`V&o0henU@=K9t%Hc9zL$1JX%__Q8b zhM(F$j8r~F<|YieQmJ=D#kvsIpI>cuSD*M&{i>jK*~_g*t#f=@KW88;lgEZvdB^(1 zS60CAhx{w47P3b;7EpCj+t$&$X?1P^n7Fy2T8E2b9{rci0V%b?4M_Wkz>Hm1-^vHo zzkNiE-q2IW#eIEEwY_@8sEHoj$%T=e{=o&w)SgZxH(|=P-A~ zDj)s%+-kVfXgKg*r>L`B$yZcZZL)D*drMun_{*a3E2V<{YCQTDRg0RmNaC@~LSz1_ zYK41_;JZKb}tcvhL4QX84`{(+5C!MV+K_r&swQQ!0)RpMo5d3=ez`2Wguf(Sv}8UJ~u*`*fZyur<<0O|5p z`RsE-lsv_noV>evr=?{ieb3Xtob8$Qf$x4XM>$!Tb^qY2t*!&XDZ~sOpf6X+Cc6sq z6|QK&-$ozpKxx}{ZI7)lC+8F3Jhc(a@<0{cFZK7fX~zh6gsjRyr@L8M_m)59W?;G6 z2zQ6J_^aQ7ocVLB`$ihG>aAA1yNnLvVc(y%wK4WsPDYP=>HV89>j9~?_d`d(46pd5 znITFJ{nvS9LeZyZ&wH{Sn0zh7ZRC4lTLu|t-iElN>=BQ1R)#{mw!ALNt-Vt%^?{N0!Aa;e?WI%2 zYiN(W=vG$B*xmrQ1FO_jMz5J%)j+OYw)O>+RPdo4!z34oy{3Z`Ni{Kav*ZVXhqfqK zh>MQiVM;4#8QPE!;tBi3$fz_e14r2@=9HLC^$lYm`Yk?Frq8}@cl+0?8nCMOB5gpJ z$qiTuO$dc{p8a9fE-2a4T%ejA6NDTMr>R6;(}3+_T$RB5n0jPIJoA`nZVaB0*Y7rr z5$dbEeFL03r~|8=)*f|Vf8JA9P>yk)JMGO_e@fXxoNzL7EjqwTY);D0k#!Z%zxQ1~ zFvE-Z@N4}#^mA!!jx4FYZb<)hpr72nkAfB zx-$ZSz+{KdVZGKfGrUBt;7h2BFXK$Y$2nzoXlCmN!g1lcJGF|c-1DuOm&c=ciClZJT&(oi8%Bp8P|E4StdR5i-D24W= zrhZhEd`m@I7xFPmw_XjJV6cbq%Fv;llMd)J&SxDB+Sd{!^E>*B)HRhn_7-MiR3Q9i zrjY-RDjF0B`rgc)V|Uw8VD+ zT{*7N)RV-0>$+~;zpjDYijCAkE%lS~rZ1vp2$3&Ubi0j-X7)3@Wybr=T)-<88E<{a z=a}9)(7S?Gks5gnPk8+lnH;~OfgJp(yb1&d^BwNVGDx2znVpovzDtB8Y|yfqAx5ON zEd^exbJ-2dG-v{AY>5vu>@|QxsSiGbEW@{FT8RV9`SHBWdd;KRcFtflzI6LOjM|>h zWeG^4X(J_rBE2ximSWZHA$to>@%?P*j5%zG&*^{XAD+sj1;k|O&ycQ@9v0!;NXli(Nx1_0cf0q8-{gPm-$|b9^ z<6MIFEZEkk7bD!JsnH9tgP?|DPU6!(z2|~Y7bbhBz2v=usUz&p@XpQX#;IBZu>4pC z^)54a(zKjRT~XgI8d7D5(N$+&!vVAwP`Iw=mLPpPPeWLPCP2(Oo9Ef;*G~*;E8=HglAZqow^sUqyctq9ta#fb~OPw;k^p4!oJgM zX^}`c(eS9PsZ$8r+^zRHiMF{)c&0+45+}50k(~_fWOakR4|ft;4geqmrbpD^5Be0)rF@> ze_%KQ#Lmy%LNj3YkPNWNf0Zp9P4a7M_v zA8v@-oeKQX8)Af&ajU3kz}ic-?=Esk2>X%1uv*zNsJX==M1t3qxF?`!vP}1m z9VZHZaET|46L0!|w5dPiAcA#V?)wg3$^Eds58gryZQIwVdas9^8}mB^$&q51_@hV(+b zAB9W|b}vpD+WXlUpcd$2Ohy+Pn-9K^K1+Eo)t$G1CJZ2FptgXj<|PT>s<|+ec1vW! ztPQnZyaK)@UEqlhr>0tj4LTx$A2JE6?F%V}ax8ec1>&}*RvE&u=L@(p7qEv2fte-R z^EGANYHV0)^Lc5;L}b^gkOr$dRSWTrw$>x4>B)YyGnlD058|f#9_V7j>jOl*mcc?x z$P9&eCYp?xlh%J357NwDzOmb%#!CU?D}qskMG2a2TvqR7qG=Ob%#PytmWw)xJ}RS^ zlR%7LPL;PqTXah8!&KNeNkRd{)iLtSFT5en)B;K;(c}gBPNJs2(ma-U8sHIFjFc32g48X!oJDz^Jo_4ai_I-UM#w7$On)G}voZWvEf<^heJ zHrJtn_H|EzSCPCsg(q+_&_?De@*Tgi3F^HluFx z*rnC!8kv&D=*G=A=4LcD!NzMU=hIWn|EBn-w2}wUL+iB}CTx~CmcgHUT5c+p-?bVz zKrWyb?ZhxZ%K;NsHv900D3w=EH85jSljyx*l&ps*9nl5(f&&D*H#_a7s5xsBwsjim z(r6hB?2f(~4_>+~d+P~htMjf;4uqzN=V151AGs=|NIIS&2l#UiRcRhn0b~X24jB@z z^J_)9`PowV1fCX0d}#_@wR-({ts`*YM!)_c%>_H_p9xq~(@3SLW12IT0MPzxx>!foHvI-%_SERB1s)20-J)V z*(#GLQem3j{RNQTrCGITL^IXMK;t^TH;A!SVXHJqL?3KR<@-LHw;`o!IZfMT)k~sUI6r=$AOD}iNxFhfa&QNS%Tm1$o6k5g~bbgHU=N5(C7( zlzcO @Y)l~f)Lyl-eqK7nWUXw9Gzf|IgU%-av0DZH@uVfizAiq$}R;vMjL#8U9- z2mCH8$#e)tlN(P|y3E7jfQ9<0gjA2!TN9XI8GJ->~Jq8JB zlU`02M%Za39jfRUfVqU@gLL_JEA9b+SP}dTCDLwAq->Mv5Mv9duXyMF%ZM=ir8bQ zR-?J!`z*^17Ixt(%d7#;;B)Uj`YY}qucQCe5eKw}&hMD=e=NQq@dDidjE*L;WUn70 zD@xDVP5)faCvIHu6mvX9F|KOM&%|0gidAm@AxRBmOQx)!jAEY>eYZSA@?JSJxu~Mz ze&r;vqw;zp5$qMMC(L|V(pi|Pb^LU^E$>5o0`iKh*%sXDv@l-y`Y3Ne*meXs@Ul@Fl=8k z;UhLE`JwBym1w?dYnZO$oF6Rs6#wZ0e#iC66Ei#qn=i>|>^_(IP7D>*?wv|7{HTJF z1=XzPZ$Qm)3s@v6a7R(~BJ6pTO@md)J)cFbhrTr+<9Wb882VEm*@sRcp)uL+yjSq`d>pCo}HZMh!zY zSnj5ik=`f-scrHQo`<>~hc>Id?*%1{4R&xj(9u5HaMC+lL}1ushl^rmzlsht{tQ_#f4TL*)zlIJm;Kn6})?| zkXMFnp3YvU#s@j@?ID9mU}d{nT9hWirigOHBkbhIB6AT|}f z7YZs>Er_`*QMY`srG4i@<2BK3_M%gq`o3*Tbvr@rke1S+h`zq3qWcRp14zQ-sD}kt z&fB?H@R~l_t4sRdLQcJO!otk=bw=6tyf4&N`IbS0iF^yx*CU`ls<81zj0IjXXcb*j zK8LRC|KRZ7PFONLa}a_Q)}nU-{?#)T9zo~7&FwJhJ1cJ%FaCaoU3$p=zuegGMDuxN zv920$=vo4*GB3*U>2uzF4J?~s$3k@3KxQ>-Fi9w+&a^SSrmZ{|r%oRFD6M26zE^e~ z9M@s6%cN3w7tkN#tfnh(imFJgOxLV>cg&FM6dmx)${F3gy;i)%5wa+swlI%75pJWKXT5nB*6|RiO+6-0gV{ zv9S=meDhIKjU{{1Z1;SPk-l{#f=)ImZzboq-33Jo6nXpWd70Y@~{ zUHJ7Baeh{GM8NMZ{+(btnme%CVh(ScApRO775Q?IQJOo5@-U_x&a&p^7W-A1u429A zj~x7@7Eko77kMrUcxw*~erq_2PW+XWvOaY4n6p@qoy+KcI$+p3Krw1Ri0Xsm`0zd) z4@+|u7yCA}zZ_v7J$QB>x(m{^fHL#B?7e7W8p#p)PYIAl`YJH+nTmgs*>!3iS&6w; zo|-L#6tl?zKmeI5an4`&_VviYV>c|d4QKZ8KEbBhBkZPMYkn?3*I*p)tO`AD@J$JV zz2{tpa|G!T;Xp?GM>@r0jc*2XZZQk<7oM?Pvo8x?Hs#s{_+d)(xI}y}SIN5*L{a?q zP6>v;16`#1&iFCZbzwIMEiBB)>_!z$ltzn={XjCMZqrZC@Y2k~V?Z%YR*~{PfQgQd z-oB=a!EkT-H17NO*Iqp3pXBI{dMHbDqW|R&c-u`BaHQH5^Vq7){#&7&NHP;3gt3+D z(HNr{cm(5_j(=?j75o!bNWc~7Uk)rE1+@KBrx|E_P}X}Bbg(V)!Ji!|c|h&Oome2!J4DTer*|In@dtRK*A4#ee4l&`fO6B?vb z)5uZI=AJO%?H-aW3aQ(a0APRkuqz53oJ7$5hk(2|Q3K8^b}a&3r{6$p1AEmM5{U>z zk}mXWaVbFp(#%EV6;!O+3^LxxNg~0*RT0sEMn|;Up@-@**a$tS%sqj@KNi#snEFL| zItuL`?m?UJ1jWxChtlodgL1V_YXk?pk}1{hXht{q8r$D%!0#M!$lr2Z1Kt!hfmS#K zFu8$M`^O4fDEpOG#|TS%N`d+sSCG!Qwd zRTof)6)e@g6T8F-9Pmvx52N}8;xae9qFhe^io>gSB;tTp3L)WA_qrNlt2^S>fY@&F z$PB#WNRd~!5byceg&u^EWpUv;UA-O`H2MCMH3yhR=h^@tyD}IxoDY45s|>2+5f&~J)r*znJ)_e8 zYg0oA zI4y9Fb0THJa))5=*k`~Le*Cct-Mtn5TEUp+$fK@KqVR!6Aar_t7`H(~^Bn$p?}FqP zqP9Yo&Ma|^n6l!1MO*v!N0Vt=l;hDdnS4w7@FwVyGA7uCnD!=ObWT5m@=D@eYwV8D zqTo}Pf;Ibyv#~b)!IV?e-F<}gVtDvP#6%Owboo?~B-3RP=2S>!tl@%_O`@GyyKdM} z6Ine?iD&k#MIk}KUW=F=ANoAp78JMpEN z-;onb6?DZp_m$?+V zFJsA)B@WYEF1L5sdG7J|jX=-%OJim(C+}&9GzIWBUuLk-dG={L4%8faM<-B-Vmgu) z6C%${2Mem6uK|g3ZEj{Gie0p9!ZQP`^RC(3^MSAVT}{pxzMs_pTa((Xq`M#T?=bd5 z!4ND@CD4Z}53fo?gGTDZJ_5#Y@MViJIss5M5HQIu9g>;}oIn7PW1Ggx1L!H}zci!0 zoHZVnk} z&L`-R_u!eHI|bhv6U#7#`3kAldMzIx^IS^uSc{nZw0^-0)`OGHu`&)is9iRY*-=S6a$fD7@*8+!iA&|8z#87^PoiHh+S< z3xT8@U(=Vl1aO?+A09&2N8-@`d62Bazk0*NF~~3PK5-lUqf+U-hu+MiF94ZJI!(|h z+$o*9yCyz63jAThv9aUwwhiLc2hiVDNwgi!_Em^P&46>i!?mG9QVSid)eY%^&$JR?S+k*^;U%~&FW|uj@U{W(lTF0;Q>B%#pSOSSQmY4 zW<6_MqHf-i{k{PzkP{?NajA-L`95`}agER5zlrx5+|YjLq`BsjYqy1MQ?`^oC&}5& z9elWU=gX!lN zs$#?nK6N*`GbC~b{WBIws=q%fJc8mu&=bNOme&33)Rtyen6uEe40fLHMFPiU2!0SQ z2_B0r(L|lDtjMeIFn8T%s&Rm#X}o>Nwcq7t)3Y_^dQh6F2sEKLBLE z+iXD3+dued`2xljQi&KRscb|{6PJUV4-=OXVe~cqJmAJFE=fd-(VF)3#o&PI*8*2`K57bYXDuMFq9qK% z(RUy9KkI<2BWl*GQAh8b?5>Tf|g@H zq4zD2_s#E`--9AU>#RilR$J{+4XL#_WS|ZJ;9;uj0rjZ0e?!}ln2G?VUDUMW(EA|& z`py|v>K_8vELNl;=XunNP3YwdA0jxAuBvI!Mcg%TN`^Ut#8=1Pg5e{@SXaW}`e7BI}R` zs8}9g%Z)H#%WYOM!YvL5+JT4CsRTBbmclD{UrFcR_&(t|!{dyZp>+hfTB3UZ%FfpO zC!OVkGcD4(D~>&Mv0gk@5lMBH_n6_i><>;vhcv^Mrc5;ZL8Suk@C!h_$Sy6Dm@6^o mFE>lpe-q(G-?(3CeZE3^?7k~o*z-D5MConn= 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 diff --git a/src/Init.hs b/src/Init.hs index 29b4dbe..743f137 100644 --- a/src/Init.hs +++ b/src/Init.hs @@ -81,17 +81,24 @@ load = do -- (zipWith (\a b -> (a, [b])) [0..] $ [ImgIntrE .. ImgIntrN] ++ [ImgIntrNE]) let imgs = zipWith (\a b -> (a, fromJust b)) [ImgWallAsc ..] mimgs directions = [E .. N] ++ [NE] - animIds = map (AnimId 0 "standing") directions - animConfigs = map + standIds = map (AnimId 0 "standing") directions + walkIds = map (AnimId 0 "walking") directions + standConfigs = map (\i -> AnimationConfig (0, i * 74) (64, 74) 1 0 APLoop) - [0 .. length animIds] - animations <- loadAnimationSprites "assets/intruder.png" nvg - (zip animIds animConfigs) + [0 .. length standIds - 1] + walkConfigs = map + (\i -> AnimationConfig (64, i * 74) (64, 74) 6 1 APLoop) + [0 .. length walkIds - 1] + playerStanding <- loadAnimationSprites "assets/intruder.png" nvg + (zip standIds standConfigs) + playerWalking <- loadAnimationSprites "assets/intruder.png" nvg + (zip walkIds walkConfigs) return UserData { state = Menu , subsystems = subs , assetImages = M.fromList imgs - , assetAnimations = M.fromList animations + , assetAnimations = M.fromList + (playerStanding ++ playerWalking) , assetFonts = M.fromList [ (FontBedstead, "bedstead") ] diff --git a/src/Test.hs b/src/Test.hs index 0e1a1c6..93b1a53 100644 --- a/src/Test.hs +++ b/src/Test.hs @@ -320,14 +320,42 @@ updateMap dt = do stat <- query anim let npos = pos' + fmap (* (dt * fact')) vel' aId = asId stat + nstat = case aiName aId of + "walking" + | sqrt (vel' `dot` vel') > 0 -> + stat + { asId = aId + { aiDirection = direction vel' rot' + } + } + | otherwise -> + stat + { asId = aId + { aiDirection = direction vel' rot' + , aiName = "standing" + } + , asCurrentFrame = 0 + } + "standing" + | sqrt (vel' `dot` vel') > 0 -> + stat + { asId = aId + { aiDirection = direction vel' rot' + , aiName = "walking" + } + , asCurrentFrame = 0 + } + | otherwise -> + stat + { asId = aId + { aiDirection = direction vel' rot' + } + } + x -> error ("unknown animation name" ++ x) ent = unchanged { pos = Set npos , rot = Set $ direction vel' rot' - , anim = Set stat - { asId = aId - { aiDirection = direction vel' rot' - } - } + , anim = Set nstat } return ent emap allEnts $ do @@ -343,6 +371,38 @@ updateMap dt = do let npos = pos' + fmap (* dt) vel' dpos@(V2 dpr dpc) = npos - pos' aId = asId stat + nstat = case aiName aId of + "walking" + | sqrt (vel' `dot` vel') > 0 -> + stat + { asId = aId + { aiDirection = direction vel' rot' + } + } + | otherwise -> + stat + { asId = aId + { aiDirection = direction vel' rot' + , aiName = "standing" + } + , asCurrentFrame = 0 + } + "standing" + | sqrt (vel' `dot` vel') > 0 -> + stat + { asId = aId + { aiDirection = direction vel' rot' + , aiName = "walking" + } + , asCurrentFrame = 0 + } + | otherwise -> + stat + { asId = aId + { aiDirection = direction vel' rot' + } + } + x -> error ("unknown animation name" ++ x) len = sqrt (dpos `dot` dpos) lll = (,) <$> ( @@ -374,11 +434,7 @@ updateMap dt = do (A.log A.Verbose (show lll ++ " " ++ show len) lll) ) , rot = Set (direction vel' rot') - , anim = Set stat - { asId = aId - { aiDirection = direction vel' rot' - } - } + , anim = Set nstat } return ent updateNPCs