From 896e9af9f5d7d73a92315c3f142592ca48086a2e Mon Sep 17 00:00:00 2001 From: photonstorm Date: Tue, 17 Dec 2013 05:07:00 +0000 Subject: [PATCH] TilemapLayers now render tiles correctly, with our without debugging overlay. Collision working well across single and index ranges. --- README.md | 2 + examples/assets/maps/CommandoMap1-1BG.png | Bin 55763 -> 151809 bytes .../assets/maps/CommandoMap1-1BG_bank.png | Bin 0 -> 7159 bytes examples/assets/maps/CommandoMap1-1BG_map.tmx | 2890 +++++++++++++++++ examples/assets/maps/commando.json | 39 + examples/assets/maps/commando.png | Bin 0 -> 7159 bytes examples/assets/maps/newtest.json | 2 +- examples/assets/maps/newtest.tmx | 2 +- examples/wip/commando.js | 140 + examples/wip/tilemap.js | 26 +- src/gameobjects/GameObjectFactory.js | 5 +- src/gameobjects/Text.js | 2 +- src/physics/arcade/ArcadePhysics.js | 24 +- src/system/Device.js | 93 +- src/tilemap/Tilemap.js | 120 +- src/tilemap/TilemapLayer.js | 232 +- src/tilemap/TilemapParser.js | 23 +- src/tilemap/Tileset.js | 94 +- 18 files changed, 3500 insertions(+), 194 deletions(-) create mode 100644 examples/assets/maps/CommandoMap1-1BG_bank.png create mode 100644 examples/assets/maps/CommandoMap1-1BG_map.tmx create mode 100644 examples/assets/maps/commando.json create mode 100644 examples/assets/maps/commando.png create mode 100644 examples/wip/commando.js diff --git a/README.md b/README.md index 5723cf80..40f737e1 100644 --- a/README.md +++ b/README.md @@ -50,6 +50,8 @@ New features: * Added support for margin and spacing around a frame in Loader.spritesheet. * Added Device.vibration to check if the Vibration API is available or not. * Added Device.trident and Device.tridentVersion for testing IE11. +* Added Device.silk for detecting a Kindle Fire and updated desktop OS check to exclude Kindles (thanks LuckieLordie) + New Examples: diff --git a/examples/assets/maps/CommandoMap1-1BG.png b/examples/assets/maps/CommandoMap1-1BG.png index 963eaa46e97d7975ec20ecaa39162a55cbdd18a8..a22ee5e7358e6d0194e472a339aa08215f24adac 100644 GIT binary patch literal 151809 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�Ja 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 Yc<$Ms-~aF|j0M@h*J4lR?@pKg2a2#!?f?J) literal 55763 zcmaI7cU%)q+crF#009AmprWD#D_AHtus{+Og-g5yJ4y*wYzSD8lCs!9QNW5lSh!G- zVnI+!qS6#KC?zN*krp682qC0r-wk>__x=37?|uJ)otg7Ij^jLMb~7_Od){Zghv}$E zqW}P=e|frZ1OS6x8j}sN=)djz4xL2*Is2^Jyc+#aH3actKz(xw2m zUwQl04EzW+gE3FM`j@Q$he@Ms`lEkcDcYJc4k{h@18)yR;H?8ZI2t~U@c}qs2G*=t z1$CO5je>DnO^zXOfzf)svAVyb$j~AWkOs)r43LS5-vnli4bs)uMVt23bZ$R>Q#IAvJy zBu`d67!LW@>zjEPJDnOI)Mxv4S%X%%A>o3|j+1UyZl0Jl?fn<_YY{9HzRjWh@_2ZGMWYm}aq1_+d<0 z;&vYM@%^UWzacHjt8HTN%P;RI+C0r)_0fz?nadVy{Xb0XENI`p1lv9|oUbuXw$ZzA&hxQ~sLRhM8%KdS=|stb_nQo+is1*hyW zfZUJeW6AZvb8^IslDG96Uj7Y+8IHi`ZJr6Z1yYT2!oqh9_kK#56B9K0*C=RdF!eYv z`&(h=^AGQq*{kS!ZH$JKvO3YrU9oa7d%ZP(4;Eaz5nvB`T8-Y{T(#lLLa=i(Oa?w~ zs}N_9IL|+5PJf_H!<%obw$#R$!Htu5f1c_lG67txE}lLZ-SVYisa>#-&C`%RM*vbQ zK*P98`7~2_felEltVaC6j1}{?q)~OF4ty(_|af_yst6P>x5EC-i3pa2G^hyu8@hw3czE5c~LzC z#~cG)k`_+l}Nv$qftx{xw^$$GZG*+U=Z=7+|orSgQ@jB+s}7JQKka z7w;X;YwyokFba+j5E;XKoF<(`lIl+AlB1j$$+701sxZ`nW zK$&zNk1`slBbEGAKGQNC~y*1r2x;zfUBOT<}u9= zlr6~sL1Ic5ZRw?yHEb%8d{~dYbQIALWM`(?YrVR^DOIukqJ&rwF~OV!3SPZq%>FdD zE{~~2744cuULSCZgRueRxnHzMu;9Yhy||r0anx7@d1-kyclHnCmwQK-#pxw}X~-Hg zML7FWAj=#CDHY+q6oM1Zy*78MQgL2)t!Gz!w_70CNu#mNQiUB;5+amJcq*9a6vxsZ zl0vKC>=a8Pt4*rA{3pdiqjq|hgP(voUR<>ETcXZizJ(IkxWf~Ft8PBn!r9hFn$0jI zOHZU5-ng~>wRkOO;qsQRgdW8XYM|DPZ%do+w!?yuQ1to866(z? zka0h!Jh%f7HK?hfO5rH>mkit@H%fxH=_;Vw+nQ9>v0Z+%@MM$Qc2t~XFb?=rJbp?i zzLKsUzLbCLEdJl>%@o;d-uRGFHpixCwjIwM-clox%8S%fK^@nzwBh6Yh(jG!HRode z(ho$JSTj>ddN$E-RAQyH^a1HQuX##vn;`UyyBj6Z`x61KAUGGxr` z$%|QGlD%$}OS;JCEk8&?s-zP!MKo)WkY1P0uhWIat1UNICXZ($yAAYs{kM`$?=of?wzPK33|g4xauwGFJcrE7tgeDd;Cg$DGp?1;eT*)xVXjI*vESRtWMxsu z5|<{K#qD5cS3R34?>DEUD~TU^l&3t4PwreC=i8uszY6@5Quu&&e^s^2sGe&%?`2QW zSQFxLSG~xf>J(adP5PzY#(O~3I~5w z)b%eJ{hoYOV`U`OP=?>fojm^fX#GBrZ{Bj`lp_9iYjX1QI8yM{p)IYyI^1S)F0e{q z3d2U5)HdbBVMoNqe6C=V^IGOE!1%uHd|b+*?^!sZ@e=8FHE(bt=%W#4ZrFTl{C>Af zui$AZQ;thrC3$C$-ne*$Jl;9We|V|A1kk(*zg`F{D5TBke2q@YYl;Hwh9DlPp396TxAA!4JsPp9o5G$3z$$rJVW z7>1dEJFnf+BD>w#AF5)C`c`@JJL&{t#*E8zn*Fl2M;G-3oF+B^8$sVfV3OLk*mPlK zR>4-kS=NDp-$=f>1lWuSWUvpgYC#UDfVm5bmRk^W9V)9=!3N#HUk=~ zdzUR6+?_B0nVs?7gNHdk3{y4*M5(lbQmhF zBTOG17-*hKAz1QQp9$o*h5Khdkcx9ovDQs4DtZ#sW<}tUnhB}0#beV#Ux%T6w_RiH zWB#a3B~W35Iw`~*JOe(zqj}nyXNcRf62@B+*tale&RVqgSBK+(C^1Py`Gv36Ge{i@ z0iy%8(Z*9H^NA&l^CU3qm08z;M8i@QN;`P;wj-+B@l1`>Wl;&^5{dld!H0y0LyI=g z(;~G5es4!j*}JN$HIGzBvycJ5pbV~Qcvq$JxxG=bE?&eG z;luW>e0G1I;WEv05<4wxB7{!fJLZ9vF4^RbI*<5VwXg%9Z29I~RAiLQJh{x* zpj?(C#zkT~9BzLL4%9Anli`+l&%QO!Ixum2(6VzCGL8&qxA9QrJ&LeKNhu$S(}Jk$ zhmy;xvJ&IqZ(_|MHMApRIR9JCjE@1%PCxyHHM?+{>1yki`RERTk^I+FmJhio;p3vKE^o5tZCw`sw1p?<^Q7d-ny zT*_PqJRrqf%Tgo3HD6SJ2kjNu-Sp{#5JhFw`e;OyAu~*e_8=Kqt@CeHGs5W z1KOgD8^r3#v1i0scOl^;-i(hot3=V6C{BR?FrKp@L zff&0^jEfiG_-%@)^8y_s)s+;3{3b^)laM$G_AnjLe@s}J)b^+Skim#XI7uK_XOm0_ zLI;9a?fQ6Z1wK~+$s_5}qs>13xg3w+f8pX&BI$s5pGi=oQMAsyPtbV^z-2WMn{)8& z3dvP-RJ0?SMU;^=s`Phi0D;4apw1(ai%Lfb=4lC^{>N(e&fm_UdCY6N35mVky7p(0-t~UL72>?kG58XcHUJ858gDCC%;elR>v|*HZ-eo$QCQN&)fT=d6smMq+hO z@V{#J{ShcFH44fZtdms>jV~PW$oOeiFUo1L$%-~@b1dw3x1`W$R{EABQw@*moPgZrSPt`opJ zJejZZ*W{_e(%{3#XARq}_B6~GUY7BE^)Cw~==htA)+0nZcwAc)_@(Vc$<%8wR62;QmJ|Ju1Ucjs!3>F05cfe>VyPRX zJA(i^^cU$|tmz<^o;RgaHT#k0qW1jarR%)c3}SQTnuo)#BpBIIJ*c|Z`KkY}zjy<< z9Rq8^7-vnN$c*%~-h)^(x#r4njU0N+HTil!vxy@TJwG$;6NkLatYagE0A%KqQH$g-BqjG5PX6eKwxlCeP=9hPKE~+Ns6!a0sCc&;BJl^izU9xsJgd zvJb9-Tjt9dYaT2uIgoUQ#!Mv)Qq}0_;SZ=3eONjA>;bVndtRLZ793SOtkyZ~n)Jvmbpnp+1pC%utpBqT3H%H9E6PYLJnCp8tGW z2@{j}bBItw6R9`;oX*}5v(+K0D;EqQ^Ou$|DWPN~<^JA#l12j``sJT_3zn^{aQykt zshKf>R1&KNlsH-|?&=yDNiP2TuRCDDeXO8DwlM!z1da7g)1v4LhKEnHE!TC=JP~B= zw7i7r7fL=d5P9cBq#)%rRHURnEnZX;Ez4ZjH#+Qdq9~Ya#h#M-@z-6RGko-f@!B2q zF=;8$Yzz_kwIF_jQYHrhV)+;6y=+Tq7aPOm`(HXnUmn<$}284pEMg3~YvLc5h{S0kB%glAWY>YtcO(-QdaYhm~owi}%)Av1dx!R0^qq^5WttdACo} zRTEPqo~J&pXzW`3xN|y zC(|;J?3gTq(-p5fUvca#7kCAw)Q#1w+43n{`n=S zEyIFkYvdMkCEZ|xLnubH?ZevyM51(tjo!(G=oJNnJDbjKIP@+?;Q4dCmrt z(M5M1tA#Na^1N>uT>*?Eh?m)EgPcy|d8fAC_ckm03!G>rELm_dttvrG-w?8mxMH%v z#HV=MYTU80r!ldSjLi02Tc%B-mwBoxCs1nfJ{8s*)PH=^MuA&lf|&u?gqs+k6?*qP z)ui~VK$POA;o1%CDq_4_#ayCNQ1oq~9-ImPQSxJi!Py;T4lo#3OA$q{t~pXoO1uh= zO&r)$MDTR?L;WvY1)JOnhVFqEWV_E?$YTXu0X2Kp0SDukj4{v^VEzop?oI!K^Tc$W zCKp-5>%QPUF`t|ClHO`{) z6u_2)tDMN6W&S_cWOs}dJkh8X;4j$I4eTSu5Xt6b_lHt&QzHn}7woo4LKxpr={7!i z_=h(#%gM-Q+H;gh+d_p;1cXodRGAwwf9s>h8xACb$(1lSa1fsmKGVV5JgB*UX=>c3 znK$6b)ZoIXTOPn)`(`v?Ih8!fVz2gtn~-k=^5Pz8qmj)wIWdP|#=*gUx2M;R+Y**_ zsyqaf>T&um$c)fGGia;;BNjGLuVE@_pyt8~BY1rT9!|RDQXT_7Tgsic&}R~C7WGM# zQ0#Vi4BIpUc%l0}z0-lRt;C1E$0)u`7Nvn*I1@E{P zHsg5$DYivEt&;POZbZg=jLK`3%z)NNzIY$Tw25hfBpVo~7j%c6{UB@A{(`fj=XrXr z?r=VD!^nns8Skm)ucZ75+-!OH;?df2Lx_pC`ffw7m9qZnzDx$O1RM^y|_k?%n z?=m@PFv&c%_wo#~Qwc|i`}`H>%dON)R)BXpys%*^Y=Wz3Qw3fR{fPFs-Ux(30xcl? zmik@+j^x=s4?5`Ax13^Jjpe|WA8~xK#zzB3E|GWlx%nH{v8Fjaa9?%i+)E<7=v^%7 z;oqZcVg@A!K?HMRia*?#a0%Dg zrCzd}-5z<^f;`Um+XplLPboBhp59H9gD>Ct+J{;0?=6Bt2^MURgM2qTl@XXemAzPq zWzUXwevl~tXVSBb^;r7+Ac3jxa$C4{n;}eSaPS1{p~K?bj}{@$zAD+%cUA9ESrLVI zTw2cTO98us(O!Azu`SlokHG&XO|wgVaoCC65QY8PZv^9<6UG*VC)~f26zj~hh~OWp z$FVc%vqR3srQA`*XLa^_aI6L*yn!os`x%Euy$LKs3{;trI=3EYcKy_fi?%D{GB>_; z=%){%q8$lWpWy-0W}_OFm*=wd*{9;bFB*9iwk41_Z#yBC(4K&0{_5Ds@SBJEKK2-i z-U8>RaMsr2x|VA;<~_{ChtT?6eDCGh)1LS)J81FtIHBa}-}ybH*%^(^c6uDYI+g z4veqSsF%{PHB{=1F-KOD22FA1LDNj1%mC+Mi6p)37XNe z=qql5clynB6&bd$WSZj&@sK&+h+Oi^2{UzxU_#|u zpTp^dByNPS8zgu6Yzxb6UmS=$VCuCgGrsbx#IRh?>3~gu{-jK~2}MtAK9(ra+vW}a z7_)mn@)VT*1kbt*ht+hf{WISnJ-^b%(LuPld*3?pri)D4h}Cuc||?8{XdU6ImQPgRMDo z*ODEursRsz1p7GyESvK;>#RI6oALFOp0|eDs+Ng;1xG%RYcpUP2Yt5&t=wLJ+dRE@ z$qM86;ydH)Z;jo$X}R;#T4BsI;Oozt&;4FO%616@Ff}@x>)l2wo`2l)3U1n^u2E+G zdk6r`o*FjV5qN3tClKJ-xMUs-2q)==^$)%Ctd7-?@- z*qpWY>~tKx_zjDc6l}qwXexRpaq}k3;uf&!7_!86L8R^MfCoK)%uJFb&g z#(v*`f%W7=r8)V-GJ)8Y`MjP~!zjOUNU!9b_WDEBsr^gg+E3|rW6f+-+tyxQnXbR$)8jEE`e)+H4wK(|Kql)~Kh>8Hv2$F0M^M^!H_ABPGl;6c z4m_bL&F%2@3sM{YN@VF}luiC%M1V$}IQP`m>wSTRaY>KYtRM2V!$BcT z0#>qco3}MKznCDN?-VjN&okpp(kqLMb^04OjG9Vx6AOzqnkd(=!No&NW8?RW^i)aZ z!L&_0%hnnTR!bwQxrRC(wB#UdpGes}?-va8MQ=2pdq<^`L@rs()IOY2#avLH(2EWV zoq}d1qNPI_!Bakx$)5F>F)G_hhSca*Zj8?UuJ_lO^^77*Qf=%o9*hhc#z@A0^czf3 z;Xw4UMKYm4sbOCKAx3$`M`Kv@N|&xdRiQ$^9RZ-VW0C-5u z@<3S70)roDxwHx`&*p*00`I=72o}VrG^(VlN>-%scwZdJ2oB8gXAq9NlFIn9t6vqy zI55FcCKJX{Pg}ECcPL~n9@qu;i@11&fg7FS!h$sfKrU)($sr7yE>mmibVx-4aO9g} z3aQ=dxLl)AV}}2u6VMryQlfmsqL4!Bv>H-qo&{f3|35H> z%FUTw+vzj!o>pk))pV19Q(GU6&MFne@_2W=^AW&K$j|&LR#2CdI&J8TV?+&ouR*Nq zU1$F#hKjYf#p$D7ZZj7$Cy7;eB;B$P%w`;!xADcP5(v1oWG|}_c$5@-=-m3~StZjh zhT7*@-8*qMIpo#h)|Dq#UJ1Q%ETh@|^vT;#OD~Pk6t#P|%Sf9j@cF50-_nH)%3-TH zXAZl`oNJB#+P!_r!=qPCn-2VAhGM@LD|#nYit;-@XgchJ?2rE4SN~$#k2fparEk}J zF50;L*ppG0_ngk3Xjgh6KcVF!$GcOO-&rHt2Gq`Z!>g8Iv^~e`005NDqEn zzvj(1LoEA3zD%LHr5u-!#H#7}CFD#Z`L%;SyRX283?;kCu74r|vR%}B=|m7I9wxFF z#Ud-=A;O@_N^(Fp7qmb8!rc^*?3bh^-%Bov&v|`U-D}UjsKfkbEvzC*P`mD7E-0Wa zcP!CcdDd(SZTVKNk)lqrV?*Ja7qQE~jBTxGRH?O}YxdDeo;=1{Be-ddk4uaHZKA=! zZ=<)Le&xe8`k2lhdV1EgeSY%E+fiNflix5;^1#SJ_YAsP`n2#E^W6fAB z4p*eq8KMw;nTs4X%tj4K1X!VQE1~mPAqYsFZBJ(~b9how0}13xpqo5ihft&pRV%?D4{p9LeVj7hIYO}X@5&c?9zhTaRhCezn1rZg5Z1v?Ur{X1d(?@ zmQ(6z@L7Xg=HZ9?B3boTl_d`x!DXI&tOQlhbLzm(w9#0MAfb_Z`Qf3-X= zvSwfy38s^N$l5g9L&+6ijJVflfyb6NzTm)+vc_qovGHV^W@Bio=UQsMJD0WN<69$p zqh>^J- zEl)QY_2%T+v1h065r(>Y%=H?(FaH1>sY0+ULZ3>kt*vX=(J8$+Y0R!~c|`KZcVDe1 z&cN2&^nIIzKgI5?T(f#^c3iw>B^n~S+3`C>pX1p{V?<8_QHJV1*@+I&3T+iJ-wn7lBR1IqTv>-*zYN=FW{Sz=7v$K)eCghIn89-#kvy<>=PK z3CHdzZrC}!6=L9rQ$h6#X`ajcYpdGVZ{T4vE)Y~^ZR3M_5xkn78(N`CYhiz{zm>VT z{`$(}5Zq*vF&7^F-JG14HJrlsn!C<_+2gxw>^rqcr3j}AETRZaA3rmuw@i9CKcbjw zqW*XeL&k;7)Msy{R_+e6tJ|Hr`KH~u%0=WR4RRihvU#K<%L~>t^>N>F_V+5I#vSfQ zyisaVxhk)PT#4CD^{CtC@U!!D5L7Opl^_zW;IqEO7v$Vg7sA< z)8ypc6E=qi%~(434r*5R+iZ7-Wa0f`jLCdzO+r|h_45wg#wDKebw<1LOA|OMDpH|I zY82c(Rt9gqt^CId$k%@(E&0gIn#hzXv>X*7eCbW&u?r36^|v-imxBu{Gaq>FZ0No2 zyWaZ86@%Kc>lgOiCJ)Bl)e!$lERDQi`L9<9K1gqLXMA2_?e#lopKlu|^NQ~KvNL~r zz~sCSU0ZSp@&6Ocz;U{%XwRw-FI=# zpojI}+m_K5m;4r;uE}|vG;uEL$~lj0S(EfA$0lHoY4L_tz{Wvu>yNs%T03Ag~yw(r=2Rm?ESIsr0!kz9tJ4SFdW6&RxB5agSr{)S;O^FQC%1{@Y58 zY#Hqv^x@%8I6N(b{H02U2c8m2-H9@->lb*NS^#9 zom6KG!q%j=Odi_f=B*kFPP~oN%9r-~h$z~(rJOi5h(}(I)^*DDX9LyF#d>7VEe7ru zq>GNR;tg&F8L{fw%kE&L+L=V}f5Qx-3_>mVyeI)nSZ8lDcV*A%8&_~cPw5lk3Nm%f z*q_di?(W@LJQHO&t5Dn}BuD!-lyqXBZGDDh7aqRjZTu|LF`^hD1)4Tz64<+HadK}A z-#ACVIU0G+HX2*qtb|-!a`0>*Ct|dFM2BN0m&Mu~#&tCQHCKx;-3Gkw4t;LlKuHs9 zeRycG(YVtqga#`!0s>lXR2p8@(#pN8F-e2?C*Al|vP6}S^^dQR^0I9)lO- zef?2KJJd1iD(h0FYxp}7TyLp{98hJfri$HxgzlC8gLuAFp8+SVl&VB7ipA{G)d)Dn z$A@hozjdaId+?D$XKz})KQ%44kf&gFt#QyqGcQe-UyW@r^P z=sRld<Z6OmBccjk?yg#Z6jLQ82dkq1GFX!O%)eVwAJ<&koar=q1(f-w%c@3U{w= z*tW7Vo7bg?}N~5W&~jfP9P< zDAOai{c@7@HAhpIf3Q+MUGM)LId6=%in70sulurk}X5q7!~U{SA4oalJCYSj$Nvi6b9xOWp08NxnjXk~3<*T}ipBVg1r(k~Lpr=s^@CN;pd{&?3kI-t zl2*M*z+{x(!=KbfWAp0AKbvwwge^Jx&V&Pi+kLenRMKwkSQ-#q!fIi^#V$I&J(sq? z#LScfV3ng%l7lNIelOKe*k5`y@!m&*=0VWcQKZ0mI$vvz;?Db*4&u`5g(R+(FFxwT z6WZT+yO8J1!GD=u+OR8{o{CgL)7m4)-9+NX6~bY1-bhe`0;a7j(!R9Wl7WW2Y@bVh zopLc_SI)n#LRA1ZoW*X-bje*A^f%S|%>&xikb=wan<8D*iQSYXO11pPTyN|i-elV2(m*t;8 zD(rYltML31QKm}}(;&U??|^>WbGDvI!3=GES(i}(NNXYcg*0jHIbcB0?3QB6Jv;d; zDeSN)Co~!2*YT#3;GyXG2>e=B?@|c{dPIH!J>=#Lznqjod}K^0?X(FH?Jc~7?CP&7 zy2fBP77DGdnE;kHkeeeqQXKf1#O^DWnyxiKPeD;;?o&q>-($w1IKO0t0lbO9psjCg(vguHV}w>Snv^P6iR#!}KOI|8%t_km zGv18+)03KoHT_-3f4SC-xVm`4_Y;+_wN^ISJ*wlbTakP;xUdy7Y1Th4 zXDW%-Np(nw=2R7S=yOXI;tqXkv2>-{MAKQ181)D`$Zl@gs(RnqQFtEaD>SvF9^^(aSZCQ+k{hMC0LvAc zCX#TZid!0fFh&tuaVaR_K98e$qzzSci0yK}#koB2a@jdk~A-WW97Jjog=EyZb$OfgOL|^^`WO#-qTAw{?xh7U-R5i5tR_9SRqHjnL{Y}30~vVnNpsCH|i-UASm$wm%gr z-)DjJRLA@@w5~x{=h$A%{?a#S?ZzUgf;GIsD@IdyM$?N(K!{W>1h3uJa*|}YAPqBe zRi|D?H2nz)evDYSc&6k6H&QhLmNHrmwmXt*C8srzT1gr>Gw~GK@LkuyHyXhDNU3KX z4bk7D)6Xnzx)tBFfUY6DSy69nSS@K&L%xW|kz^@)V3qWfz|KOZyHrL)P&7SN$IiAW zjLi@n;%li&(%_jXN)+~!4z?48H5*b#GC)0Y%W6+C*uY5|#)b7DpV8xf=s{VmOi+hh zwt76dNiokNyB-@~(f9gmd&I5;1=#M$ZpZGIf>uS8h?TN9cNdXdZ`{zc5qr?qK$_Fq z_nsu`sbJp3C-b1dxS|U>!w@%BzP=kFbx$$;mQJ%2LZy3rjzg)>V!F)`Gu5S?aA zF`c&_GY5qUE2Tr0dABFlwL~Z`e=hkFb$25}-1%I1s zd~}RYk_iK{)Xz@)E2+SijqcwlPp|;(;Q=Mq6Fs#vER?DA?R2L|l-PpjbpcN}j&gmu z21IIx(322qP?4~%=qw7{iX#hSG>|zT$EIuOEKr7r>t#yp3^sZS zgX`TW6fW$!uK?>|0#Ha*8q8P{2qa0MB9v`F$W>$1bWlX^#4ds8po=S#8T+VFw$HdQ zj2cwuPzH<#RM3DDeYdM8hf*o5c1yktn<_0<0Ha|Yf3qX|8{wJgGtLvmmrK3q5dA;+ zL%L`T>7W3`FF^6zxj9OGLoN0O`U3Zs`I>4Cba2(3BR}U87pP0o7Juv19HAD3;4|Ch zo1Q-(e$XL!ANsqRQBFu5{zX_VXdHaDDzxA{9La*wr{akp1a{}`r0~EKhNhI03H4qD z6m~~!bWuM(_w{nslFB7*jSqkA4)-@WSU^GFd`C7Df~aM8x|o-eObNoAgG2A=(0Psh zaRw}S;FxAn?mXS5$&o(@XaQo}&6|SA15@g7KU){(d$E35hD9ZpWUH{Xv1zV3wkxYt z%DwLILggcxGqoV6Y_BZ(yZ8W7Irt`*DH7A6iC`p{w6BM%CNv9n)uj0b3O7}ks`O`g zQi3(iJS|<3v-kUJuDB^wFgbqj0$-9Ptpy#FX98vydX9K5b{s^60DZUFPVgC0ffL~0qG=;l}!YZW@m zWc^HK5_-~s3V%uwukCxUeSkDj;m^1rQmp2#Kmr(9pR zCGn&6dtKO4EIL(ae566Ycq_&XTBRx>qyJqz&sHKuZl`<3CG$W%9-ZEVCP|HL)=NiK zhr&V}I>hoTl=^1r(fVEgg0-nJ$;XN@!&ZDH+S6Tqm+4UH(?CdN8m58uy86ETE-FlY z{{M=xXzQCl#^_x=?8^eJn{$9>B(N3HG0!M4h35kP1R~X7J5`x<^gQP+e2`7O41ZIU zBZmgWdx&tX504a7!s@}XE3PVl!A2SaE3^*@=r3d}iYxNBF-SuMhwMb@cTdaXj=dW8Da&;t%8IKaQYcw*)djIKqfJPEJBk<~$j3 z^rC|>S7(CFgAqqZ^sJ{&>e;O$j-5ENj&b~s5y#sEFh$20F9p47>Q{X3-Kp(_T=dSG z%EbJ7A{C2XpA7t2@6KhXH0SrM#L$)@-hBXC;+nuuM6fh3+Pd5TCZj zYb;QvR0_N9K|MBCB3Y3Xr#-Kd;Hw?^J;_4o=FI9gds(c?1r=`s*1+h;W$ICrwfe6R z6EMLiyrhJOz7rWm)#?`^yOI?kT0{SWhc%-bSnTIWD|xHwRgFgRVjW$7J%ag(enw_e zxP-zJ;mCA-B7$jQgikg0xS-WO<6Wi1*0A7VCd9wC$DP5b7k$iOcT>nJ4hU=3?EO>G zL1F7Ey2US8B%zGIjX&hb*8~HT+GM2${ka>QJD{-SYZrp1Qy05L-by#cxJZrheq?tamGaOkdE9!8-{nG*B9uH^~M7t$JF0ALVdZ+ zvKqC2$g9%fB>cufxe_(2hf<)_9@)WS^wcQ155=$3;kW$O@HZ=^M}LXT@;mDLkIt8> zQc+R-D|C)TI&)w+nxT(Qoya15t?b0F_{$JbzDbqEwc~uV`yJ7Zfn(LGRZ?2uY97S^ z_&cu;*90p-VGH0o@R)=ECTd zw@U*lpmTo;-6Ms}-z_~lvxGk_JtHlLRCCWfvt&mzib_N+EbWAwQp}!Wk`0L+MnmTdd{%_?yG0s_00&JvCPy^N-yXPWUX`JuyYlFgy}|3=qBiw^VfNS{1rp2$?XH$LNb zeVTwUke%N>D@MCLkd96o3wV=$vUyhMD@gj^Cxy~oS|}v6Ug)CSk(58?EecQ+w6Kjg zolmUXaY*aH=L$(F4A6H>9lYi8uQ`XK4A{mQ6A^0&KS+((vLYwx6DhahD{52kAZ5c-~3*!e?(X7+`(lfZ@KB>{32@HGt00$ zJat8bENwjSo3i(o_D*0_tcd4s*meA6(S&x#*a)?s$+}&* z^do`AfuB%*CjQxtxAeh~(8g^e9brIbgpP5tHsZD+6PP`9!ZbCuiQc+l(ZQA;TXZ8R zQniq+oYl}E$%p53=@K2v$}_an>`Y_!OR__w6zE(kiELL!MX;K{vRTGns{~K|#tlLX zz)wFs>@o&O4JP|nBc`GhWwd%P5wzkoi~umaaduV77PNGs-yJU@@h#PwsI^fR zaCDG$0*W7`VK{dDUHDD(L8DoUq}It%z!I;oIX7|4^-hFFWNitb53trkUW#3Q$!)n9>s2h$*Rh|sSuyHPw8+r>* z9-%CZ$mAUwKo`rhLr4*34-xS1X-SSyTG0W*6H~Wwp$^Wzfh*>lsj;=_`AAqbAxP!r z{YKLiX#FF;RabJ z4zWk|2VG7P#a#N)!Tjm@Td>dbw%zQ`gWTum`_N9PHGHXGG`zO& zxfV2KcVZuV-5i+7wy7t;jZ!N5BT!9OAX@0|&)piRAOM|?J*s?)@KlbZt)b~709@UD z+f&Pk=|{HtsE}T~PnpgwcL=c4I(km`0_0@U`@J( z=hGpcBGQ`m6whw^imUDmD<=MImZS|r>u??)(|4p2*urupI4#?b`{sgvGf|?oZ^H9w zOewVQgfdd*!2@zX1}jsv_T;JS`Lw?XL6g_9*6@Jga7>l46dT#-L4)&}zvL{I8?asI zH0trAB$!L9$4!WFyVqp}C_)jpt$vgS1P*T}1c@SfQe7p>FXZ5q9x+8%N0Jg^2vjVe zAQa6V!bb9fY48y%@XiHHt5^_tJ6p3wCy*$_E@})_puS?rn|0D5Kypb574^L&vI_*1 zB;3PL;7+Gqs~NI9uR^P@64^hc;uJacPARSGCq#WXKuO|y}|vRY#bPpt;iuL6g9erUgRy;>eIEW zkO_L!N~uca;??REZs0zFpx>9y4*B54nxw}=ADXmUA%{|)M87yBL(fKwG)Qlb9-0m^ zgD|AL%p_&u*b=YVrgxh^rH9Ht=^Ot6OH!*3xPjX&B81-Lwe$LbVF_d=r#sCj1^Lm5 zjT;jK&^H%e@1Bjy$wPY&WvLe8=-N}(fJ0~&?$hU|-$ z_qv0EV5;U?dhOnsN(0a(Ivq$FkXR0ZCG>6Cv}J2liy1%D|5c6RowEiNj(!Pm^Pk^b z4Rs`i0$5AzmSRbaRd`r{_^QVG?iiNPos=b*kp>GABM@y!@ixmOd^GLj@vT5A3m>gv zb12`ie0d@5OX>TUKdz}UoNEm}Cz(w+|E}YfNF#_k6^hl+z6(9*TJ&26Ylh5z z?o4?(XnK++g=~1Bd`nH66=3HC>q>BWo}^oB3i#X_B}fhhZLNwSIXY=vGg2hC^(bo5 z;(+h~4OF_MhWAmUsaSMx>J<^RTU8fC65UFmfutK;98ASd;(kr9Z~-vITZko>Ko=7P zzj@MsvzGmDo*qT}e}LKHQtGb%0P_nD{#S`zKqW3NfzWS6w-UghX^_7w)0zit=x&*K zpfFgJec$_1C;;JC>qkUv`#TZM?_OiK2ZUG&)Z*MweY}|Xf9U$|xTccs@3{mBiWso0 z1tqMyi>|t0MFo;rRxGPvF9^Ykg{D|2DHm}S*8=J)DkZqOf(is1AVLxr1ymp?B_K#5 zEkJ+(A*A2?PQcyY^Stlx{f7@TbI$jC&)j<_Q_l=c52gs}Z#CE7;a^~xmJ>tkPcU5Q z=Z8hIW{9uq-M)#m)L;8Y}s*=LDLrgFI%zFB|D{k{nF~^u) zK9pU!t^vQr_v#EK-b?{_jNYYKq`??^>7}LQWd5NoTiMS0bz3EPBwMPUFXq6J>FhIkC%YYchy1)V#%75Qyg{t?( z^;G5ld@pfr{1qeQ6;j_m-tsD2PY6l3`+95sWGCk{*0Y{ZfBjzgr0;v566fe}!U;Sm(6~n?C*KHd+U(iw4|dIwy{vJpa^aYww-(H!*kYqecnWJ^N<7fLvM?>IEj^4 zyZ7}Ua5O)QS3$RLw+d#|5aGAPV@`hlenI2T`BcZE;?Q|w`%bH9NU$uXczrmZndImb za;aQ+tZ%7Lsgc4_1_50+YyH}O#S~8S@qD(13JvEr;+x#i=h8UQeh?jw7wd2`g`aB& z$KpEvCme6rD3udI(?Lxrju%RI{NF-VI%*@1_iC!4(4Xb+zhJmV@kBNc%*e+r4R}lv zogRbOcNpmHID0^^4Ic$I$Z-Y?|1xAQH5^aT;T#G-2b!zaQNQ5$faWbkI@^ff#Bg^Z zmsX=uR|tQ<>So;oW!B~#2|uImp5~S4A)}e;B?P^;wW&9 zb3w~!X`V%aAApC3V2-{KhA=6;eb!|7CQJ1QfhLi@qL9_0mxa6{RS1S6_WcS^P7K5K zEs+k-y0QhpS`(Hkbf+XWMZpjM52`PS*1Oh7i;tI$R3Fu^7{=Uh#2oi8X45ccGzosb zLzumaJsc9m^rN@vmO{)5by$XwNU>{r&h0ZKK+MBN%&}xLvw9VetboL?7>P&5crdNT zH7z&N>Klf5L!`I*?`)%3$sYZkpbMIbLjcL%`cu5AZTs~@(C=>trDzVs8BO+ibNjm& za+<_7woYJ-tp~%U>>HVjF(S?B+cAAyBk4)|d5LW|yhTu`WFXvdGCAbope20SyTh3` zg%{kzPPneKI8G55!VRt*{)KhRl3>Hom?3f}r|)@3asm$m-iu@(7?hohsgQq`E1k<# zXq0DcIw$^Y5xI&Fq=Y?OkslR%mXXzK*6g4)gKh88d|tT}cA@2yt;~OG`e7(9+?Xd? zd@p16@>yohj|?UWq+q@eU8+!F&Th{(7mrVNZT*#nBAIE8k3~Z1gaNl8FR}RbSY%Nm z*%!pN%9IL?nK$b})gk74h3hZTXR_%i-~8_?f7bGP{ImZnE6||_1k}0B-)Kmv!=B<> zF1O9%5SxZ=z4oEEDdMa5M&N9kYCjA@FbZTwD7F4C{lTb=dsR=B-SS8yK({xGO*QE{ zb9O`BBUdX^4~*gQ9(M7ek9?VD4JIX;2p2@gQpGo%;66PKb5NAdo^-z(<1>M4>$@Z& z$WdhYQIZT6=&LgZ8&AHqYn@^ecoa~s=xdLAin|z6Mn!xsOm5MPLSM`E3>NK??5o`G zi|HU21Q^~y(KA$Bp+OXg#I#^b%{CNP#R3q>)=CwG?bAvm;4_9#S!8iQsG0#=_9M{H zr^MYNciMgv+cBTDAyBr*M-TM_3fT?wtt&1j_l@ve*UvB)RND#|Y*bmnKRsvRF&BK{ zY$L6>xi`s~NChqn!ctsiep-fbn?fWw$)fRlvpM^9**CA(ke$HKfsFZ7Uzby2tSp^f z^xOALp2Oa9;u=L?mmD^W22Q-V;X0Lr1dB$u5z{=P?n4p-!qzW~^LiOscPnhy#Mpw8 z6nF9fxUR+SHquxPz@Fl!ec5$Xu-UTILuo4s)f^|#^8K?7e*LXm`N;2aQ=P$Wj~Fb? zG>D&~sbdkW9bE!}6NhIwIQy4NQa_y)EpH$P5ir6tcMon&VrPnJFZ4MIB-$f|1;)3* za?d<{4g!y-3}kOzFCS~ExM47#>GRF-eM-tn)^}|wMk$B_4>k?dAD{KINk82vbfN(O z$Zq+Bj8FQLMlMsFL99m%%lpnUlfw9RXV7=O8TK4I3S#27{8TC&7-kRD0}>Lq>%v(l zYJCvebg&r4^zew81B4zb+vL!WzG9GilnN#acaJYR;e{yc^R?*+V^9zVmP9)$;Wq+%3)vB(H*AgABWOHXK?nS z0r*Za%;CovrC}%%SSl8ctx${)g#!l0(tbsR{%jJsQW-v+?o}MurzL@y%JATC<^QC8 zhtdkg@jcHM@;zjc8groNC>0j>>B3F^4j(S7W zy-ZxDH26Lk(oBGwbTOUX5q;qarDM_?c);U=(tuylV*Ri0?3{HrY55-b0&W-MEGB+B z-2H3aju(?;Lt^ew?4=g_{A1OZZ5c67hXr>V1=)%S=dYWO)_dq#cDuX))Y~ z$rdZJl!o2&Y&YiD_)U39UyVy?&5F7S%}VLAmv~1& z%a7JW5|x~5R~(Lo#8Wve&nSE<(wa*V#GURxcsWalH*UyveVi1DSo3CEfjKi7XQ>Vw zu2meKphTvDwxU6Inqft6YPh+%fVJr~r>5^}(1il|g(ugHix&gPy2ON!dzN=BUbgnJ zQKak5wp*v>T&BD8g+X!V?WACLa`H*L!#()!W`76A&Pfx&FUW09Pw8#qF3 zBU%4aqxfjut9iCOZv={o56`40DYw)tZ~`^2c}sPHzH;55YVdN{wa2fyq)eAJF~`{8 z`D4G{iAZz6qO7cD-}-_3$_Z06j4#qq-K(v4>iIqE54uGa54LVONxmhKdlj8Fg$q)U z=303+9-@f%g3nBBx^diP?*JcHjJ{tWb-3KzE&TH`d`k8;mHfTVO85?>CsBk0$2&ZJ zV$%|XfQ52Er9{`iYbCWStiaPGO2~NMDF-H*GT~^cx{~v&&i8|q)XN~y(o%#g&`#ZR z4WSdJ(o=$N_1@!AC*k*D8*(mOt3OEY)KzK-T3GlvMc8lf6m!bS6;fNU+l|@OBvcwS zdIW+d*Hoqif>%6h95orXHdWzTkMd+5HIbSOaUO(gUBwX}=V+ZnNQp%8&Q0%Ydh@Tdr~L)XlSdBZ6JxKVm*} z@Iy@Mn<%xhk2@rq%fsg!Fa1X`k4J7=&Ip5D*v~<1A%BaQ)MwAjvm?;Dv&C)nH2H;4 z-~J&@>^3|7|1V2!BXgmwwXx5eJXjy2@DQn1x?Xn7C^k|m)}+XE-`f>UfRs`VgN6D+ zrD0-Bld(Tu#nSD?I<%~4VxO@;f0S=l^^upo%@lW7hbU|;-)@nX<^`biSKS}yD~OEpeie5gD!=`M@?3`gO- z0N}ZL3mrRE4mwgh9Fh2@$TYtguqk3L9MPbT9wNnTt)T-W3{7M7pLFB@DdzN0jpMbU z!ed%P9cCOd0kyI4v6$0MwJ$Oj3TqTMSk$Xee*7o(L2G!28HYAd)ZdMtD&}+HEZgBrO`{Xzv+L&pWu}yb-*jvpx*o3mqMjLR`f_=d-b=89hiJ7&>GXu0A53RU_#5Nf#B^bvYcm1x* zT*bc}rWoT3W~ALZqXeCw!s=BKWtWQS#Z4QMk>Jgd z5NOQcQVf#$Ym07y!Js@|?ogpLhX>tXcIBqO$(&@1p%^Y)tcWEzS)Oe@>E1X)I_C6W zzqL4A{8+hq?2Bb%A0U@2=l{mu<;yZTo{#vWx6D12tPmbQH&HWUKxv-g@sZ>4g|iD= zh(1=uD-6}$r5^TN=in>mYW<6p<%9=_KQrn6llnUxnop4A)$Vw>cGpCF+!$1*+L675 z8p&%EY_qEPtRAs7Uwl{24NPH~F!Lk5@jj`BLD(ig)25Rdb?HIA+p)WE*`KRTw#ilB zGIs?f|BT2gGa85t`%Xg-gB|9g7@G?Bfmh>4g@;jEmF|lM`*ga;p+aPPxEjbdI$0}O z`+0m`qRvSDGjGJs3+(XZBjNm|V!F6oZ`vPD=zdfzaJBe#W;mZJrZ*1f$&x(?d1|sY z?`);!+I@^q1|hbdOCAYzEE6jAL=`So;&*mLI#~4qhAHC7W=1-ek#I!jvj0lN!k(FYUxnHE}CfOqQfk z*{B#c#Me9*S{D41j>71ovwmc(VDG;I^ntp3>xBP-RMxRS!CqvT&_g11zpBOc47v&B z2wJGk>lo(6Ry?UDPufKm#7~eE$2Hxn#ZYUCM3@VH>+TT0F2Y0iDbSampM zG70VgE})hXYNt<@U)+6(x&54mu#>TfeB}b%CQPfA%1pdkLywF?~zfpRTpChuag)J zck6|JzvGu92DhK;ffmUT3qH6v6_W(X{HM$-lXQs;?zP0{GbBX&hdxyDMYtiXiRhc> zvAHP0u<>DfgyMH13p6?R_Fq%?5u8%nx^|(vv#821{OMS)q933WKoi;H%oq+BIA4ApCu?PGRzZ zu?)f&R>}=w$O=kg2$kmBsT#}!w}hq&g6Tt+yxh`L@hCxqn5^WVk(#AyP8wDJGOE59 zVg^;a!;m?g5h7A-7{Y6m>j-ncw&!-Pp|1cZ&X!tc4qyrlw4B6`CG^&dEKFSO!}IQ` zI0Hm`KV9K|UvDLqE;kb9(#7?^pg{X zv{60Q^p-3+{_LQGS+>mT^V76(TOR$fWkDq2Wq)&M|Eyad%xCtzZqchYY32(D$meK_ z1*<6R0o}?lKChAORE~!wU27^{EclhejtPDw7fsNS&eu_2Z@(OXo}jS#a)nNrgZtjb zPh&rX`x6?Zie?PG&!baCZ0k7fjI4w;EPq02i$ZEMNjkRGpnZi!Q4DkaxUDf}`)!kx zg!p5hvEw$0x!ghW1I$%dU-xsOCT?mysAgdLGj^`8=yW-?UBTY4XM$T6@=&1(NjzPp zlF1B2(LlC{)A|hgU8CQ%L3t|th>@++ z_C%+AixHIidhlGMU*08((~^7?Vt;UlMxjawf>yGSu!c}_fPgYsB}5QLSO^0FgLGKf zLO}D7yTstR$guFYbgV6HF}iUkhunwI8iA0|JC`>54`GZN*axAlNG&*ekHLCF%t==? zZ>AKpAqmVYEL#*SDWJqw5(aGc5-iO6HQ$pZymFa^;Rk`a zM1!s3fmGdh$)bHc_B=We6`EHZwGwkmCV*2aLiEc&AE$hj?+lH4F<_lSO- zrN$&PkdXTFwwzu%L7>b;UhICa;|J)416=R`kG9ei-`Gm9VG`P{Hhf^wi~n`0AAkeH^_$7UqQ)r!;(K|ay$;ZQ&1hU zy;pk%9vdK|uzS(~_daX`LYar9{|90)75*n5U3--znXr5mmmKO#prBUP3%U4|DVY<< z0t0a6QhyF8`6l>XZ7ke40g^=Gxz;ZINCQcr(7q;|ZXu|*ISFOLm6ay8{Yc)ZmM}xu z;WL6C8Gt`x&j*>@y!L`o?Tw7<;_E>{v!lX%*c9Tbu0mq(>0Y%(sHp-MP8MXN?h6?l zyoO|*fSf&e;k;FHbqOwijT|?9N@mYBo$1r7fI&&kOEmK7`>2?|-zj$i13J{9)3*mn zC%6%;7sEH_i3bddVR0wQ8TcW#wDkJMF1^jbO8aV(F9r3<*0V9wUx`k~P$}He{L91n z?mw?w6;&4_+y-uvA;J725^X+pVa9V9FDzoU>2Th8gGztq!0nyCF94+2EaXM5fkM^& z{mP)ecois+q?%xp!39*uLj1%03dggQ^DEyJOhPw~d5KhMOYj(Mb8P6yCn~~iQg2=l zWt0_TWapWvGGc{gui@gB-ujFR!esbyBmyxf&tz*Dh8fp zx|Ft2o>HWtI$#Jrhqx+{7`%gIOMB?3!P3(v*$E7Ni_vxBe#0wGu`4*4XJtP|qVw2@ z6cBQ5TG?-klzWs>+Ymu>0Qk*G%wHd@xe$izBh~^`jz1K&@H`gZ#zvBSQ}4rB$^di( zk9~|UEZVzgf|?2A1U1vU5|bJ5waL&J zdntag5uD3QglF2=AMo@>Z~*@A)-b)c7551O^Bc?QuY+TJ`bjx0^*P$MYLOyDFiZAkjQ!6Ri7HQB2@ORRjSOjFm|OZBopNCJ=K~NH2Uq zv=SJ<1QF;<`G|!^S3m)`IT{GXrizI`sD<3w)LJ4?Y{AX#n_z4d;LGY115>@hmki2c z47MoBCwDD%n!pzG}+;mcpq>KgEV*Dq=xHmxO%ITy_jt#hwSpEj&{g7ztSj5R2HNMNU`EqgSF!OpSjU zk*34Of19V;f6KL}X^&YTpT#B?5?aK;zG}-982G8hZ{^nZxu0-c^Buf2Fq(l zq7%=pD7IkZ2f3GBz|>Qr4=cwDS{5RW<{Qjw^FYfufm`ZG_)jh3?*m?=A1sqW%Ya$! zCO$4~ob=a{QG|J0|8yuZIM&CUwyq`5%2;%673uV&6$FC9^+@ySIJk$`rtY%?d-qk~ z@uSHq)WRC+zvk3wK8bv5x?lm_FxwrqkW4eN7`ei?e45D%C;#goW2@QvH@;{##ooj- z_Vx3f5kdPh98EGW&K9*gnC!{Uv_kQ^kgQaLU)q)bUBc-0Ba4s* zWr2sOeGZt2OwMFkJvZHHYG0=O1>Dta0WLQ7Mn_}43bgc*wu;e4*)`aT5_6;!N}R#* z@d7WpX~{8k^)x}<^}K9gBT-+2p}ieEzkGj2s#%9E8`)};cm(=9N)_il#^!b_d>#ue$ zv%YmN6g1)ogZ9OLG%stL{Y!b0?*6Ir1MN1oZ+A~zll_A(>m6gy5p7JQuXu6Yt3*fh zTKA(t(#Fskb%QYeM9N?%E8@0^V59TjBI?nI-$JJQTEu4Jqq|*pHtzsa2B#e0i~uo~ zY)V?Ul}}g6Bz$3f%U~xq5sU;bBVsOcI34QqLQ-Uedxg(OE~xE#(Y(+lsqmPCFZls8 z2Ct2#tuwXiJlEdfx_GT#aV3Rg1~94s+XgfXhd)c0%5~9${O+D9>YGt3S`%fCUYz#>lID zz8D!#mXw!8DKm95-|1muEN?q)-xPBs^m(rd6YSF%|9K6Rd z;L7JG+6{||IYP6`?4BfrTcTrd!>qupRT01NttwXvYMd9p;YL*sl7nBrU$X3Pj8&(5 zVKv0GS?bLt{4J8>DnoE^?b zxm~bM48=hTRM>5b@s7G^;(CHcqGeh4h5g0NQNb0YRTxV+ik2vjS@M#9M4yfAZ~lvP zyo&f{M`+PD7CCrDbcQ?Ht$ALz*!(t>HpN(Fb7-vVVK3kC_7QaIK<3z?T#8HADHgRS z=upTdRd&intAzc(F6ktiu<4_bHq|b+Z~2yw*h5fTDj&4{noJ7)AYS0}US4eByTA<9 zfcoX?M2bDTY=_2xt~8Yx1${!73zn0u)e#e?6os*<`<~k&d3+P!t8!(k`;vBo37d1L zOQz>FFL^4DXf~wB4}ju{zJD*LTB~&fEp(}B>V@M0IZ$CU#n8WciV}(Bdw4+~b@7SP z+l0gH8+QT}r#R5fb0S&8HYh)R5FCCDDSph3yORj>m#{hH_GNr|ZJ9P^*MiS&YUu~hqqQ~a49 zo)nrl_@2rf08110b$066Rpi>+VS^XS=24{E@#d*iXM6Af&ZeBH#EwrH{a%mT8kXA@ zQj0WQ_0rnfpe3u&$hGiEbzjbsP5vVK`m?8I z?S}z`v33D-JVxy#xz5y1WuGsc*kU*@ZA&m8u!aGyo0mMGU^`5wj7{4G4>=LBXi@jb z-+5t$Avk3b>=uWEBGrh`#qeAU@qva}PVSXf#9Ij#Cz-)*D@0#?+-v2$^YsMZh(N9c zuW$HW^Gmu*;14V0wb@II<^Gf<*?pWC7Rk0*TzIb>cQ-7LZ!3Mlw=r)}Wj`%L?A<`K z*g>{Gz7W@U@U=R@_BQ-Wea}r!(e3aRy?rUDbhU6C7uaK*KDiv!D_f|=EdNBWJ9vzi zAoD=(t*YL}#jeH^ub7}3c9E3Z=7G7HWXx^D;hI|#Z=OLFGrDXeZYMdBxkMTP z5{gFw{KwQ=WYn-V$X-47;3q<K znN*&oS>@Yy1K(ak60kCytqr#pbRZdGkq2YB>KbJ=P>=J3SFx}jJ6r2-E$l$_O>%N1 zmn1i7+d|{P(@h>q^RwdXkjA3H1!Kyc7rTEc<&5Mdkdrs%M@q6EtR?lDvMfXSZ{QI; zxYXoJt+9<}t-m_}vX_mCd_E!uZhU^L2VKSCgpWb9ZrBMNv122nqu&1lhH06X<%Pz_&mGqIN$G z&bhBWB$0g&V2FWQq0;mzpkZ&+SRfUcHxp^3BeAVGHFsUv;~j?V z_wQ$dem$FYJA8rbuQHisFE$dLgLCZu3~2DYI`@xwEo(@_vl*{{7g{vF&GK!PP1X?IQ%x3UoO0XU+SI>V(|+~p}J9$4!?rex}{L2eKoLG{!&8NEb!gB=D;GE+WHv1kskfR{1A;mtzg-hV#KrQv9hY)-sJm|!ymrLc2 zN{{Xk7U)2(D{%yFmz$uK4lae^cfd<6o}R$xS5UKs*|2!C61Vx!;#XSyoI<0sG=%69 z$h2^DkAeNSMsIkDJz|!U?A>S?81*Xy!;a!rFsfXv9q7bw+*GJ`=u!s1H=@7O;wV(V zWZ0tn<3H4Y!(K7V|3iHrRBwgqXeS;8)h9spSw?kFobBDzmY*1LiQzVY2e=JoQD6H| zwZ>>Hg%vQ24RjG6GxOn+^m%L-v3bs<0o;37j-PO=^;C(MM0O8{OQ{ct$y!{a)P5A} z>viyJ!o@YPwooM=mQPVAsPfiLj_@d$7bFF$aKHVmM(<>JbXH_kM71~#ae!N``jy`- zdKz$jxS?H4h5_thci2vgXV}5tkyM=H#U&f2zF2Jj;AP1_Ho$Mx=Q8Deeo%InoG&v= z#^GA!17h@{?Yp2X=JTBxRChg?iEIV#KK?%ygc-QX}SdActOA3nxt)(kdmQW0ws;$X5N?wIrvfDVOrAaUw5KeP)nI8sG%rr&$GC z9g~B?zNC8MWcA=43aA-N!#f7)<&LmPt`Bu`J)~S>sl+3Lgz$0&H^hi_n&o`M&ezv* zvP~yG*2oNmn{-j@p_`@f7bMbfN1}158n)6;jKZFGiy>I2+3m3e5=81d)i6&k3^!?q zzI@R9a>Gs%Zjtl5d62ogToDQqSjzp_7?~Vyh?$su}dBfT|%{a_JdZGd~W3 zlD_Ub2B_9Us>6Aol!UA)hcK#8rF*tNkeVRBw3cM;G&))#yL<;1Dhz9x%a@2J+_1Cv z-OZK`{InPDZeXxWozZTwP+t9jXfg3&tAI;5e}r15y1*b*L1%n^4M(HD_DoTq5(w}V z4Hg@Oe�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 diff --git a/examples/assets/maps/CommandoMap1-1BG_bank.png b/examples/assets/maps/CommandoMap1-1BG_bank.png new file mode 100644 index 0000000000000000000000000000000000000000..bd2ebe6539b933ba629aabe67309e32a7de75706 GIT binary patch literal 7159 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/examples/assets/maps/commando.json b/examples/assets/maps/commando.json new file mode 100644 index 00000000..07500aef --- /dev/null +++ b/examples/assets/maps/commando.json @@ -0,0 +1,39 @@ +{ "height":180, + "layers":[ + { + "data":[1, 1, 1, 1, 1, 2, 3, 4, 4, 5, 6, 1, 1, 1, 1, 1, 7, 7, 7, 7, 7, 8, 9, 4, 4, 10, 11, 7, 7, 7, 7, 7, 12, 12, 12, 12, 12, 13, 14, 4, 4, 15, 16, 12, 12, 12, 12, 12, 17, 17, 18, 17, 18, 4, 19, 4, 4, 20, 21, 18, 17, 17, 18, 17, 18, 18, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 17, 17, 18, 17, 18, 22, 23, 23, 24, 17, 17, 18, 17, 22, 23, 23, 24, 18, 17, 18, 17, 17, 17, 17, 17, 17, 18, 17, 18, 17, 17, 17, 25, 26, 26, 26, 26, 27, 18, 18, 17, 18, 18, 18, 17, 17, 17, 18, 28, 29, 29, 29, 29, 30, 18, 17, 18, 17, 17, 18, 17, 17, 17, 18, 28, 31, 31, 31, 31, 30, 17, 17, 17, 17, 18, 17, 18, 17, 18, 18, 28, 29, 29, 29, 29, 30, 18, 17, 17, 17, 17, 17, 17, 17, 17, 17, 28, 31, 31, 31, 31, 30, 17, 18, 17, 18, 18, 17, 17, 17, 17, 18, 28, 29, 29, 29, 29, 30, 18, 18, 17, 17, 18, 17, 17, 18, 17, 17, 28, 31, 31, 31, 31, 30, 17, 17, 18, 17, 17, 17, 18, 17, 17, 17, 28, 29, 29, 32, 32, 33, 18, 17, 17, 18, 17, 17, 17, 18, 18, 17, 34, 32, 32, 35, 35, 35, 35, 35, 36, 17, 17, 18, 37, 18, 17, 17, 17, 17, 17, 38, 38, 38, 38, 38, 39, 17, 17, 17, 18, 17, 18, 17, 17, 17, 17, 38, 38, 38, 38, 38, 39, 18, 17, 18, 17, 18, 37, 17, 17, 17, 17, 38, 38, 38, 38, 38, 39, 17, 17, 22, 23, 23, 24, 17, 37, 18, 37, 40, 40, 40, 40, 40, 41, 17, 17, 17, 17, 17, 17, 42, 43, 17, 18, 37, 18, 18, 37, 17, 18, 17, 17, 18, 17, 18, 18, 44, 45, 18, 17, 18, 17, 37, 17, 17, 17, 37, 18, 42, 43, 17, 17, 17, 18, 37, 18, 17, 17, 17, 18, 18, 17, 18, 46, 44, 45, 17, 17, 18, 17, 18, 17, 17, 17, 17, 18, 42, 43, 18, 37, 18, 17, 17, 18, 18, 37, 18, 17, 17, 18, 17, 17, 44, 45, 17, 18, 17, 18, 18, 37, 46, 25, 26, 26, 18, 17, 18, 18, 37, 18, 17, 17, 18, 17, 18, 18, 37, 28, 29, 29, 42, 43, 17, 37, 46, 37, 18, 18, 17, 17, 17, 37, 18, 28, 31, 31, 44, 45, 17, 18, 47, 47, 47, 18, 17, 17, 18, 17, 17, 28, 29, 29, 37, 17, 18, 17, 48, 48, 48, 17, 17, 18, 17, 17, 17, 28, 31, 31, 17, 18, 37, 18, 49, 49, 49, 17, 17, 17, 18, 18, 17, 34, 32, 32, 17, 18, 18, 46, 18, 18, 17, 17, 18, 37, 18, 17, 18, 17, 18, 47, 18, 17, 37, 18, 37, 17, 17, 17, 17, 18, 17, 18, 18, 37, 47, 48, 23, 23, 23, 23, 24, 37, 18, 17, 18, 17, 18, 37, 18, 47, 48, 48, 17, 37, 18, 17, 18, 17, 17, 17, 17, 18, 17, 18, 47, 48, 48, 48, 18, 46, 37, 17, 17, 17, 17, 17, 17, 17, 17, 17, 49, 48, 48, 48, 37, 18, 18, 37, 17, 18, 17, 17, 18, 17, 18, 18, 17, 48, 48, 48, 18, 17, 37, 17, 17, 17, 22, 23, 23, 24, 17, 17, 17, 49, 48, 48, 17, 17, 17, 18, 18, 17, 18, 46, 18, 17, 17, 17, 18, 17, 48, 48, 17, 17, 17, 18, 17, 37, 18, 37, 18, 17, 17, 18, 18, 37, 48, 48, 17, 18, 17, 17, 18, 18, 17, 18, 18, 18, 37, 17, 46, 18, 49, 48, 22, 23, 23, 24, 37, 18, 17, 17, 18, 17, 18, 18, 37, 37, 18, 48, 17, 18, 17, 37, 46, 37, 18, 18, 17, 17, 17, 37, 18, 17, 18, 49, 17, 17, 17, 18, 18, 37, 17, 18, 17, 22, 23, 23, 23, 24, 17, 18, 37, 17, 18, 17, 37, 18, 17, 17, 17, 18, 17, 17, 17, 17, 18, 17, 17, 18, 37, 18, 17, 17, 18, 17, 17, 17, 18, 18, 17, 18, 17, 17, 17, 50, 51, 46, 18, 18, 17, 17, 18, 37, 18, 17, 18, 25, 29, 29, 50, 52, 53, 51, 37, 17, 17, 17, 17, 18, 17, 18, 18, 28, 29, 29, 54, 55, 56, 55, 22, 23, 23, 24, 18, 17, 18, 37, 18, 28, 29, 29, 17, 57, 18, 57, 18, 17, 17, 17, 17, 18, 17, 18, 17, 28, 29, 29, 18, 46, 37, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 28, 31, 31, 37, 18, 18, 37, 17, 18, 17, 17, 18, 17, 18, 18, 17, 34, 32, 32, 18, 17, 37, 17, 17, 17, 37, 18, 37, 18, 17, 17, 17, 18, 37, 18, 17, 17, 17, 18, 18, 17, 18, 46, 37, 18, 17, 17, 17, 18, 37, 18, 17, 42, 43, 18, 17, 37, 18, 42, 43, 17, 17, 18, 18, 42, 43, 17, 17, 44, 45, 17, 18, 18, 17, 44, 45, 18, 18, 37, 46, 44, 45, 18, 18, 17, 18, 18, 37, 18, 17, 17, 18, 17, 18, 18, 37, 37, 18, 17, 17, 18, 17, 37, 46, 37, 18, 18, 17, 17, 17, 37, 18, 17, 18, 37, 17, 17, 17, 17, 18, 37, 17, 18, 17, 17, 18, 17, 17, 18, 17, 18, 17, 17, 17, 17, 37, 18, 17, 17, 17, 18, 42, 43, 17, 17, 18, 17, 17, 17, 17, 17, 17, 17, 18, 17, 17, 17, 44, 45, 17, 18, 17, 17, 17, 18, 18, 46, 18, 18, 17, 17, 18, 37, 18, 17, 18, 17, 18, 17, 18, 17, 37, 18, 37, 17, 17, 17, 17, 18, 17, 18, 18, 37, 18, 18, 17, 18, 17, 17, 17, 37, 18, 17, 18, 17, 18, 42, 43, 18, 46, 37, 22, 23, 23, 24, 18, 17, 17, 17, 17, 18, 17, 44, 45, 37, 18, 37, 18, 46, 37, 17, 17, 17, 17, 42, 43, 17, 17, 17, 18, 17, 17, 18, 37, 18, 18, 37, 17, 18, 17, 44, 45, 17, 18, 18, 17, 17, 18, 17, 18, 17, 42, 43, 17, 17, 37, 18, 37, 18, 17, 17, 17, 18, 37, 18, 17, 17, 44, 45, 18, 17, 18, 46, 18, 17, 17, 17, 18, 17, 18, 17, 17, 17, 17, 18, 17, 37, 18, 37, 18, 17, 17, 18, 22, 23, 23, 24, 17, 18, 17, 17, 18, 18, 17, 18, 17, 18, 18, 37, 46, 18, 17, 47, 18, 17, 18, 18, 37, 18, 17, 17, 18, 17, 18, 18, 37, 37, 47, 48, 17, 18, 17, 42, 43, 37, 18, 18, 17, 17, 42, 43, 18, 17, 48, 48, 17, 17, 17, 44, 45, 37, 17, 18, 17, 17, 44, 45, 17, 18, 48, 48, 37, 17, 18, 17, 37, 18, 17, 17, 17, 18, 17, 17, 17, 17, 48, 48, 17, 18, 37, 18, 17, 17, 18, 17, 17, 17, 18, 18, 17, 18, 49, 49, 42, 43, 18, 46, 18, 18, 17, 17, 18, 37, 58, 35, 35, 35, 35, 35, 44, 45, 37, 18, 37, 17, 17, 17, 17, 18, 59, 38, 38, 38, 38, 38, 17, 18, 17, 17, 17, 37, 18, 17, 18, 17, 59, 38, 38, 38, 38, 38, 17, 37, 58, 35, 35, 36, 17, 17, 17, 18, 59, 38, 38, 38, 38, 38, 18, 46, 59, 38, 38, 39, 17, 17, 17, 17, 59, 38, 38, 38, 38, 38, 37, 18, 60, 40, 40, 41, 17, 17, 18, 17, 60, 40, 40, 40, 40, 40, 18, 17, 37, 17, 17, 17, 37, 18, 37, 18, 17, 17, 17, 18, 37, 18, 17, 17, 17, 18, 18, 17, 18, 46, 18, 17, 17, 17, 18, 17, 18, 17, 17, 17, 17, 18, 17, 37, 18, 37, 18, 17, 17, 18, 18, 37, 18, 17, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 65, 65, 65, 65, 65, 65, 66, 67, 67, 68, 65, 65, 65, 65, 65, 65, 69, 69, 69, 69, 69, 69, 70, 71, 71, 72, 69, 69, 69, 69, 69, 69, 47, 47, 47, 46, 18, 18, 17, 17, 18, 37, 18, 17, 18, 17, 18, 17, 48, 48, 48, 47, 37, 17, 17, 17, 17, 18, 17, 18, 18, 73, 18, 18, 48, 48, 48, 48, 17, 50, 51, 17, 18, 17, 18, 37, 22, 23, 23, 24, 48, 48, 48, 49, 18, 54, 55, 17, 17, 18, 17, 18, 17, 37, 18, 37, 48, 48, 49, 17, 17, 17, 57, 17, 17, 17, 17, 17, 18, 17, 17, 18, 48, 49, 18, 37, 17, 18, 17, 17, 18, 17, 18, 18, 17, 17, 18, 17, 48, 50, 51, 17, 17, 17, 37, 18, 37, 50, 51, 17, 17, 18, 37, 18, 48, 54, 55, 18, 18, 17, 18, 46, 37, 54, 55, 17, 17, 18, 37, 18, 48, 47, 57, 18, 37, 37, 18, 37, 18, 17, 57, 18, 18, 37, 18, 47, 48, 48, 17, 17, 47, 47, 47, 18, 17, 18, 18, 37, 46, 18, 17, 48, 48, 48, 18, 18, 49, 48, 48, 17, 18, 17, 18, 18, 37, 37, 47, 48, 48, 48, 17, 37, 46, 49, 49, 18, 17, 17, 17, 37, 18, 17, 48, 48, 48, 48, 17, 18, 18, 37, 17, 18, 17, 18, 37, 17, 17, 18, 48, 48, 48, 48, 18, 17, 37, 18, 17, 17, 17, 18, 17, 17, 17, 47, 48, 48, 49, 49, 37, 18, 17, 17, 18, 17, 37, 18, 18, 18, 47, 48, 48, 48, 18, 17, 37, 18, 37, 50, 51, 17, 17, 18, 17, 18, 48, 48, 48, 48, 74, 74, 75, 17, 50, 52, 53, 51, 18, 17, 18, 37, 48, 48, 48, 48, 76, 76, 76, 77, 54, 55, 56, 55, 17, 18, 17, 18, 49, 48, 48, 48, 78, 78, 78, 79, 17, 57, 17, 57, 17, 17, 17, 17, 18, 49, 49, 49, 80, 80, 80, 81, 17, 18, 17, 18, 18, 18, 18, 18, 17, 82, 74, 74, 83, 83, 83, 84, 17, 17, 37, 46, 37, 18, 17, 17, 85, 76, 76, 76, 17, 17, 17, 18, 18, 17, 18, 17, 17, 18, 17, 17, 86, 78, 78, 78, 17, 18, 18, 46, 18, 18, 17, 17, 18, 37, 18, 17, 87, 88, 88, 88, 17, 17, 17, 18, 17, 37, 18, 37, 18, 17, 17, 18, 89, 90, 90, 90, 17, 18, 17, 17, 18, 18, 17, 18, 17, 18, 18, 37, 46, 47, 47, 47, 18, 17, 18, 18, 37, 18, 17, 18, 17, 17, 18, 18, 37, 48, 48, 48, 17, 18, 17, 37, 18, 82, 74, 74, 75, 17, 17, 37, 18, 48, 48, 48, 47, 17, 17, 18, 85, 76, 76, 76, 76, 77, 17, 37, 17, 48, 48, 48, 48, 47, 18, 17, 86, 78, 78, 78, 78, 79, 18, 17, 17, 48, 48, 48, 48, 48, 37, 18, 87, 88, 88, 80, 80, 81, 17, 17, 17, 49, 49, 49, 48, 48, 37, 18, 89, 90, 90, 83, 83, 84, 18, 18, 18, 82, 74, 74, 48, 48, 17, 17, 18, 17, 37, 17, 18, 17, 18, 37, 85, 76, 76, 76, 48, 48, 18, 17, 17, 18, 17, 37, 17, 18, 17, 18, 86, 78, 78, 78, 49, 49, 37, 17, 17, 17, 37, 17, 17, 17, 17, 17, 87, 88, 88, 88, 74, 74, 74, 74, 74, 74, 75, 17, 18, 17, 18, 18, 89, 90, 90, 90, 76, 76, 76, 76, 76, 76, 76, 77, 37, 18, 17, 17, 17, 47, 47, 47, 78, 78, 78, 78, 78, 78, 78, 79, 18, 17, 17, 17, 18, 48, 48, 48, 80, 80, 80, 80, 80, 80, 80, 81, 18, 17, 17, 18, 18, 48, 48, 48, 83, 83, 83, 83, 83, 83, 83, 84, 17, 18, 18, 37, 46, 48, 48, 48, 47, 47, 47, 47, 37, 18, 17, 17, 18, 17, 18, 18, 37, 48, 48, 48, 48, 48, 48, 48, 18, 18, 17, 17, 18, 37, 18, 17, 18, 48, 48, 48, 48, 48, 48, 48, 46, 37, 18, 18, 17, 17, 17, 37, 18, 48, 48, 48, 48, 48, 48, 48, 18, 37, 17, 18, 17, 17, 18, 17, 47, 48, 48, 48, 48, 48, 48, 48, 37, 18, 17, 17, 17, 18, 17, 17, 48, 48, 48, 48, 48, 48, 49, 49, 17, 17, 18, 17, 17, 17, 18, 18, 48, 48, 48, 48, 48, 48, 17, 18, 17, 17, 17, 17, 17, 18, 17, 17, 49, 48, 48, 48, 48, 48, 18, 17, 18, 17, 47, 47, 47, 47, 17, 17, 17, 48, 48, 48, 48, 48, 17, 17, 17, 18, 48, 48, 48, 48, 17, 18, 17, 49, 48, 48, 48, 48, 18, 17, 17, 17, 49, 49, 49, 49, 17, 17, 17, 18, 49, 48, 48, 49, 18, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 50, 51, 48, 49, 18, 17, 18, 17, 18, 18, 18, 17, 17, 17, 17, 17, 54, 55, 48, 74, 74, 75, 17, 17, 17, 18, 17, 18, 17, 17, 17, 17, 17, 57, 48, 76, 76, 76, 77, 17, 17, 17, 18, 18, 17, 17, 17, 17, 17, 47, 48, 78, 78, 78, 79, 17, 18, 17, 18, 17, 50, 51, 17, 17, 18, 48, 48, 80, 80, 80, 81, 17, 17, 17, 17, 17, 54, 55, 18, 18, 17, 48, 48, 83, 83, 83, 84, 18, 17, 17, 17, 17, 17, 57, 17, 18, 18, 48, 48, 17, 17, 17, 18, 18, 50, 51, 17, 17, 17, 17, 18, 17, 17, 48, 48, 17, 17, 17, 17, 17, 54, 55, 17, 17, 17, 17, 17, 17, 17, 49, 48, 18, 17, 17, 17, 18, 17, 57, 17, 17, 17, 17, 17, 17, 17, 17, 48, 17, 17, 18, 17, 17, 17, 17, 17, 22, 23, 23, 24, 17, 17, 17, 49, 17, 50, 51, 46, 18, 18, 17, 17, 18, 37, 18, 17, 18, 17, 18, 17, 50, 52, 53, 51, 37, 17, 47, 47, 17, 18, 17, 18, 18, 37, 18, 18, 54, 55, 56, 55, 17, 49, 48, 49, 18, 17, 18, 37, 18, 18, 46, 37, 17, 57, 18, 57, 18, 17, 49, 17, 17, 18, 17, 18, 17, 37, 18, 37, 35, 35, 35, 36, 17, 17, 17, 17, 17, 17, 17, 17, 18, 17, 17, 18, 38, 38, 38, 39, 17, 18, 17, 17, 18, 17, 18, 18, 17, 82, 74, 74, 38, 38, 38, 39, 17, 17, 37, 18, 37, 18, 17, 17, 85, 76, 76, 76, 40, 40, 40, 41, 18, 17, 18, 46, 37, 18, 17, 17, 86, 78, 78, 78, 17, 17, 17, 18, 17, 50, 51, 37, 18, 17, 17, 18, 87, 88, 88, 88, 17, 18, 17, 17, 18, 54, 55, 18, 17, 18, 18, 37, 89, 90, 90, 90, 18, 17, 18, 18, 37, 18, 57, 17, 18, 17, 18, 18, 37, 37, 18, 17, 47, 18, 17, 37, 46, 37, 18, 18, 17, 50, 51, 37, 18, 17, 18, 37, 48, 47, 17, 18, 18, 37, 17, 18, 50, 52, 53, 51, 17, 18, 17, 18, 48, 48, 18, 17, 37, 18, 17, 17, 54, 55, 56, 55, 17, 17, 18, 17, 49, 49, 37, 18, 17, 17, 18, 17, 17, 57, 18, 57, 17, 18, 17, 17, 25, 91, 27, 17, 17, 50, 51, 17, 18, 17, 18, 37, 18, 18, 47, 47, 28, 31, 30, 17, 18, 54, 55, 17, 17, 18, 17, 18, 17, 47, 48, 48, 34, 32, 33, 17, 17, 17, 57, 17, 17, 17, 17, 17, 49, 49, 48, 49, 37, 18, 18, 37, 17, 18, 17, 17, 18, 17, 18, 18, 17, 17, 49, 17, 18, 17, 37, 17, 17, 17, 37, 18, 37, 18, 17, 17, 25, 91, 91, 27, 17, 17, 17, 18, 18, 17, 18, 46, 37, 18, 17, 17, 28, 31, 31, 30, 17, 17, 17, 18, 17, 37, 18, 37, 18, 17, 17, 18, 34, 32, 32, 33, 17, 18, 17, 17, 18, 18, 17, 18, 17, 18, 18, 37, 46, 18, 17, 18, 17, 50, 51, 46, 18, 18, 17, 17, 18, 37, 18, 17, 18, 17, 18, 17, 18, 54, 55, 18, 37, 17, 17, 17, 17, 18, 17, 18, 18, 37, 18, 18, 18, 17, 57, 18, 37, 18, 17, 17, 18, 50, 51, 18, 37, 37, 18, 17, 17, 18, 17, 37, 46, 37, 18, 18, 50, 52, 53, 51, 18, 17, 18, 37, 17, 17, 17, 18, 18, 37, 17, 18, 54, 55, 56, 55, 17, 18, 17, 18, 37, 17, 18, 17, 37, 18, 17, 17, 17, 57, 17, 57, 17, 17, 18, 17, 17, 18, 37, 18, 17, 17, 18, 17, 17, 17, 18, 18, 17, 18, 17, 17], + "height":180, + "name":"ShoeBox Tile Grab", + "opacity":1, + "type":"tilelayer", + "visible":true, + "width":16, + "x":0, + "y":0 + }], + "orientation":"orthogonal", + "properties": + { + + }, + "tileheight":32, + "tilesets":[ + { + "firstgid":1, + "image":"CommandoMap1-1BG_bank.png", + "imageheight":608, + "imagewidth":160, + "margin":0, + "name":"CommandoMap1-1BG_bank.png", + "properties": + { + + }, + "spacing":0, + "tileheight":32, + "tilewidth":32 + }], + "tilewidth":32, + "version":1, + "width":16 +} \ No newline at end of file diff --git a/examples/assets/maps/commando.png b/examples/assets/maps/commando.png new file mode 100644 index 0000000000000000000000000000000000000000..bd2ebe6539b933ba629aabe67309e32a7de75706 GIT binary patch literal 7159 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 z%s>J%Pak;j_wlXi?AxotQUvrJ(!QChz<>Ho|FE3xzNS~aE zLV>ial_I0FUAI3L#ml;U8UZ15U#%*IlXbUcd6lrYfYCG8>9&%U0-N7cjrdcFYPBRa ztE%sSwY#`3I|g}_cz1ABz#xz?<@!ASa4oj9{=$ZJvHetGr( - AQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAA + AQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAACwAAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAACQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAACQAAAAEAAAABAAAAAQAAAAEAAAABAAAACQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAA diff --git a/examples/wip/commando.js b/examples/wip/commando.js new file mode 100644 index 00000000..fd275b9e --- /dev/null +++ b/examples/wip/commando.js @@ -0,0 +1,140 @@ + +var game = new Phaser.Game(800, 600, Phaser.CANVAS, 'phaser-example', { preload: preload, create: create, update: update, render: render }); + +function preload() { + + game.load.tilemap('map', 'assets/maps/commando.json', null, Phaser.Tilemap.TILED_JSON); + game.load.tileset('tiles', 'assets/maps/commando.png', 32, 32); + game.load.image('phaser', 'assets/sprites/arrow.png'); + +} + +var cursors; +var map; +var layer; +var sprite; + +function create() { + + map = game.add.tilemap('map'); + + // map.setCollisionByIndexRange(80, 97); // mario + // map.setCollisionByIndexRange(14, 18); // mario + // map.setCollisionByIndex(1); // newtest + + layer = game.add.tilemapLayer(0, 0, 800, 600, 'tiles', map, 0); + // layer.debug = true; + + layer.resizeWorld(); + + sprite = game.add.sprite(260, 100, 'phaser'); + sprite.anchor.setTo(0.5, 0.5); + + sprite.body.setSize(16, 16, 8, 8); + + // We'll set a lower max angular velocity here to keep it from going totally nuts + sprite.body.maxAngular = 500; + + // Apply a drag otherwise the sprite will just spin and never slow down + sprite.body.angularDrag = 50; + + game.camera.follow(sprite); + + cursors = game.input.keyboard.createCursorKeys(); + +} + +function update() { + +/* + if (cursors.left.isDown) + { + game.camera.x -= 1; + } + else if (cursors.right.isDown) + { + game.camera.x += 1; + } + + if (cursors.up.isDown) + { + layer.scrollY -= 4; + } + else if (cursors.down.isDown) + { + layer.scrollY += 4; + } +*/ + game.physics.collide(sprite, layer); + + sprite.body.velocity.x = 0; + sprite.body.velocity.y = 0; + sprite.body.angularVelocity = 0; + + // sprite.body.acceleration.x = 0; + // sprite.body.angularAcceleration = 0; + + if (cursors.left.isDown) + { + // sprite.body.acceleration.x = -200; + sprite.body.angularVelocity = -300; + // sprite.body.angularAcceleration -= 200; + } + else if (cursors.right.isDown) + { + // sprite.body.acceleration.x = 200; + sprite.body.angularVelocity = 300; + // sprite.body.angularAcceleration += 200; + } + + if (cursors.up.isDown) + { + game.physics.velocityFromAngle(sprite.angle, 300, sprite.body.velocity); + } + else + { + // game.physics.velocityFromAngle(sprite.angle, sprite.body.velocity, sprite.body.velocity); + } + + /* + sprite.body.velocity.x = 0; + sprite.body.velocity.y = 0; + + sprite.angle = sprite.angle + 1; + + if (cursors.up.isDown) + { + sprite.body.velocity.y = -900; + } + else if (cursors.down.isDown) + { + sprite.body.velocity.y = 900; + } + + if (cursors.left.isDown) + { + sprite.body.velocity.x = -900; + // sprite.scale.x = -1; + } + else if (cursors.right.isDown) + { + sprite.body.velocity.x = 900; + // sprite.scale.x = 1; + } + */ + + +} + +function render() { + + // game.debug.renderSpriteBody(sprite); + // game.debug.renderSpriteBounds(sprite); + + // game.debug.renderText(sprite.x, 32, 32); + // game.debug.renderText(sprite.y, 32, 48); + + // game.debug.renderText(layer.scrollX, 32, 32); + // game.debug.renderText(layer.scrollY, 32, 48); + +} \ No newline at end of file diff --git a/examples/wip/tilemap.js b/examples/wip/tilemap.js index 4df1e197..fa6a0844 100644 --- a/examples/wip/tilemap.js +++ b/examples/wip/tilemap.js @@ -3,11 +3,11 @@ var game = new Phaser.Game(800, 600, Phaser.CANVAS, 'phaser-example', { preload: function preload() { - // game.load.tilemap('map', 'assets/maps/mario1.json', null, Phaser.Tilemap.TILED_JSON); - // game.load.tileset('marioTiles', 'assets/maps/mario1.png', 16, 16); + game.load.tilemap('map', 'assets/maps/mario1.json', null, Phaser.Tilemap.TILED_JSON); + game.load.tileset('tiles', 'assets/maps/mario1.png', 16, 16); - game.load.tilemap('map', 'assets/maps/newtest.json', null, Phaser.Tilemap.TILED_JSON); - game.load.tileset('tiles', 'assets/maps/ground_1x1.png', 32, 32); + // game.load.tilemap('map', 'assets/maps/newtest.json', null, Phaser.Tilemap.TILED_JSON); + // game.load.tileset('tiles', 'assets/maps/ground_1x1.png', 32, 32); // game.load.image('phaser', 'assets/sprites/phaser-ship.png'); // game.load.image('phaser', 'assets/sprites/mushroom2.png'); // game.load.image('phaser', 'assets/sprites/wabbit.png'); @@ -28,11 +28,19 @@ function create() { map = game.add.tilemap('map'); - // map.setCollisionByIndexRange(80, 97); // mario - map.setCollisionByIndex(1); + map.setCollisionByIndexRange(80, 97); // mario + map.setCollisionByIndexRange(14, 18); // mario + + + + // map.setCollisionByIndex(1); // newtest + + // Phaser.TilemapLayer = function (game, x, y, renderWidth, renderHeight, tileset, tilemap, layer) { - layer = game.add.tilemapLayer(0, 0, 800, 600, null, map, 0); + // Need to get the x,y values working (adjust cameraOffset values) + layer = game.add.tilemapLayer(0, 0, 800, 600, 'tiles', map, 0); + layer.debug = true; // layer2 = game.add.tilemapLayer(0, 0, 400, 600, null, map, 0); // layer.cameraOffset.x = 400; @@ -75,8 +83,8 @@ function create() { function getIt() { - console.log('cam', game.camera.bounds); - console.log('w', game.world.bounds); + // console.log('cam', game.camera.bounds); + // console.log('w', game.world.bounds); // console.log(layer.getTiles(sprite.body.x, sprite.body.y, sprite.body.width, sprite.body.height, true, true)); } diff --git a/src/gameobjects/GameObjectFactory.js b/src/gameobjects/GameObjectFactory.js index f3cf7925..23b46980 100644 --- a/src/gameobjects/GameObjectFactory.js +++ b/src/gameobjects/GameObjectFactory.js @@ -262,13 +262,16 @@ Phaser.GameObjectFactory.prototype = { }, /** - * Creates a new Tilemap Layer object. + * Creates a new Tilemap Layer object. By default TilemapLayers are fixed to the camera. * * @method Phaser.GameObjectFactory#tilemapLayer * @param {number} x - X position of the new tilemapLayer. * @param {number} y - Y position of the new tilemapLayer. * @param {number} width - the width of the tilemapLayer. * @param {number} height - the height of the tilemapLayer. + * @param {Phaser.Tileset|string} tileset - The tile set used for rendering. + * @param {Phaser.Tilemap} tilemap - The tilemap to which this layer belongs. + * @param {number|string} [layer=0] - The layer within the tilemap this TilemapLayer represents. * @param {Phaser.Group} [group] - Optional Group to add the object to. If not specified it will be added to the World group. * @return {Phaser.TilemapLayer} The newly created tilemaplayer object. */ diff --git a/src/gameobjects/Text.js b/src/gameobjects/Text.js index f85a7006..a6239a3f 100644 --- a/src/gameobjects/Text.js +++ b/src/gameobjects/Text.js @@ -98,7 +98,7 @@ Phaser.Text = function (game, x, y, text, style) { this.fixedToCamera = false; /** - * @property {Phaser.Point} cameraOffset - If this Sprite is fixed to the camera then use this Point to specify how far away from the Camera x/y it's rendered. + * @property {Phaser.Point} cameraOffset - If this object is fixed to the camera then use this Point to specify how far away from the Camera x/y it's rendered. */ this.cameraOffset = new Phaser.Point(); diff --git a/src/physics/arcade/ArcadePhysics.js b/src/physics/arcade/ArcadePhysics.js index 7c21b646..b5f7827f 100644 --- a/src/physics/arcade/ArcadePhysics.js +++ b/src/physics/arcade/ArcadePhysics.js @@ -855,8 +855,8 @@ Phaser.Physics.Arcade.prototype = { body2.x += this._overlap; body2.velocity.x = this._velocity1 - this._velocity2 * body2.bounce.x; } - body1.updateHulls(); - body2.updateHulls(); + // body1.updateHulls(); + // body2.updateHulls(); return true; } @@ -977,8 +977,8 @@ Phaser.Physics.Arcade.prototype = { body2.x += body1.x - body1.preX; } } - body1.updateHulls(); - body2.updateHulls(); + // body1.updateHulls(); + // body2.updateHulls(); return true; } @@ -1024,7 +1024,7 @@ Phaser.Physics.Arcade.prototype = { if (localOverlapX >= body.deltaX()) { - console.log('m left overlapX', localOverlapX, body.deltaX()); + // console.log('m left overlapX', localOverlapX, body.deltaX()); // use touching instead of blocked? body.blocked.left = true; body.touching.left = true; @@ -1039,7 +1039,7 @@ Phaser.Physics.Arcade.prototype = { // Distance check if (localOverlapX <= body.deltaX()) { - console.log('m right overlapX', localOverlapX, body.deltaX()); + // console.log('m right overlapX', localOverlapX, body.deltaX()); body.blocked.right = true; body.touching.right = true; body.touching.none = false; @@ -1054,7 +1054,7 @@ Phaser.Physics.Arcade.prototype = { // Distance check if (localOverlapY >= body.deltaY()) { - console.log('m up overlapY', localOverlapY, body.deltaY()); + // console.log('m up overlapY', localOverlapY, body.deltaY()); body.blocked.up = true; body.touching.up = true; body.touching.none = false; @@ -1067,7 +1067,7 @@ Phaser.Physics.Arcade.prototype = { if (localOverlapY <= body.deltaY()) { - console.log('m down overlapY', localOverlapY, body.deltaY()); + // console.log('m down overlapY', localOverlapY, body.deltaY()); body.blocked.down = true; body.touching.down = true; body.touching.none = false; @@ -1163,7 +1163,7 @@ Phaser.Physics.Arcade.prototype = { if (body.overlapX >= body.deltaX()) { - console.log('left overlapX', body.overlapX, body.deltaX()); + // console.log('left overlapX', body.overlapX, body.deltaX()); // use touching instead of blocked? body.blocked.left = true; body.touching.left = true; @@ -1178,7 +1178,7 @@ Phaser.Physics.Arcade.prototype = { // Distance check if (body.overlapX <= body.deltaX()) { - console.log('right overlapX', body.overlapX, body.deltaX()); + // console.log('right overlapX', body.overlapX, body.deltaX()); body.blocked.right = true; body.touching.right = true; body.touching.none = false; @@ -1193,7 +1193,7 @@ Phaser.Physics.Arcade.prototype = { // Distance check if (body.overlapY >= body.deltaY()) { - console.log('up overlapY', body.overlapY, body.deltaY()); + // console.log('up overlapY', body.overlapY, body.deltaY()); body.blocked.up = true; body.touching.up = true; body.touching.none = false; @@ -1206,7 +1206,7 @@ Phaser.Physics.Arcade.prototype = { if (body.overlapY <= body.deltaY()) { - console.log('down overlapY', body.overlapY, body.deltaY()); + // console.log('down overlapY', body.overlapY, body.deltaY()); body.blocked.down = true; body.touching.down = true; body.touching.none = false; diff --git a/src/system/Device.js b/src/system/Device.js index 12743f9e..f733b543 100644 --- a/src/system/Device.js +++ b/src/system/Device.js @@ -224,6 +224,12 @@ Phaser.Device = function () { */ this.webApp = false; + /** + * @property {boolean} silk - Set to true if running in the Silk browser (as used on the Amazon Kindle) + * @default + */ + this.silk = false; + // Audio /** @@ -328,21 +334,33 @@ Phaser.Device.prototype = { var ua = navigator.userAgent; - if (/Android/.test(ua)) { + if (/Android/.test(ua)) + { this.android = true; - } else if (/CrOS/.test(ua)) { + } + else if (/CrOS/.test(ua)) + { this.chromeOS = true; - } else if (/iP[ao]d|iPhone/i.test(ua)) { + } + else if (/iP[ao]d|iPhone/i.test(ua)) + { this.iOS = true; - } else if (/Linux/.test(ua)) { + } + else if (/Linux/.test(ua)) + { this.linux = true; - } else if (/Mac OS/.test(ua)) { + } + else if (/Mac OS/.test(ua)) + { this.macOS = true; - } else if (/Windows/.test(ua)) { + } + else if (/Windows/.test(ua)) + { this.windows = true; } - if (this.windows || this.macOS || this.linux) { + if (this.windows || this.macOS || (this.linux && this.silk === false)) + { this.desktop = true; } @@ -378,11 +396,13 @@ Phaser.Device.prototype = { this.worker = !!window['Worker']; - if ('ontouchstart' in document.documentElement || (window.navigator.maxTouchPoints && window.navigator.maxTouchPoints > 1)) { + if ('ontouchstart' in document.documentElement || (window.navigator.maxTouchPoints && window.navigator.maxTouchPoints > 1)) + { this.touch = true; } - if (window.navigator.msPointerEnabled || window.navigator.pointerEnabled) { + if (window.navigator.msPointerEnabled || window.navigator.pointerEnabled) + { this.mspointer = true; } @@ -399,37 +419,62 @@ Phaser.Device.prototype = { var ua = navigator.userAgent; - if (/Arora/.test(ua)) { + if (/Arora/.test(ua)) + { this.arora = true; - } else if (/Chrome/.test(ua)) { + } + else if (/Chrome/.test(ua)) + { this.chrome = true; - } else if (/Epiphany/.test(ua)) { + } + else if (/Epiphany/.test(ua)) + { this.epiphany = true; - } else if (/Firefox/.test(ua)) { + } + else if (/Firefox/.test(ua)) + { this.firefox = true; - } else if (/Mobile Safari/.test(ua)) { + } + else if (/Mobile Safari/.test(ua)) + { this.mobileSafari = true; - } else if (/MSIE (\d+\.\d+);/.test(ua)) { + } + else if (/MSIE (\d+\.\d+);/.test(ua)) + { this.ie = true; this.ieVersion = parseInt(RegExp.$1, 10); - } else if (/Midori/.test(ua)) { + } + else if (/Midori/.test(ua)) + { this.midori = true; - } else if (/Opera/.test(ua)) { + } + else if (/Opera/.test(ua)) + { this.opera = true; - } else if (/Safari/.test(ua)) { + } + else if (/Safari/.test(ua)) + { this.safari = true; - } else if (/Trident\/(\d+\.\d+);/.test(ua)) { + } + else if (/Silk/.test(ua)) + { + this.silk = true; + } + else if (/Trident\/(\d+\.\d+);/.test(ua)) + { this.ie = true; this.trident = true; this.tridentVersion = parseInt(RegExp.$1, 10); } // WebApp mode in iOS - if (navigator['standalone']) { + if (navigator['standalone']) + { this.webApp = true; } - if (navigator['isCocoonJS']) { + if (navigator['isCocoonJS']) + { this.cocoonJS = true; } @@ -534,8 +579,10 @@ Phaser.Device.prototype = { // Add it to the body to get the computed style. document.body.insertBefore(el, null); - for (var t in transforms) { - if (el.style[t] !== undefined) { + for (var t in transforms) + { + if (el.style[t] !== undefined) + { el.style[t] = "translate3d(1px,1px,1px)"; has3d = window.getComputedStyle(el).getPropertyValue(transforms[t]); } diff --git a/src/tilemap/Tilemap.js b/src/tilemap/Tilemap.js index 1078fe14..080e43bc 100644 --- a/src/tilemap/Tilemap.js +++ b/src/tilemap/Tilemap.js @@ -122,14 +122,38 @@ Phaser.Tilemap.prototype = { }, - createTilemapLayer: function (x, y, renderWidth, renderHeight, tileset, layer) { + /** + * Sets collision values on a range of tiles in the set. + * + * @method Phaser.Tileset#createTilemapLayer + * @param {number} x - X position of the new tilemapLayer. + * @param {number} y - Y position of the new tilemapLayer. + * @param {number} width - the width of the tilemapLayer. + * @param {number} height - the height of the tilemapLayer. + * @param {Phaser.Tileset|string} tileset - The tile set used for rendering. + * @param {number|string} [layer=0] - The layer within the tilemap this TilemapLayer represents. + * @param {Phaser.Group} [group] - Optional Group to add the object to. If not specified it will be added to the World group. + */ + createTilemapLayer: function (x, y, renderWidth, renderHeight, tileset, layer, group) { - return this.game.world.add(new Phaser.TilemapLayer(this.game, x, y, renderWidth, renderHeight, tileset, this, layer)); + if (typeof group === 'undefined') { group = this.game.world; } + + return group.add(new Phaser.TilemapLayer(this.game, x, y, renderWidth, renderHeight, tileset, this, layer)); }, + /** + * Sets collision values on a range of tiles in the set. + * + * @method Phaser.Tileset#setCollisionByIndexRange + * @param {number} start - The first index of the tile on the layer. + * @param {number} stop - The last index of the tile on the layer. + * @param {number} layer - The layer to operate on. + */ setCollisionByIndexRange: function (start, stop, layer) { + if (typeof layer === "undefined") { layer = this.currentLayer; } + if (start > stop) { return; @@ -137,21 +161,26 @@ Phaser.Tilemap.prototype = { for (var i = start; i <= stop; i++) { - this.setCollisionByIndex(i, layer); + this.setCollisionByIndex(i, layer, false); } + // Now re-calculate interesting faces + this.calculateFaces(layer); + }, /** * Sets collision values on a tile in the set. * - * @method Phaser.Tileset#setCollision + * @method Phaser.Tileset#setCollisionByIndex * @param {number} index - The index of the tile on the layer. * @param {number} layer - The layer to operate on. + * @param {boolean} [recalculate=true] - Recalculates the tile faces after the update. */ - setCollisionByIndex: function (index, layer) { + setCollisionByIndex: function (index, layer, recalculate) { if (typeof layer === "undefined") { layer = this.currentLayer; } + if (typeof recalculate === "undefined") { recalculate = true; } for (var y = 0; y < this.layers[layer].height ; y++) { @@ -170,14 +199,20 @@ Phaser.Tilemap.prototype = { } } - // Sets all tiles matching the given index to collide on the given faces - // Recalculates the collision map - - // Now re-calculate interesting faces - this.calculateFaces(layer); + if (recalculate) + { + // Now re-calculate interesting faces + this.calculateFaces(layer); + } }, + /** + * Internal function. + * + * @method Phaser.Tileset#calculateFaces + * @param {number} layer - The layer to operate on. + */ calculateFaces: function (layer) { var above = null; @@ -185,9 +220,9 @@ Phaser.Tilemap.prototype = { var left = null; var right = null; - // console.log(this.layers[layer].width, 'x', this.layers[layer].height); + // console.log(this.layers[layer].width, 'x', this.layers[layer].height); - for (var y = 0; y < this.layers[layer].height ; y++) + for (var y = 0; y < this.layers[layer].height; y++) { for (var x = 0; x < this.layers[layer].width; x++) { @@ -229,6 +264,14 @@ Phaser.Tilemap.prototype = { }, + /** + * Internal function. + * + * @method Phaser.Tileset#getTileAbove + * @param {number} layer - The layer to operate on. + * @param {number} x - X. + * @param {number} y - Y. + */ getTileAbove: function (layer, x, y) { if (y > 0) @@ -240,6 +283,14 @@ Phaser.Tilemap.prototype = { }, + /** + * Internal function. + * + * @method Phaser.Tileset#getTileBelow + * @param {number} layer - The layer to operate on. + * @param {number} x - X. + * @param {number} y - Y. + */ getTileBelow: function (layer, x, y) { if (y < this.layers[layer].height - 1) @@ -251,6 +302,14 @@ Phaser.Tilemap.prototype = { }, + /** + * Internal function. + * + * @method Phaser.Tileset#getTileLeft + * @param {number} layer - The layer to operate on. + * @param {number} x - X. + * @param {number} y - Y. + */ getTileLeft: function (layer, x, y) { if (x > 0) @@ -262,6 +321,14 @@ Phaser.Tilemap.prototype = { }, + /** + * Internal function. + * + * @method Phaser.Tileset#getTileRight + * @param {number} layer - The layer to operate on. + * @param {number} x - X. + * @param {number} y - Y. + */ getTileRight: function (layer, x, y) { if (x < this.layers[layer].width - 1) @@ -273,35 +340,6 @@ Phaser.Tilemap.prototype = { }, - /** - * Internal function that calculates the tile indexes for the map data. - * - * @method Phaser.Tilemap#calculateIndexes - */ - calculateIndexes: function () { - - /* - for (var layer = 0; layer < this.layers.length; layer++) - { - this.layers[layer].indexes = []; - - for (var y = 0; y < this.layers[layer].height ; y++) - { - for (var x = 0; x < this.layers[layer].width; x++) - { - var idx = this.layers[layer].data[y][x]; - - if (this.layers[layer].indexes.indexOf(idx) === -1) - { - this.layers[layer].indexes.push(idx); - } - } - } - } - */ - - }, - /** * Sets the current layer to the given index. * diff --git a/src/tilemap/TilemapLayer.js b/src/tilemap/TilemapLayer.js index 28da86e7..041f9cc2 100644 --- a/src/tilemap/TilemapLayer.js +++ b/src/tilemap/TilemapLayer.js @@ -12,8 +12,8 @@ * @param {Phaser.Game} game - Game reference to the currently running game. * @param {number} x - The x coordinate of this layer. * @param {number} y - The y coordinate of this layer. -* @param {number} renderWidth - Width of the layer. -* @param {number} renderHeight - Height of the layer. +* @param {number} renderWidth - Width of the renderable area of the layer. +* @param {number} renderHeight - Height of the renderable area of the layer. * @param {Phaser.Tileset|string} tileset - The tile set used for rendering. * @param {Phaser.Tilemap} tilemap - The tilemap to which this layer belongs. * @param {number|string} [layer=0] - The layer within the tilemap this TilemapLayer represents. @@ -26,7 +26,7 @@ Phaser.TilemapLayer = function (game, x, y, renderWidth, renderHeight, tileset, this.game = game; /** - * @property {HTMLCanvasElement} canvas - The canvas to which this BitmapData draws. + * @property {HTMLCanvasElement} canvas - The canvas to which this TilemapLayer draws. */ this.canvas = Phaser.Canvas.create(renderWidth, renderHeight); @@ -59,12 +59,17 @@ Phaser.TilemapLayer = function (game, x, y, renderWidth, renderHeight, tileset, this.type = Phaser.TILEMAPLAYER; /** - * A layer that is fixed to the camera ignores the position of any ancestors in the display list and uses its x/y coordinates as offsets from the top left of the camera. - * @property {boolean} fixedToCamera - Fixes this layer to the Camera. + * An object that is fixed to the camera ignores the position of any ancestors in the display list and uses its x/y coordinates as offsets from the top left of the camera. + * @property {boolean} fixedToCamera - Fixes this object to the Camera. * @default */ this.fixedToCamera = true; + /** + * @property {Phaser.Point} cameraOffset - If this object is fixed to the camera then use this Point to specify how far away from the Camera x/y it's rendered. + */ + this.cameraOffset = new Phaser.Point(x, y); + /** * @property {Phaser.Tileset} tileset - The tile set used for rendering. */ @@ -90,6 +95,12 @@ Phaser.TilemapLayer = function (game, x, y, renderWidth, renderHeight, tileset, */ this.tileSpacing = 0; + /** + * @property {boolean} debug - If set to true the collideable tile edges path will be rendered. + * @default + */ + this.debug = false; + /** * @property {number} widthInPixels - Do NOT recommend changing after the map is loaded! * @readonly @@ -505,17 +516,108 @@ Phaser.TilemapLayer.prototype.getTileXY = function (x, y, point) { } /** -* Get the tiles within the given area. +* Get all tiles that exist within the given area, defined by the top-left corner, width and height. Values given are in pixels, not tiles. * @method Phaser.TilemapLayer#getTiles * @memberof Phaser.TilemapLayer -* @param {number} x - X position of the top left of the area to copy (given in tiles, not pixels) -* @param {number} y - Y position of the top left of the area to copy (given in tiles, not pixels) -* @param {number} width - The width of the area to copy (given in tiles, not pixels) -* @param {number} height - The height of the area to copy (given in tiles, not pixels) +* @param {number} x - X position of the top left corner. +* @param {number} y - Y position of the top left corner. +* @param {number} width - Width of the area to get. +* @param {number} height - Height of the area to get. * @param {boolean} [collides=false] - If true only return tiles that collide on one or more faces. * @return {array} Array with tiles informations (each contains x, y, and the tile). */ -Phaser.TilemapLayer.prototype.getTiles = function (x, y, width, height, collides, debug) { +Phaser.TilemapLayer.prototype.getTiles = function (x, y, width, height, collides) { + + if (this.tilemap === null) + { + return; + } + + // Should we only get tiles that have at least one of their collision flags set? (true = yes, false = no just get them all) + if (typeof collides === 'undefined') { collides = false; } + + // adjust the x,y coordinates for scrollFactor + x = this._fixX(x); + y = this._fixY(y); + + if (width > this.widthInPixels) + { + width = this.widthInPixels; + } + + if (height > this.heightInPixels) + { + height = this.heightInPixels; + } + + var tileWidth = this.tileWidth * this.scale.x; + var tileHeight = this.tileHeight * this.scale.y; + + // Convert the pixel values into tile coordinates + this._tx = this.game.math.snapToFloor(x, tileWidth) / tileWidth; + this._ty = this.game.math.snapToFloor(y, tileHeight) / tileHeight; + this._tw = (this.game.math.snapToCeil(width, tileWidth) + tileWidth) / tileWidth; + this._th = (this.game.math.snapToCeil(height, tileHeight) + tileHeight) / tileHeight; + + // This should apply the layer x/y here + this._results.length = 0; + + // var _index = 0; + var _tile = null; + // var sx = 0; + // var sy = 0; + + for (var wy = this._ty; wy < this._ty + this._th; wy++) + { + for (var wx = this._tx; wx < this._tx + this._tw; wx++) + { + if (this.layer.data[wy] && this.layer.data[wy][wx]) + { + _tile = this.layer.data[wy][wx]; + + if (_tile) + { + // sx = this.tileWidth * this.scale.x; + // sy = this.tileHeight * this.scale.y; + + if (collides === false || (collides && _tile.collides)) + { + // convert tile coordinates back to camera space for return + var _wx = this._unfixX(wx * tileWidth) / this.tileWidth; + var _wy = this._unfixY(wy * tileHeight) / this.tileHeight; + + this._results.push({ + x: _wx * tileWidth, + y: _wy * tileHeight, + right: (_wx * tileWidth) + tileWidth, + bottom: (_wy * tileHeight) + tileHeight, + tile: _tile + }); + } + + } + + } + } + } + + return this._results; + +} + +/** +* Get all tiles that exist within the given area, defined by the top-left corner, width and height. Values given are in pixels, not tiles. +* This function also draws to the context all of the debug areas. +* @method Phaser.TilemapLayer#debugGetTiles +* @memberof Phaser.TilemapLayer +* @param {number} x - X position of the top left corner. +* @param {number} y - Y position of the top left corner. +* @param {number} width - Width of the area to get. +* @param {number} height - Height of the area to get. +* @param {boolean} [collides=false] - If true only return tiles that collide on one or more faces. +* @return {array} Array with tiles informations (each contains x, y, and the tile). +*/ +Phaser.TilemapLayer.prototype.debugGetTiles = function (x, y, width, height, collides) { if (this.tilemap === null) { @@ -616,7 +718,6 @@ Phaser.TilemapLayer.prototype.getTiles = function (x, y, width, height, collides this.context.fillRect(_tile.x * this.tileWidth, _tile.y * this.tileHeight, this.tileWidth, this.tileHeight); } - // this.context.strokeRect(_tile.x * this.tileWidth, _tile.y * this.tileHeight, this.tileWidth, this.tileHeight); // convert tile coordinates back to camera space for return @@ -674,7 +775,7 @@ Phaser.TilemapLayer.prototype.updateMax = function () { this.dirty = true; - console.log('updateMax', this._maxX, this._maxY, 'px', this.widthInPixels, this.heightInPixels, 'rwh', this.width, this.height); + // console.log('updateMax', this._maxX, this._maxY, 'px', this.widthInPixels, this.heightInPixels, 'rwh', this.width, this.height); } @@ -711,8 +812,12 @@ Phaser.TilemapLayer.prototype.render = function () { this._ty = this._dy; this.context.clearRect(0, 0, this.canvas.width, this.canvas.height); - this.context.fillStyle = 'rgba(0,255,0,0.3)'; - this.context.strokeStyle = 'rgba(0,255,0,0.9)'; + + if (this.debug) + { + this.context.fillStyle = 'rgba(0,255,0,0.3)'; + this.context.strokeStyle = 'rgba(0,255,0,0.9)'; + } for (var y = this._startY, lenY = this._startY + this._maxY; y < lenY; y++) { @@ -722,59 +827,58 @@ Phaser.TilemapLayer.prototype.render = function () { { var tile = this._column[x]; - // var tile = this.tileset.tiles[this._column[x] - 1]; - - // if (tile && this.tileset) - // { - // this.context.drawImage( - // this.tileset.image, - // tile.x, - // tile.y, - // this.tileWidth, - // this.tileHeight, - // Math.floor(this._tx), - // Math.floor(this._ty), - // this.tileWidth, - // this.tileHeight - // ); - // } - - if (tile && (tile.faceTop || tile.faceBottom || tile.faceLeft || tile.faceRight)) + if (tile && this.tileset) { - this._tx = Math.floor(this._tx); + this.context.drawImage( + this.tileset.image, + this.tileset.getTileX(tile.index), + this.tileset.getTileY(tile.index), + this.tileWidth, + this.tileHeight, + Math.floor(this._tx), + Math.floor(this._ty), + this.tileWidth, + this.tileHeight + ); + } - this.context.fillRect(this._tx, this._ty, this.tileWidth, this.tileHeight); - - this.context.beginPath(); - - if (tile.faceTop) + if (this.debug) + { + if (tile && (tile.faceTop || tile.faceBottom || tile.faceLeft || tile.faceRight)) { - this.context.moveTo(this._tx, this._ty); - this.context.lineTo(this._tx + this.tileWidth, this._ty); + this._tx = Math.floor(this._tx); + + // this.context.fillRect(this._tx, this._ty, this.tileWidth, this.tileHeight); + + this.context.beginPath(); + + if (tile.faceTop) + { + this.context.moveTo(this._tx, this._ty); + this.context.lineTo(this._tx + this.tileWidth, this._ty); + } + + if (tile.faceBottom) + { + this.context.moveTo(this._tx, this._ty + this.tileHeight); + this.context.lineTo(this._tx + this.tileWidth, this._ty + this.tileHeight); + } + + if (tile.faceLeft) + { + this.context.moveTo(this._tx, this._ty); + this.context.lineTo(this._tx, this._ty + this.tileHeight); + } + + if (tile.faceRight) + { + this.context.moveTo(this._tx + this.tileWidth, this._ty); + this.context.lineTo(this._tx + this.tileWidth, this._ty + this.tileHeight); + } + + this.context.stroke(); + // this.context.strokeRect(this._tx, this._ty, this.tileWidth, this.tileHeight); } - - if (tile.faceBottom) - { - this.context.moveTo(this._tx, this._ty + this.tileHeight); - this.context.lineTo(this._tx + this.tileWidth, this._ty + this.tileHeight); - } - - if (tile.faceLeft) - { - this.context.moveTo(this._tx, this._ty); - this.context.lineTo(this._tx, this._ty + this.tileHeight); - } - - if (tile.faceRight) - { - this.context.moveTo(this._tx + this.tileWidth, this._ty); - this.context.lineTo(this._tx + this.tileWidth, this._ty + this.tileHeight); - } - - // this.context.closePath(); - this.context.stroke(); - - // this.context.strokeRect(this._tx, this._ty, this.tileWidth, this.tileHeight); } this._tx += this.tileWidth; diff --git a/src/tilemap/TilemapParser.js b/src/tilemap/TilemapParser.js index 4e19aefd..c989b3d2 100644 --- a/src/tilemap/TilemapParser.js +++ b/src/tilemap/TilemapParser.js @@ -63,26 +63,11 @@ Phaser.TilemapParser = { return null; } - // Let's create some tiles - var x = tileMargin; - var y = tileMargin; + //Phaser.Tileset = function (image, key, total, tileWidth, tileHeight, firstgid, tileMargin, tileSpacing) { + return new Phaser.Tileset(img, key, total, tileWidth, tileHeight, 1, tileMargin, tileSpacing); - var tileset = new Phaser.Tileset(img, key, tileWidth, tileHeight, tileMargin, tileSpacing); - - for (var i = 0; i < total; i++) - { - tileset.addTile(new Phaser.Tile(tileset, i, x, y, tileWidth, tileHeight)); - - x += tileWidth + tileSpacing; - - if (x === width) - { - x = tileMargin; - y += tileHeight + tileSpacing; - } - } - - return tileset; + // tileset.build(); + // return tileset; }, diff --git a/src/tilemap/Tileset.js b/src/tilemap/Tileset.js index 1f25a15d..fa59c1b9 100644 --- a/src/tilemap/Tileset.js +++ b/src/tilemap/Tileset.js @@ -11,13 +11,16 @@ * @constructor * @param {Image} image - The Image object from the Cache. * @param {string} key - The key of the tileset in the cache. +* @param {number} total - The total number of tiles in the tilesheet. * @param {number} tileWidth - The width of the tile in pixels. * @param {number} tileHeight - The height of the tile in pixels. -* @param {number} [tileMargin] - The margin around the tiles in the sheet. -* @param {number} [tileSpacing] - The spacing between the tiles in the sheet. +* @param {number} [firstgid=0] - The first index number (as specified by Tiled, otherwise set to zero) +* @param {number} [tileMargin=0] - The margin around the tiles in the sheet. +* @param {number} [tileSpacing=0] - The spacing between the tiles in the sheet. */ -Phaser.Tileset = function (image, key, tileWidth, tileHeight, tileMargin, tileSpacing) { +Phaser.Tileset = function (image, key, total, tileWidth, tileHeight, firstgid, tileMargin, tileSpacing) { + if (typeof firstgid === "undefined") { firstgid = 0; } if (typeof tileMargin === "undefined") { tileMargin = 0; } if (typeof tileSpacing === "undefined") { tileSpacing = 0; } @@ -31,6 +34,16 @@ Phaser.Tileset = function (image, key, tileWidth, tileHeight, tileMargin, tileSp */ this.image = image; + /** + * @property {number} total - The total number of tiles in the tilesheet. + */ + this.total = total; + + /** + * @property {number} firstgid - The total number of tiles in the tilesheet. + */ + this.firstgid = firstgid; + /** * @property {number} tileWidth - The width of a tile in pixels. */ @@ -44,33 +57,49 @@ Phaser.Tileset = function (image, key, tileWidth, tileHeight, tileMargin, tileSp /** * @property {number} tileMargin - The margin around the tiles in the sheet. */ - this.margin = tileMargin; + this.tileMargin = tileMargin; /** * @property {number} tileSpacing - The margin around the tiles in the sheet. */ - this.spacing = tileSpacing; + this.tileSpacing = tileSpacing; /** - * @property {array} tiles - An array of the tile collision data. + * @property {array} tiles - An array of the tile data. */ this.tiles = []; + this.build(); + } Phaser.Tileset.prototype = { /** - * Adds a Tile into this set. + * Builds the tile data * - * @method Phaser.Tileset#addTile - * @param {Phaser.Tile} tile - The tile to add to this set. + * @method Phaser.Tileset#build */ - addTile: function (tile) { + build: function () { - this.tiles.push(tile); + var x = this.tileMargin; + var y = this.tileMargin; - return tile; + for (var i = this.firstgid; i < this.firstgid + this.total; i++) + { + // Can add extra properties here as needed + this.tiles[i] = [x, y]; + + x += this.tileWidth + this.tileSpacing; + + if (x === this.image.width) + { + x = this.tileMargin; + y += this.tileHeight + this.tileSpacing; + } + } + + // console.table(this.tiles); }, @@ -79,16 +108,37 @@ Phaser.Tileset.prototype = { * * @method Phaser.Tileset#getTile * @param {number} index - The index of the tile within the set. - * @return {Phaser.Tile} The tile. + * @return {object} The tile object. */ getTile: function (index) { - if (this.tiles[index]) - { - return this.tiles[index]; - } + return this.tiles[index]; - return null; + }, + + /** + * Gets a Tile from this set. + * + * @method Phaser.Tileset#getTileX + * @param {number} index - The index of the tile within the set. + * @return {object} The tile object. + */ + getTileX: function (index) { + + return this.tiles[index][0]; + + }, + + /** + * Gets a Tile from this set. + * + * @method Phaser.Tileset#getTileY + * @param {number} index - The index of the tile within the set. + * @return {object} The tile object. + */ + getTileY: function (index) { + + return this.tiles[index][1]; }, @@ -112,7 +162,6 @@ Phaser.Tileset.prototype = { * @method Phaser.Tileset#canCollide * @param {number} index - The index of the tile within the set. * @return {boolean} True or false depending on the tile collision or null if no tile was found at the given index. - */ canCollide: function (index) { if (this.tiles[index]) @@ -123,6 +172,7 @@ Phaser.Tileset.prototype = { return null; }, + */ /** * Checks if the tile at the given index exists. @@ -147,7 +197,6 @@ Phaser.Tileset.prototype = { * @param {boolean} right - Should the tile collide on the right? * @param {boolean} up - Should the tile collide on the top? * @param {boolean} down - Should the tile collide on the bottom? - */ setCollisionRange: function (start, stop, left, right, up, down) { if (this.tiles[start] && this.tiles[stop] && start < stop) @@ -159,6 +208,7 @@ Phaser.Tileset.prototype = { } }, + */ /** * Sets collision values on a tile in the set. @@ -169,7 +219,6 @@ Phaser.Tileset.prototype = { * @param {boolean} right - Should the tile collide on the right? * @param {boolean} up - Should the tile collide on the top? * @param {boolean} down - Should the tile collide on the bottom? - */ setCollision: function (index, left, right, up, down) { if (this.tiles[index]) @@ -178,6 +227,7 @@ Phaser.Tileset.prototype = { } } + */ } @@ -186,7 +236,7 @@ Phaser.Tileset.prototype = { * @property {number} total - The total number of tiles in this Tileset. * @readonly */ -Object.defineProperty(Phaser.Tileset.prototype, "total", { +Object.defineProperty(Phaser.Tileset.prototype, "XXXtotal", { get: function () { return this.tiles.length;