From 90979fa03c3bf2d009c84015aad7e2bea412c18c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davy=20H=C3=A9lard?= Date: Sat, 24 Sep 2022 16:15:27 +0200 Subject: [PATCH 1/7] Update the rectangular movement example to use the new extension. --- examples/rectangular-movement/README.md | 4 +- .../assets/Blank button.png | Bin 457 -> 0 bytes .../assets/Blueenemy2-1.png | Bin 1799 -> 0 bytes .../assets/Bottom arrow round button.png | Bin 0 -> 1407 bytes .../assets/BottomLeftButton.png | Bin 0 -> 756 bytes .../assets/BottomLeftCorner.png | Bin 0 -> 156 bytes .../assets/BottomRightButton.png | Bin 0 -> 786 bytes .../assets/BottomRightCorner.png | Bin 0 -> 153 bytes .../assets/Launch round button.png | Bin 0 -> 1858 bytes .../assets/Left arrow round button.png | Bin 0 -> 1383 bytes .../assets/Red playerShip (1).png | Bin 0 -> 2710 bytes .../assets/Right arrow round button.png | Bin 0 -> 1393 bytes .../assets/Top arrow round button.png | Bin 0 -> 1385 bytes .../assets/TopLeftButton.png | Bin 0 -> 750 bytes .../assets/TopLeftCorner.png | Bin 0 -> 159 bytes .../assets/TopRightButton.png | Bin 0 -> 783 bytes .../assets/TopRightCorner.png | Bin 0 -> 153 bytes .../rectangular-movement.json | 17686 +++++++--------- 18 files changed, 7404 insertions(+), 10286 deletions(-) delete mode 100644 examples/rectangular-movement/assets/Blank button.png delete mode 100644 examples/rectangular-movement/assets/Blueenemy2-1.png create mode 100644 examples/rectangular-movement/assets/Bottom arrow round button.png create mode 100644 examples/rectangular-movement/assets/BottomLeftButton.png create mode 100644 examples/rectangular-movement/assets/BottomLeftCorner.png create mode 100644 examples/rectangular-movement/assets/BottomRightButton.png create mode 100644 examples/rectangular-movement/assets/BottomRightCorner.png create mode 100644 examples/rectangular-movement/assets/Launch round button.png create mode 100644 examples/rectangular-movement/assets/Left arrow round button.png create mode 100644 examples/rectangular-movement/assets/Red playerShip (1).png create mode 100644 examples/rectangular-movement/assets/Right arrow round button.png create mode 100644 examples/rectangular-movement/assets/Top arrow round button.png create mode 100644 examples/rectangular-movement/assets/TopLeftButton.png create mode 100644 examples/rectangular-movement/assets/TopLeftCorner.png create mode 100644 examples/rectangular-movement/assets/TopRightButton.png create mode 100644 examples/rectangular-movement/assets/TopRightCorner.png diff --git a/examples/rectangular-movement/README.md b/examples/rectangular-movement/README.md index 5cd5bb18e..555aa28f9 100644 --- a/examples/rectangular-movement/README.md +++ b/examples/rectangular-movement/README.md @@ -1,3 +1 @@ -# Rectangular Movement Example - -This project implements the Rectangular Movement extension and demonstrates how to use its events and actions. +Show how to use the "Rectangular movement" extension. diff --git a/examples/rectangular-movement/assets/Blank button.png b/examples/rectangular-movement/assets/Blank button.png deleted file mode 100644 index f4ca60589d626d2a39590ef26dd658c9394efd99..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 457 zcmeAS@N?(olHy`uVBq!ia0vp^MnG)9!3HFQziaLSQk(@Ik;M!Q+(IDCcaAvOy>)$;*RNvoT1ckxO9r&0Mj~GgCk1P5Eu|vSFw4T>07k z#VI^VnOpybO-tRKIqUrGx7SSN`rW_Q*nRYyG5Pn*)t1{Urk{SQJXc}~yAx-z*>{Zsxf6I2wsOEbpT*eu{{<{8qv+qXkWzVXa`%c}kys!OA@#o5^ajXwk^vr$Sy2M%@ zBpT;Y72LSksH{)C$Zq~apiJ?JmnBVLfuQTAGE+Ae@0sxUBZqtH8yWp41r`SaC9RKh z-+ceQAmrG&k4|N~WkE{#R<7cL7#2AVBC+kZE=2FyG-j~gl)Z6>!FnUthC!4}JFN=V z8>u4(5qS355~6332E>VH(u^&>Nq^gYUgoA{yN}xBM){B*Oo!}zcD^sMdi!+3$BI95 z`5Y#e2<|KL*ndBN`HaS>BN-;IX8zt^&vCQyVZja0)_?;smXFw(^HLiPcXXZy#tnm~ LtDnm{r-UW|1uf6F diff --git a/examples/rectangular-movement/assets/Blueenemy2-1.png b/examples/rectangular-movement/assets/Blueenemy2-1.png deleted file mode 100644 index 91a136acc10ed28a22c9d66cdb4e1662b649de4a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1799 zcmV+i2l)7jP)H5RTRhhcM5&km!+*HCK@BZ)Wq6KiZu-n3kp`` zWs8)DZL!3)B~U7@S(k?pAVLH&K!B70TMCkFS3nlSVjvMh!oP6jT)4}yJHyW7-kI5* zyU91CyR(n^^xW?~bLZT96B0~(9J-PYNgrj&DslU@1o2S+NV<}t2vaISN-fY`U?=nM zN9aUeB^DAjA9mBEo~c_FZe1XyE0sgB>c1&6QZNWf+auttCq8@Tx` z9Lp?%q|_V2Us(VZ{>llcqQ5#l%`ys9$zL%Y6F?a#++Q7M1+0P6j?1zB$^&S~UvtZy z=dV10hWs_V)H(iY22e-&tC>I@;jd-`jeCE!3TWK=tJOf`%3pC94uAadPfOs!-Jc-& zP6M1N`2kLTRc#5>nD$p3dcz-m^!k?s=9|@?eL7$D49k76QnO=OCFc99mLAg?U=Z-#pZ(tVe?}3#cF{{g~#-C{jSLlFsqQ-L3496^z`(==;$cWAVJN} z&cgisJb9myXjTQ3b#&?lN|lkCugMM;78Zydw70iM4lr1YKQSK+l(+vyw2HX~&Gwyt%ol9w@#zIXSuSO?Cmw z+77VeMJWZ=L7*|35j08>D6i<`0hF~Js7WK0AmekUMki08M(u#6UCeJ|@Qh9~fQH+_ z^U-ltQ1K#x3s9cXX*N()!y~tKKzT=}*8B!&TR5=3)HGkDXxK9kv7FOP%9GqxCd(Xr6*6IcujBlrKj10Bdmd@UCe~q znkV4%y|TyPh}pw;tbk^w=0S_QT{T3x;X9=^;D2<}DCC zKtFirW74c&cwffOEfBMA(rE#T{)o+5tv}l8CY@Qgk<|b#&Mh z(I2%oYg-pOm{p2{O&B8(^|bzHA}wi8OqJrqQn45<%C&W|SS*w?Vx1_Fx@zi`GIosNjmaH1DRA@hI#>QfT;g_dkxl3l9lvt3JThA|+4CdgcVo~cj0VV%t$Y~)6`M^n1S+;eX9P6DCq?tt2UPf^9-zB} p%+VxBX?V~=hzM=NPK=W@=zl}xJ_}{E@-6@X002ovPDHLkV1hKaXlMWc diff --git a/examples/rectangular-movement/assets/Bottom arrow round button.png b/examples/rectangular-movement/assets/Bottom arrow round button.png new file mode 100644 index 0000000000000000000000000000000000000000..52f743518eebf2e104274d82acc1286b37ab8bb9 GIT binary patch literal 1407 zcmV-_1%UdAP){Oq7 zE_k$bKlYK7?jk@)klyL%JCdS4O6*`@SRNi8-akD(ectc)BUi_+PHR>?JH)$aW6+m^ z$ztM%!{P4v`FZiuQbAj26K${8>$jZ(4HI$`ym2*qQ7Vv9^w|Yz8#~GP6PhUg%}sQ+ z-EM!PZZ?}QRrUV<{u`ck>iY}tR<#fFkd&I|z)eFF+U<6~A0HootX8W}?(sKmRJ4UQ z0ceR-j-v(=sv43wOw0}b`+Pos*A{4@iav5Mvw%d#XD6LXee^8~?r#&Qoiu2n3U!CX z`xYIHISTOH7ro^J#Gu<$(Q7L{q7O(&qxI^Vu`iohN?aX@JXEyyTtvWDvh~`xjNkD;rA3&wx&vF zqBhY3-l7ZOF%TDGAY!9V#XM!TEmLP^6YoU)ye@)AL1cd7?N#7`(Vz{&kLoIT)K_FK z&P^*TF4&K*gLkT!>(whWWmG^0^aZ?ArOXbnXbRqteu3q3`JrzBV$M_pYww$}eA5@< zvG)x;x?7=wRLivir$_yvzJfK78E!(H@b=!!*X%VuOwval_TDC700J$ynI@k081b|)vELLE`1T4IG zXfZ7*0SHWjiwSj{5q!}aR7wD%(!f-~v8HsDmind$AXVc6-9-naxot}gKw!iA{ud;o zOta>IQUfqwjsG*(#~_rI{Yw?VGdoE4zBu*t3SfB!MuojG<^8l7=M({?jP;QxqyTCM z$WsK6ZtIQ!N)G09jH2w^o70O&hTW>F+)ITZlgJcS<{ zXQ%?;OGG7A37kZt!iyvUFr&7rZ6d*XC6-{8D4}qaZfQr_3PdSd?#z*< zT%goeP8&o?PLposj+`J3WlE9>S|Caj!i-E96{2y{be1%T8f-e3iR!;dqVor^MvGI^9f9LPZhD2)8V(2S$Gr%g$pPnMxWQ;>o)3hiqtDLe z)yJv_iIBJgk%KmNKfez8P#~E(pyT{M4_Gt=YnlUgW0~UpFLkVzlVmmmR{#J2Ep$a# zbW?9;ba!ELWdLG%E@EtNZ)9Y7E@N_eaCC1jX>DO=WiC)oM=~@;Zewp`Wpbznf9?PP N002ovPDHLkV1kc|g2Dg* literal 0 HcmV?d00001 diff --git a/examples/rectangular-movement/assets/BottomLeftButton.png b/examples/rectangular-movement/assets/BottomLeftButton.png new file mode 100644 index 0000000000000000000000000000000000000000..c60cbbe9bd9084728644f578a5428287d7bf4d9e GIT binary patch literal 756 zcmVPx%u1Q2eRA@upn(MBjFce1dhKLG+0-{FW|FKNGfpWjA(Mj!ek8|P#os$!2`-|8r z-|FhNh%~sTwqCFA&1UoYrP?0fZZ~eVS~W;OI6x4sR;#wbUj;)j%jNRH03e&q=1vvG z@2~{s0fHbJ4b0T*^*BXQYRwb`0hc7nBjf#k=N5|vPQTr5!Nzntly5oSORhXWWf41)$CoMl;% zb2^=3Bg}wUmIX$1U8ll`ZQGF3Fbr(Owrv2>G_4c_ZJuZ&sxH%>;DfzcGaq2 zUV1Gx$ag@hf_VvYI-S7Ccs%~dNL3(?<3P^IWP*(_ z1L8Oi7*SP~3L~!TLeBAcjEyh@;<_#vdFMyf^S4%2HR5?57*SOf8({{-^E@yz8jYx^ z5#RSAr=lp>2s0qQ?}HIpmZ>m;Za|PW8jY}#AP4|Nk|ZiX!Z3uKvMe(O5{4ld84ib3 z7>S|?a!QhfjW7ceMG+Vo31R|x%Z304h92kH_k~mGn!HG)=(>`hTRX z{ge@M-gnGoSq3phQN%{FECUch5Xv}e(Vyoz1|ywLrxr6_7UFWbz!0A2u@PoKE|&`! zX}8<(-^WjHd}Xu#wV!O1DA)CRh3-zL^QT7Y{*b`GpwYtvQ0!!R(FTJcP<^2M@K6mQ mCiQ}#>bSH}c+?00$^8rGoT@+%jip`y0000_e4 literal 0 HcmV?d00001 diff --git a/examples/rectangular-movement/assets/BottomLeftCorner.png b/examples/rectangular-movement/assets/BottomLeftCorner.png new file mode 100644 index 0000000000000000000000000000000000000000..3c80423aeb04a8a616c3f06f69a548afe01e56d4 GIT binary patch literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}p`I>|ArbCx zuW#gKP~c&9+~oLe{w3*#poXRwg`Xo8*1wjSl$LhPAU4F|Z<*^HhVUbz4>}YW7+C}y u;6w#WozD?FW?jbG#+yuKEv5^U#8%1Fe|Tayb1~2Y22WQ%mvv4FO$-1qJ1-Fc literal 0 HcmV?d00001 diff --git a/examples/rectangular-movement/assets/BottomRightButton.png b/examples/rectangular-movement/assets/BottomRightButton.png new file mode 100644 index 0000000000000000000000000000000000000000..256e1eab2fe0e8d42a22af4f1882b547a92ec6db GIT binary patch literal 786 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 literal 0 HcmV?d00001 diff --git a/examples/rectangular-movement/assets/Left arrow round button.png b/examples/rectangular-movement/assets/Left arrow round button.png new file mode 100644 index 0000000000000000000000000000000000000000..c074a6dc4fce7b54ee5acf37a285f5f7ef908af9 GIT binary patch literal 1383 zcmV-t1(^DYP) zm@Fp#{QNwBe0*GP5+82wLBoXH1W#ORHklqsDc)Iwv`w63{Ekf&|K=uo zzFMt*pxxZud}(X9x3}N$S*N}~@!humVIGQ7a}RD2o6vf_{&jzU|NZLf>XZBUn-mRw zp-%ukAe9r-Afc);iNnO);7>0uF5abr7HfEihuK6V(w?1kD)lks6x`p-Nu5eCqgLLDsGy4Qq1RHZRDu~3KGJp5dO%63%g zM${$-;4N!_#~?1nAY!3T#k^#-J*3XeCeB6Tyc*$Ah%8Q=9t95>4cZ~%s9NFCSdoP| zCrLamvLCg>+cnJfXwOVDDo6$l1>UaF%nn%eg?C1O1DBVVABF}HbEX>DdEE^6O}~hU zeQ5CLYK00?r_csDJsJ-U6&_LLh9+fO9S8M5C9ZKLQel+IL5G6<0}GDBuTf_h0~)-d z=E{dTlyN89rzL%SZEC@pQ7MetLK-w{*}fP&n(4M+3xmNm{Qx$AtijtoS^&X>30T~D z*+>8hOS+ZUcTK&r-j=`K3JT%PVV@U#Jf z4I9hfO(L3U*4T?E1)%rF|Hi%DgvxFIc;;97K@gl$t6tbay7tAXr<&kNXcidlt&M5k zPcq}I1uwPg(~R{tPe=huE#I`^r36Tqbz6Ya2HFC=)N|YGR}!EVctrxV1g}VdDNo@K z65z(z^Irmo29Peis|H9VC3PZ!p9HM|AWbN2S2)svv=xYAfi%qpN-gCqK$KX@ZF7Qj zD^oI=pbb$dnK0hljgwAiX+cClFOkmL?#|^-sOE+UcqvWOi-f91O8*#$=2H4vn@aTL zQ}LThG_4Qm&=^n&0IBBeZEMnvb=ZuY8|!@`YHqC4?9z)!v?HL#=b8h| z5sn;r#O*A2yiNN)NE<}0(^>rfNc5;Ly;PIanRJDyb;*Z0k7?&4zFGtJ7o!^s7rD9g zwcZ(FQaHH#AuYDA{puILp)}-!=KN@H=Nn5jLz6o$v~&fQU9=hZy=b`9b|_X>9X`p@ zzcvCho~J{B$0LDP*HYlBT=QMw*nxoFs(a|xX6^PcVD}cIW1m`!O=K-T!E42!^P1Gz zA31JBYsiEO?$iJ=P;5f301q$uR60Zi%3QO=s~2&bhyj#%DVuIjW-me(soYj{@v-a` z+4tMtLUp*_OnO4IFH>JLj41Y&nY5)KLEp$a#bW?9;ba!ELWdLG%E@EtNZ)9Y7E@N_e paCC1jX>DO=WiC)oM=~@;Zewp`Wpbznf9?PP002ovPDHLkV1kGxkqH0* literal 0 HcmV?d00001 diff --git a/examples/rectangular-movement/assets/Red playerShip (1).png b/examples/rectangular-movement/assets/Red playerShip (1).png new file mode 100644 index 0000000000000000000000000000000000000000..3695e09e21c6f37cf43dc8dd745b6f8134dc83f4 GIT binary patch literal 2710 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 Q?f?J)07*qoM6N<$f+-O%kpKVy literal 0 HcmV?d00001 diff --git a/examples/rectangular-movement/assets/Right arrow round button.png b/examples/rectangular-movement/assets/Right arrow round button.png new file mode 100644 index 0000000000000000000000000000000000000000..7f168775056be1aabdea72c4d842e2058bd17011 GIT binary patch literal 1393 zcmV-%1&;cOP)@^woPboIgZMX)4WQur3D zV0KLIN8)g}ToWK-I1-n9J3l@S$D@&AdwzcY^z!oZZNJ}7P0vi9x9s@r1mDFNqoFh` z77ITd4!5tbugjyShOsav#(sEs_>dH6SddxZ*!27us6k5c%oL<8Gm`P>S}6X{EOfEm zZhxacJw1JI>g)CTCq8S`_Yc0?G(OBjuhhH*ZthypZnyip*=&B@-`{^VAHVX^F&4%I zpfysNMGYiW)g^IQn3??b-QC?sU!b`79CJ0vnbJ84wvi_IyR-_4+Q(xACI)EyFU zb2^xF6yTXRdc!A(N&8gMOFLeo4M<3%ws+0ho6R*Pu8l-;O~IUlt8}Td9K2Zw8|TAD zVy+y-U@DCVQAdHFW0pEshoj-^5C;)q0DUObAtqaQPWVGr8fy~^b-2yL&wWtYmMWc# z+C&R@%M`$4ATGr~#73Qpd7ss`PMw)eycLP_QUs5J$l}DCi@*b;K?g(}l`42NR%9X0 z*o(&n`;j_$r;fE=?3pQ}0y1DI;GH^Uc7R1!@Fw&PtX8YfLjw?NrW)9K-wgLnzlex^ zXyDP^3KgVQp$#}a8V?N>Jfg}uC1o2O2lYUG+~Z16VHA^Ehl2Bi7#s)e4;T~70UcbP zrX6MuW!lR2X-OY9-ZAWes1!PFAq|=}ZJ&)fjsZl*1&nO~=0wl0wE%27^VI?om@olz zI}c5!rOm;)28h7K=}c(g3>DJ!dTp~0G(e>0r4m?Ex=K@hy8x&GB30uG-9;y*y>087 z2NM!RU_+n%|B#3>&Dw$MImtvJL8Q!eaR?=4|4zYhsEn*oAilAKbnlC-CyD4iB@ls8 zWp7M*Kc9^AQK?CTNEz#bC!_%S+`b(Znc!7Nn(B|#hvfKsQ4 zg9Ffad^o&DnXArPY_zj?+sH zo$y|p+F?=SMXUg7<;JiSw}~~qEr$CbF=l7+`y$YTkh7(${!rgh}Dx?uRtkzUHf6{D#ty6U}*QZ|fUNl%dg%3pKC6vWqs;t``lL zvFuK?9Y;yBbgzw|74>U(8Z=i}moqLLPE)^V-E{G~v+CB}+DzRZTI}9@bZJYq*hJ9c z6TDUo22V+y%kn3=Xbl-#!JQO9v=p0=E5O4`KJ^_$1j<~q#H$x^n}`YY@lrNDo(x`u z%u%_m*Tu(zS8yvUR?hiEVlIt>x$&#CI2=-~XlX0^seM7(;bj+=0=RKh`gN56g`Lp^ z(skJZ)9b1s0M%T00000NkvXXu0mjf2YG=M literal 0 HcmV?d00001 diff --git a/examples/rectangular-movement/assets/Top arrow round button.png b/examples/rectangular-movement/assets/Top arrow round button.png new file mode 100644 index 0000000000000000000000000000000000000000..19f76aaf82a4a631d2824388b3459d4c9770fcb2 GIT binary patch literal 1385 zcmV-v1(y1WP)2iS3Aob}^Ka(OwQOsnbc-`LKetdj<{CYSX=B5>D*HKo|N#pXhtH+r7^U8U|zrI5n+&7P=s%cxDdLRv5{+_6-#OX9l{u zzrX*Dw%_l+wY8g@n;-bBQQtqfx2=Cn4@s%H1-JAK=;7hv@7>+qudA!8FXrR#hG^&u zeFA8MR2ET#gsS=^4g)hU|8u=we;5jyui+UMX6cd0_~uEYQlDK$!TfFkwF?c+*P!l@ zc$d+^J4XS}e4`iq1@Y2Ds_3~5U!n^nq*2?tmh77?H6^Z#L~>2RJBzEdRap*iAu-1d zF-PKEIYcp)#)GJ#z|S#Dov*>r@Noo(2seN}6zUMuT=yFHhpIHj7R=S*a~^(9L1jCt zbQyF`bimu>0FOc31cQi$Iu-Mj)wW5U*_?P8#LvqS9)-yK#EY}wA)-M$gddeFJnAbl z7iT(%#YOZZcX+3Uv7T+2X+#CVfU&?kH5%Cgi@xw?^c&c2x1Yua5M!nq*m>Oy^G$Dr z$38ZAbhSbSsgrAim>%_q#tM(9a!G@-t%ieIAk8)IDZ+eeTABa`lu4sO!Tv!EhJ*WK z+S3U$DDzHppO*CT6#>7nHJ~Yl-no!E&02F`8$3;jEEX_z0W39Nuq!;RRS}pl0rMLV z=}1docp5NsQbC3bjP5b4HL&9SE8DoOP{2c8B*s>Zc&7kweAW!n(&q#=S0 zeeVBFA{uE<4W2Ya8o91Ep`_=(5bz`+zL*E;+80?*slt|+uK%T^-2yvApz~_jrH-KXV z=*kLJQsG6C0AcdAEO5wllo~T?B|~`dfGBy$h9{E`?c36TLKQoZaHK=elUn;Dl_O1K zff~s}sR5)*xhf_|w=zQq6LJ8^f(i55Zk%*DKShAlv#56GGy zfQ>0`GiQ36#(9tw0P=iAZ>ldnR3l|fn(7>M-NqC)9v7Wcd?lpNMr&TZZxVXG=F-=C zW`s%M=+1|<%zf=gzxWBI6c1B}O6~1@Vu?m*r2WE}j=-{mHuJs*4L4e=lSou|!GbLP zYa?hUc55~2G}odouQ+fx&;6ivTPjL#)onVpnfrX`nD>^GbFW;BO^6ns;I(4Vc~0tV z%b%1%Ysk0??&JW`QEVby0UloRDRqcEb3&v96rU6E0x2HKrrVR^MaVpr+mbFmCSJkK zR;*m|7m2wv3f_$;J7IH3wW6h~>?by#V=7c(t?bHC05^_GzrGTnm}fLW;@Pe=Z)9b1s0M%T00000NkvXXu0mjftz&(w literal 0 HcmV?d00001 diff --git a/examples/rectangular-movement/assets/TopLeftButton.png b/examples/rectangular-movement/assets/TopLeftButton.png new file mode 100644 index 0000000000000000000000000000000000000000..9ff860d4309b77e6de9ee678c79b53fa47e685a6 GIT binary patch literal 750 zcmVPx%rb$FWRA@upn(2GwN2w2U=(@4`aM?Zahd^DQP=JVl7zvp@0xL&Wf44qErAsl=`04O|313?u)H;^Pr zh=V8=9KoNia6mmk3Py=#4pTP*rvP2k3k_2*gyItHP)PS5$Cot0Oc8M@@KA#~c z$8p#QH6U>ugAtD7N{zhxMp@jD{}tqPI>F&yuZN99Q3N2pUawM+S0GTpIF2D_zu&JH z$g2?Ff`nlRM*97JB}RS%ajzoC$@4rm@>`IfhA3UB7bZke^cCcIJc1FP=SxrX-0W3= zgkcCd2ZI4NLJdd|1Yl$^7!YCPcsxQ*K@hMJYCwG72P1+Y5Md+;0>~+fA~r$|i064= zL=;6LjQG9}IVDNLMqJkg5J{4V0P#Eza>}wy8HnRJU__Q>B8<4M3pt0wAvQt{h;7?o zWH=lWVZ?D9$f+m_HbM=EWm#ZEQ4}JK*tQKhRaM1Cr~x?~4q!x8RU(X7mIXOAO~Xch z15(Aa$i0fbg6#KuFrsPN%SNh#xGz5B)O8&j`5%xfA-)CK?RH>9*Y#2(b(pZqfzN<)M3JQyM-90X<{SPfUMVRFk+f! z9TvPa!)CLAIpgsd8=(edwOT#&NZofppiKgQ_sC>2!A6$LWnR1nMgNby@|0NW{*4pR zi-+RfFS;>Lr_;|}GYIC5*M8fnk)7FW_6f3BEb>;X^|lMX58ywmu5{UzB3nFa@e-%QiKG~bq=m>_s@_JPx%$w@>(RA@upnrY9XFce172qGvVg19CA|DUB%QCS64z=cU|ddGP)lN!Vk+YiRr zrab4KHY`%(9@>09&+GO2<4=|Se!Jbc*=$xL0pZJHvG^JY68?I<0?Zxc8zBhHbUM8= z+&`AfWnQacIkGHs-EOzCO9}<^eV;p>PWOy?o^uH1o_@7j&?;Sd{P24uV4f|0>s@D)aOyB*{-O%og0?REfS7{*6I(1{tH*dZ5T2b45|e} zt}Y6L*tQKN&~=?wjJNa?2y)p$JBZ^rFvKtnY~<4*j}R|`IF18G`u#qw7^U|Y0dZXy za_G8_jW7e^x-J;eG_CZC(gllCY7}=>#C6C{jVH zFd#`1h|y}b7z0U?1dKGB%_Ycc1vEW&bgNT)LoKm&*lud7l5h zN2>mkz`vl;%LB04$@2O(7zBa#2g(m`2N7bjUl3Fkmlg_-8UY}=e*uh1r$DXsR8#-} N002ovPDHLkV1j*(U7`R0 literal 0 HcmV?d00001 diff --git a/examples/rectangular-movement/assets/TopRightCorner.png b/examples/rectangular-movement/assets/TopRightCorner.png new file mode 100644 index 0000000000000000000000000000000000000000..cf33a801c7fcd036797ae8a5178db54d94554368 GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}fu1goArbCx zuOH+Es$y|`x&P*ChsB(3nhn3#@NSU&Au;Kh!M+=t=L)JHkSt`55sY^@u6d