From 7b4e39da845f4787c88ca906ec1cc9e019a3cff1 Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Wed, 30 Apr 2025 16:45:17 -0400 Subject: [PATCH] v3.1.0: adjusted new region deco, 2nd version is not always SP floor --- .../main/assets/environment/tiles_halls.png | Bin 16119 -> 16223 bytes .../main/assets/environment/tiles_prison.png | Bin 24443 -> 24323 bytes .../assets/messages/levels/levels.properties | 2 ++ .../levels/CavesBossLevel.java | 4 +-- .../levels/CavesLevel.java | 4 +-- .../levels/CityBossLevel.java | 4 +-- .../levels/CityLevel.java | 6 ++-- .../levels/HallsBossLevel.java | 4 +-- .../levels/HallsLevel.java | 4 +-- .../levels/LastLevel.java | 4 +-- .../levels/LastShopLevel.java | 4 +-- .../levels/PrisonBossLevel.java | 4 +-- .../levels/PrisonLevel.java | 11 ++++-- .../levels/SewerLevel.java | 4 +-- .../shatteredpixeldungeon/levels/Terrain.java | 4 +-- .../levels/painters/HallsPainter.java | 2 ++ .../levels/rooms/standard/CirclePitRoom.java | 2 +- .../rooms/standard/CustomDecoBridgeRoom.java | 2 +- .../levels/rooms/standard/FissureRoom.java | 1 + .../levels/rooms/standard/HallwayRoom.java | 2 +- .../levels/rooms/standard/RingRoom.java | 2 +- .../levels/rooms/standard/StatuesRoom.java | 2 +- .../entrance/HallwayEntranceRoom.java | 2 +- .../rooms/standard/exit/HallwayExitRoom.java | 2 +- .../tiles/DungeonTerrainTilemap.java | 4 +-- .../tiles/DungeonTileSheet.java | 33 +++++++++++++----- .../tiles/DungeonWallsTilemap.java | 4 +-- 27 files changed, 72 insertions(+), 45 deletions(-) diff --git a/core/src/main/assets/environment/tiles_halls.png b/core/src/main/assets/environment/tiles_halls.png index cf4c5155f6b410133de0cb7747147470b0c5a046..49a9505e8d5407f3b99434410ff8d6de00329a8d 100644 GIT binary patch delta 13424 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

@ApS~n;^I%DD2(Hair)!Re81pHAL)^f<2m5`O z?pQ>~SNTRwyARL^&GIIp8u)=O(M5r5K25c!G{;Z{#p2hV<4u9PMZ{NsESy7LpWVK5 zSA^6^W`4`fj~1k#jm-F>h_;&QxU5f8|3hJBVW{SC;*8<_pqhfOkqdkP0+b}JMnN?h)V`Kj<8q6t{bU??=@4V+@O_ zqyB=ff3YvtN07Xpi>o|$va@roe`NdTE5gu*2!GOqhe5h>YGM5og{80_I$+vIl^e;q zWB@}KAI9;UB>S);&!7uIlA?@f2SbkO2_CrM*GB3+hs1qVZ#3U}yNgF4Vof{x&wUZq zgDv0naHHNEBaG2kWun8Uf|~vH8a@PCEOg!>4L|wR@+F0_Gpfi=(1c7_98*6n%WZ>c z0j^8WJe{S97OZNOBVi9eyI15Je~st6fci|)^z3P5!J>8?(^?CCQ&slPj-dL_EQx35OJ%t|T(lKfPHi`sy- zdOlWM0uLWhs2=i5tm+u+FMNv_%oDQ?tSWv$@wy{yv3-+W*p+m8#^*8so z`&s~!#~LXR^n`u13fx(flk;H;|KJYrNT-GRXhlvsY|CEm0hG?n7iZCC(-tj8pFY@I z?hQ*A3|$oXx|0AN56mi#@bNFmzqP1e8>>*viO;@YTj_!0N8fn=5O`571Iudm{{$J@ z7KP!SOC-HOX4qHnnhn)HIlV&mFmGwvsFpUO9D3XXd43m+-D(B+%hkpHns!V45C_ht z(w>LJO)U>|di_Z|9eTRl?9YSQ>{C6yrc9cG2={^SkIcb4^)^+0N#WVji`CMM7xs2L zFUyMEcWYDkybhIxNU6Krt)#(y6b@%+gF}WMs*HLEw7u*Qe2kAPNPquRtE6I8V%U3| zFhUdl91Lb+$TZud>rRAvYPT|s_4UaCpX>Y`ZGL<3&HA`M;zh@AewGi*hO7zc(G{8V zjqH3pMK|-L^xnBxi^$)aw)K9y0}`yz#OOw;FB~nf|4n>lV&eap7)r0};KtECG-=ia z59ZQ@L-k^#Be7qhF9h=P%;s_g-Vj-Qt`OKJe;20X7znB99R znmj6>z!`laVZ$q_QZGGqaNxq8R-eic%9*}amKHKGqsH}O_%DLF zH|RBt`z`IA1_|IGfRQyc*a2jjTDY74ceTCd$!nT5PU>3bDPKg3J;o?oM zoKl7bu3ND2Y5un6{4cHO(%zgP9|$3p(oL!TRvGZU_ELYapZoa8v_>uri;7+{h`2>x zKG7EtDebz`><@!86ep@3yHM9k5vDM=EsvVqhoj_$sTSzH0~=BbKw*Rt(_>!gQ`{4BWW$*p$Q zs*qpVtA1@GZJlh)pG|0c82>&^n2i>cbL`L?F@sMsP)9};5D~4k*T>m5S#SG#0$(kg zo_f<$pZ7d{U#af!{{TaI4srkh delta 13357 zcmYLvc|26#|NkAs*cnk|8^_EXlq`vV`n&M=4|{TVk{zDHNe>V<&4O z`@ZixGYs>a-tYJ4_q~7I$Ll`MInVQ2&v~8Kxf7U!ka!^~WX%`heg^Oa5#)?r)?$L* zw9Y#~X&3!^@ZQn}t@7t=d*ae_gbkJzJQw5GmasNPM+;6IvmHhbpwP;z4dG7^>mh&) zOVLE_;)Axb=B#+kbj*p@byN$v6w{2G=_c1wzZ4WK*m(VP^OZjVzGnSIs8DV35^#~q z3JjUn7d50qerv#(f^23OTv#)%#$!mkj`IU9{y2%oXg@#mFhA!dv^OCRd;gyu8gJ`(H3N@2RRlY(!L=iP22?5 zr#DQGf*}H|ZE;%-WHl56nokdNb|dY+-tu?^XP8byhe6QSsPn;*G*$$NXkAoLs5n#wR6iL`iuHClUH_LC^c=D^3 zb2AKcSU1hH$EY*@g~7|YZDE@ANIu{SW><9vwf7qXE5%tZHg=w|+QJGK?pkk#>6eNi z14oy^prO+jw+*K>w~G!@QEIEq{drcnj2O;+bFDLiv2LtxB$_3&J?pI&XE)(<2V7rg zOu3Y|t_L4)`AZX$`K=^q2;I$9om~8++M|7}>LG*D0sJIQ9>4mW`LRRFezjxQhU%=K$yc?^2^dSWF0YT@qw_2i*pZQ6Y=fw4PbrT#eqOLhs!t8A?9sLg5qGC%6QM}s=WFOG4qwU^Noi&{2rxtxuTW|?{B(~FeRV4{`V%lBj z#abr}hmenm1}I|Tl~dNkSG|xhz6ApBV*fASa$X39SE z�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 r-?zUlFjj^UqU*GmE!rGTAQw9r1En`LQz#hOIWg diff --git a/core/src/main/assets/environment/tiles_prison.png b/core/src/main/assets/environment/tiles_prison.png index 4ea44f0380b95a7b15b832daf159b24ef2eac85a..623537280ac18aa24915875f796b6dcc3c75eb99 100644 GIT binary patch delta 23643 zcmX_oc|4Tg8}^KS%aVN^OWCq3doxH>vZYA&ge1n2EyFXmB%(rgV=E<5Jslmb3z&x9`dX}{n#1zWdQIr+a{7aVIXP~k-Y}=mxc63jIo{32n1oLE!cy@|D zSF|U{w9J2L1u7?hMebZFe{7BYQnC<7NQ|pY+W&*29G$Aq!TJ{iDGX-=N;>xoFLJzx zM~cJsmbT1gf?t>));?q0$}NoaxV6+EAl#ht3wcz$vJ(4G8NH(uY8|#CgJ_i~=nhLz zF0eU%I`U@`E?MOM9{i)4=~HKSt4r>8h zldp_);~ooLJ~fA00gYOuy;FpB@bQ@xF~{3@(IS^biKir2HfrEHPbfr^#ExPIi#_PU zbbDLDa@F0q=k}a+O}FVM#^s?Jf}3bR&PqD<{7dB>E=OtOS+2FS8tku{Sb)4ahh}y2 zUxR$WE0vBDSGUt`2iTp(axJOvtKG9RkPU`K2~U-x_gL4h(JT0hg20R9c*rsFh{Ir+ zy<1=u)1GI6 zhpCq=V?14rf{TWE6*`w0n;uX0=!ypOB*nso;9BcEf0NV-d|Gf=X`i!=+eJIZ79qfn zICa6R=`EZP^(AE7onf8XA$`y^Y$5u3{Jt&&zX;>w7V(XXiO&!WBH@K=Hx4Mz9T@=! z2kgPu33wA;{$tuVs6!*KgI9b|82KbVso8IF^XG>IJ%|4RM*3u`vM#eYaMO(#624Sz z*)|D$6p68XxYuvm35rthcl0{~7OjlG?gx@O7~)5AguHDVEAWYK#Y6rZMg)nHZ;*bcp1QRWo}7w@F3$A*IhpT}FjFaowVd#Mnr2PM#6qvY)wz{_{I( zhJCLzfmJVOhJ`dj&atx9h;sLe1rb%QcuxyV^sLfS%QXk4PJ8}*Uz+*r7hK)qeIQ*0 z2bm+dW>cHKtldJ2`mwa0sZv&AR4>sgQ(e6D?J#ba(m}m!A?>m1EX`qfOaE3}o;Y$m zjF`l+7$Zf+w@>Mx3Z4Lrrb$Q2jc=2i@`Jl2N#Pg2?f;Pu)z?=451%E{T5?WuXZh|} zg1%0AO8XVA0DwMwS z@KH7s=Flu#tTGy0H?Pg;{(0zY(rN^alGRp*i+IE!%{$VS>J$LTAQWo)3_*>P_NpMBsIPEwk*BK^GBAv0xJT6p?-xS19(emY zs@%>&w{N}<#cl`KDEz5VPB|;v096MCM_OBqa^F+A6PDnacnqT&=Fsiay))yotT}7; ztGTViv!K#B7*DbC2XSH{OmFVCbu`$=%txz6&+Xa87F^q=FEW2g#*oPg?Dv zea)u+i$D(MrnGtxDVo3_8dn_X)f0MYe8o*vnO;dprFT!@jXiS)Y84sYM2rM`n+l15JNX(Fa-lS;tY$Poo;C22T33*I$({JOA}xyV0*tCMmtxXH z?L@h#kScz;FeUDzdB4*SibZe^B@UDh!^@X^4|YAfxext)x}Sb8z(UA@XqHb@0fj69 z2NFmrHgCMOX!Il#ye`>jnPHe;0*tHLfpk4)95+e6kT(Yq+c*U$Qi>?CRF_>EEmXCD) zcdGY367@G$Zp4Y~9i+Cp2qj#+dZ$8}(?h`mamwAcPZ-+ySGfAv5^;($SXb&iVx z#y}D*U*i^C$f0p;3F8YC2vq?ME;A~51u?h&$+KU)2_m?}k<>H)MQ1|)pgdT0BR?r| zfpIZIva$=e|2yUeL>nbVM5M}xvv+^HLfGI3dwh}KTVQdNpOAhIfRdlr%O&0R`4T-- zX^&bXa)l$&fqK+EISPK!QF})6?)oqD;EM=pmCJ@8>Q)<+fn(8HQ{{tMz2)1W|3;l! zPq*yk(E147{&5nT@n`V4G0)Toc{lzi?_7W0i{CRI=%t0o6=jb?@=62&KS~bBwAA) zS3feP3QRP7|NbRd>?1gYZd7RO-D;;MBt_D3IEy101h+2w*c?z%M$l=&z zV&9mVNUET9Qty!z>p;yFdV6A}ord-$ud=s(e`18xb=Gx7dWKNbGTXI3n?*SE6eNPT z302s2_u*auLO!;|_8+-;z><=5D{SX!vis~6uopS5xZIw75R^aeF)M zJ=>e4XT6h+uV(!8wad{0cSkzfO*SDo?r2CZ>?bhhY|hma)IYrp)(ow791_}14)7F| za~u*Dd^Z*w8s|S}^7JUvp(=mf3sP=!jc(NWVRMj9uPe=<7K}i&AymQex~~;w+mDF@ zCKm!!;Cn(*&*!TbhR0rnc?IBwisi28{f zNsq`LQiBXwe%@Shp^55j=qM)TMb1VtG{h%%XKPWe;Y>}2p4O**z3kx_5$r>$(c$=z zojltznF|$Lq%4)p5f44Y$V1F%;DzYp4=UQ1Lm?olFz342SlF1vrW=3yr`FY`%-Dj~ zc3mV#Z+(^Iw|5f{6pwE>rfc>L6%%_AcL_}mbX+&6uM0SMmv9+7+FNlBRViIDMm`~- zh&IuG9)Qx1=pdw1Bk+_jdkxXPDeH;*FrDVl3gblK%|QKmpzwfNyH?Zl zx8_^=pS|W7L(N~cHxeOJVjX)^;X%*;_6tm_*F6yU_&1zx4)Ee*WE}20THGGaPJsZ} z6vRo>0CvN__}Wmyp-~Gi(T8PNn<~DtJ5&TkJaL2;*Abcor9syhD;vL$>PN|d8u+88|o92o!2NAIuhwuvZ=`nI;i|qtX0M7b}MB$<%XyiK&LL|M#skZBA5=& zfr5FS8ptT5OBowuk*nN~vJrV`Jn_Qz#GR=|%+yaCR^A~&U&dC=)OBM$cJS6QERyn; zYTt)=D~aV8o{-A?|)_9 z+Y0g>nQgXusr~5MkgvIY{jD+T`Rz}`!u}LrwTphF+V8*12CV;TIY0gQ_sX}2@gxOz6f@Ldl)8F?AoINmc z9NLt+5f4bPV2^}QNm8)q$F^G8K;xxFN2W>yNRP{42VghQ9lC;?_^1`yZfRj*b*XHK zFxgxmb6AmB)BE$nm8){L_e5u}4N0uk5PNEF^&UB9;a)jtU0chR$nkbloScsJ`U(j{ z^6P7HY{Y04)N zt`R;bfvn42#dS1*=tk4ec-Ug6A5r~(y53xl8NJ_NP%`)Ao^Aa@EY8hy>VEB^HR0yH z2M%(n#>}6}OAN3)gMK}{TL;~lz&-LR?wmSE=0R^R>pYKU$d?|k!WW)(aHns$)3mJH z{kokTpO%N4Njik!GT*gNr63R!G6(dN+5)5&RVBHoJ)SyF->O+k=->e%h@5P&7cig5 za7VtibIHM~nL#TGjEIL0Y9B!yXOMHv;h3C`OTVgkZg4HhHTS6u0H5Sd`66?MeOm#d z+_|`V?vDLvyd&Ug9Ha3xFn4^Wq)R|RV9r-x=w9h>pV9Ty05;Lh0U z4Z=_>DTd<%9sKt=YOhu{5ZIS`iJv}QPCuc$3&h9bB2cfGBc)$YQAA%Ov#mifwEnIU z{(GjG8df}mST_Yk1M+h=l7ebqZg4GkY%Z>v`$bEskOcTQG*w68_n`;hq)JTgP6mJHVw(_zDZi>G+QM_bK$24a~b8D7u)KN^A-1BzD?XW^5; zez`X0T>~aCq*LAtJ$LX|Q%GV6AlCjTiKs83+s~$}!!xd`%l!@R`J5`SH?@Ja%_{oQ zX#VnNMQW~>X8_w@?6Uayu}>1PUGYi2x(+Z_degcZ`NaYnv?$ig?g2Ogo|uWLuTzyB%4P7+>w+)`f*k;ycJ${1$2n8H zf^Uz{)=^Ce@sDN4Q7>lA2+PN+uO(IwS9>0}He+DHKB9p;b9!YU0=hhVw64j_$q8_j z6O4ip!;bA^V;^VzQtKgNcf;s9&yJ6}+cBz0UheAmeouiCjAb6#$P`1bM}sHgcg?U+ z`sm10ZJG=a)O8<#q(CZ2cEC0zv27?FAT?o^qeS@=%t&Pjr(LtFl#vjlzh@xD6ul*CD7rAclp+*qP*5u=k0Na6Z>y@5tpMjIm>_t%w>)%39-UKqfki@c(9hq@0J#8x- zmBXqE%|EDOq=R`X&_R5)&Nio`N&=by?0Miy9A0n<)qN)`4VwefJ4(frr82ln$zNsR zt1hN0-`wKZB7}xwcDuMgzz)|YE9~D-qgiy zApwn4m5?jn4o);LEgKo`oN7)umUt=OC_AV5e%+}*hu%8{;<0Mf(k*=_B@Td*pD((c zEXv2&-E%+-v;Q`XcIj_7E1D{$5Kk;xd)~VpLE_;1v%{2|zMVFNj7JR_AK{a*WGv}e z)!d&hik?0|&9!@T>KE%68_gC7Du7!_MnCQzzG+U8{`~DgnVP`B95#^o!ON14TYn9! zt8`Hx!CpkYiu-;6e&xF6>OVLCfE#-1Rgp5U=5m2v>M)yEu_BkxjR%x=l5T3~x&bG?f@VUx;%!KDY$Y zZ-RyRR>17s$S?ZQr~cmQsO&7#v1MS%y6xH57JFFTmIg=1Dhw#5yT0uq^zgao_v5~` z)dV8FTm3LaE0X!zi(m#CXLDd8al>_prW@^XXAtg&xO-=N)?hsryr|wV7Lz*sBMMvQ z#j3|=r@iDz@wYbZ8I@nez$(c6@?T5I7Wl8@D9X=cTT&TmO96&}M#;N7<=U&xs}P_K zA+N&7lNZuk0TxrC$K%)D(`$^K3Zinr*>H`azy|Qsv%VBmiC=`-bzun27FBbYcb1=C zBzDyS$ac(_vs|fJ{D*oEbpL}ypsFeCFK2DOXC-_AKJT9Nuu+S<>vru9scT&y;}?SF z&{4L(tUZ+qP?dV{)Gf{qSe<2g8dUb3)&06D;j1hNz*`_Vte{>`giX$FTZY%or?><; z_>sKm28)P3XJy2zldBWt1mPbtSeJ%G7LS&x9AJEL=3H?T=LRs1coQWpse`ziXMmuK zyb@2^tk$U}DsDV@o#c`B;iDQf^49#+*ei${TN&A67LKuWvY};{?KkVm=WYlW<5~CC zx&kb^X%2?|Z|C3{94Y5=zN|Zb+)+%tdnU@={1%eyo1fS^gK{QR!=$)DOWu;l2#GKh z3AWcc%R)s>@uDQT#H?;Sb%rboNgr(2WFWX@_kMOLryw!%NNK4mt8i6luo;UbA13`)-9wYYRigQbCu0xOLBia-f@!6aeh-w%mr<4?jPk|$xj%xYUg#m-G&mI4kP9P*y zFBjV+>@k7N$JD-VOVOl>13~bUin6fM(hv468t0x#Bms`SLF;!hz1yN?c<5KZo^VvU zxyHkhN(RsEOjpx)f-yQ;Z`f7eXHcpBaTI7pKP*8E+ToY6j2(!E!jU0msArqcnP#jF zvdwR4JY1b2u;;@8@YOQK_Gi_B(%VIf6>#nyODSK0Xly+>a9(%GvBls#AlmMy2P-wl z^qs;Q1GaIRQryh|Nks;AF4u_UDy1GHnoix%7|vcER75%>Y6Sn&q!Uz`bzQ;kx}b4) z(oF31TCv37h7heqzv+6|#XxnbuxCTJ`^{p8-`?KBl7MYAZq>f!1%54t(1s$l8DWcC zC=sE<=gC#*3rs(RIAMD_M1TMoO-;W_Tkmj6NTT4}_7~WQP9kZuVffB{axGn2Usvu+ z&6*~C1&p0S+DpN;IQuKt!hTjgD&O<|gIFn^y`pK|(L!1eJ4wLe*3vS zv+y?)Xs#?Y_1t%KDX6EA4rFpwvg|LNklE9qfc) zGw!=)ohP%XcS(6;A6Y=W=ix_l_}@>L?^!oWk zk(D104qwPFB7RvPhI_oP-<}-UxghxDIP;oH(2;D$uaK(8ezsZB1W1do%>shlxB~3* zD)u)h_S{!m3|&_aL4PvFPB8QKQVU73vHB+7{NK7pJQ$>eJMu`Q9+IOkc9yB_GvS#D zOf3gL3{KhWZCiF zqaqYV!I#Q0;i6A_OYk3k8HN5a;`E*n3iTVyoRxJMjuDY*_PxQR=m>n&JUhPK$E^6e zi#Jv^8yCNF?I_{-L#f|Y)9*@UE`DO{8GmI}tzQMoV8{v1d<{OmA+>asu1$*Emt}n) z1V!xn(p{Yy<%;-r$PGMTg*1`n<9ce_%%GL{7*6fWgGoo%N~koxpYT5b4b%>%eV`p< zDFG>%z?GOmw7O6xkUt-dg)YgY?n3o?lr{>HbW!?I4K*-G@StaNsHB`SpD-zRmA`+r|o=78C z-p4{x=phK*y#|a!8qm@lPRwne)0z4$Kxp?T;@6 z4m6$2nE;yI^leYYr&@~bYnI8^XBqj^d1PO)orp3-|GEScs#O|1p@+eRz~K(Io`u8K zs?btUiJ*Jp7trUAr3Tw?~NJ zq#}-xzAqyKT7j19Y$#Pz{l{MHshZe*$){StcCMZ6Q+*?$wyL_JcI{C0Hvoy3dtG@< zf~e8@{DiuP%TzhcpKamD_3eXSa+TYV3gTY(^be0M77zIxG2xoAYYX?TUUMewqif4J zIS;2Bf(EL+W}ozbHc_c+aa>KFD1Siv4j?xUdOTNZF7L7s51Rklj)^Ag@#8i-R00P9 z2^H_1LKSD?Lw?wvMabIwSUU|v9HxchK*Q%bfq%#(JLQNVmRo}CO)b)?LT*uTIJU)) z3%i1SL2s6?{7+z}?=gtu6vXlJ1K}^f_DF5a|8AX^C5clPHrae%XrTMfupJm3lj1F3 zI;{|AD1p4B{*ZhcU;=ggJ$0g{{~(=87jHr3OuM8Az6)OBqt>Gt38$G7(szDmhU&a- zO6nj!*=_MXdOd6{g_1$G%-eV~iSAtl(fVQufO+-LW@NIws03i^uFXDI-F}@T7&RZ_ zdhdREG0}%0d5CE`t!rF9-L7#T>Wx`7G6${o$OE5MN%4uomb6a#6buDTks%XX$ciBw zwUqnZAVRh(fN{w9J5B?M=K=?|1L~@cOe77d&19*>v@J_1na?H}(k}Mol-sMql1?0= zt^KOxzsBysT8_0tN(<#%%ZJ6&X%j-!A~}Y*rwGWjP-a_F7KvMF*jd=wy)>}9S#CTD~PmW7HGIQ6WQHLzNkkwL9-QZHU<7)qc`iMNNDa2Astvq00-o@`)V7DeR zsjrK($FCr1f&*onrvEto=Rqi6#W*vb%Vc}{v=>&ebR+x zQ)!VG1o^o5>+=Fy0>q#^8~Pmn-p#72?QPtEFIF@5TE(ZTA9SC|43%Xhy@$PF?xIUV zwr4T;hk6n}QNm!<@JGmQCra<^Rw36G_5ND!10gAte`UH{4!6|OiOVd9&JF!47_js1 z#?!AbqNcywehz(@;o^c+>wsq5EVCA6)wPIQLGA&1sj*%)6_W;ozse-Z?r5t8#s5Ba zPZCL4D7#()`uSk!qYq&$P2O@Ds4JpjZjD}a3p4&kmHubGjLB)C;s5FHU(<L@@DU%?t`aTSXw&ENE|P`<-WTgaUAkYdSf3_O}&+Ma`k_^hW>r6Ikm!*G?~F| z4~q!ON#6OiEw!FnY-%fT9;E}tcOQM%#|~xxscFt2yOGayInt?|Y}v^u%CZr*t6}o~ z7x&?8$q<}-gAMQt;5_Y9fEw}eqP5pJWZy9J^rrN2zUMe13sNkk#>cWh;CE4rDY#-& z&4?B!h=}h*D`PQ(=^b0+WVv+MfczCnLEsQW9elJk=GL8;S_xwCGCccB-ne{ifS3cG zon*s>f%lyW+Y@SdMAJdf&tvjtDEz60#&<9~gk!oA^aW@MS?f5%J12z&7b8z&3Abn9 z#-P>J&d#~w>k_N=UXKs>Ev1mpAA+hO&e#}eK9y)7Vz#M3_Cg(DF3a=hfFpzyD%6wV>3^HMbh^su(Tf(eW6E6uQc3p;Np;euCFyBghJ zN&U_{zD`~PyWIfNL6@0QAM#T_@|7huLU4x!J0OwszfUg&Vd``viOA)iwT?Cidbzty4 z^=NIGHPgm0cMGvY>cok>x@=ABql6nATwnB3O$q&hy1pr=<`wc zZPnv{*^j9a6Xm}O3~=l()uWZO0fs6%sq=MPIb`$G1jk-E(;$$i6u0H z@RdZId*CU;P1g}z$;oaF_AzC^vz#~C#$ol7u!H~k={8 zxq+8dLI0hI(KB4FuT6Dfki;5Dgv}qj-*OekAW9e=gAS`+;xrD}`F+Iwi$7gg?oJT?|C(U9Sm=!oF&(FlXq}iu z1(W5a6=YOx7hV|mk%zn(8fC$QKxssNuIW6760OrZWoNx`aN}hbrf_{-8p)9yEiDdo zc`;}5F5>O8Ci_MbS-DTwkB&xv{(<^!|IY57p&Y=uwONLdf5(sGv~5vv>~9|Q}5+KmY`69r1<6aw)toq z4$!|nX00QpDTm5eKQX(2vmHN3F^-?PXj>Xg1HC2 zLOg53?j%ffSiSAV2LrN`4swO51JCTpHq$dd@9;Fte`uujPhgAuV}Oieqvw&-5v!`3 zXHFVP{#>{tBor)Er9InD#P!gvEtT)eZqA(=pAz?xLi4j1Ns-e(g6xwZ>P#hq1yq z0)sLWvI%esB}XGese2W*8YW_dTjkDOo^Ca)k=aQf63B4c4~nQcuJU%vD<(o|0>KZN z1sD5k8z|2klDu?R)@-v8Ekx_Z#{8=KU8>3pPiMoPQ(u%?TvcDZgA_VEc;e z?|!-mqNwJx&*wQnN>@C-DD?Y*o>C^mV4KlXR^0}Zzd{Zhn-WPQL9B-BRf$I;{$1jt zrchhE!0Z~8B=9P5C=MCZ6m;1Cn^|lJfD5uU&&)_rd-j2V5I=RS8CsM??&S8;{6WgsIk)vKVG^vsrvp) z2k-CsCDV&}Ty45hCQ^&(NYj${BxI-Uove2(swef*>v7@NVFZ28qEi^@aIDar@|pwz zhsmP|l8z!zci0)-3EPMLy__ z_8g!V-p+uNhv|f0OijWdL$|<_ih2YI#-9h47NA9GBmuY4f4DW)Nkjhbe^!+LQ|M`S zBP0xM@__2|?y`KqhWS_9GnSxnF!!F)PKM8r>T=ITr-o1PN$c~tJRYt;+SG8H7U-cg zlbe^d&YG|5G@T%Pd`8e&@7`5JuHx8)wVognJI=W?ml6q}-JmVL3mcOEUhVPsqu+Gc zv-))lwSYTuW?5>_r$mjCM2_%(w#^*zq#pT3hMhCT+;^z(mk;C`eSLL@&nP?dwB^KR z?yiHKPlNyWX+)Oi8E;Dd0+4(E7Ek_+1-$^Q3e=w&>PQH8`TBL6N}?A$dqjdLj~oFg zOf;+$gGYoP_nXz(181S@j$%Y9mWbhb5W`WN&L4=l1Un{*Z2}(!4<>ib8Z+-QUN2-{ za|JEnUZqX2uXLn0o#((qXr`rKV<5{)5WUZRlEj$VvYVLRj+CHG;lo;wXI zVeD3?ZNJpG;e|UlT2P0N$ccEi7{`}w^C0%am7}DC0Td#hV?=SEZ>Wh-^9_uYc|mZ# z##ClzCR#vK0VD^%{7vld467tWw|c8j^XJmI_Uh}pi{q;phwDAmx}?9AkjuSsVqXUgk&ZP!5i z(E}Vg3X>T~_!mBKI($U%qTmPMcJ0UeM~dM-3oR39v)-{P2v!?#1Ofl4<+ui@=!)HC*&vO59twrzSwATou5gD@gUqn;Tq>X{#LCV| z@*ago1(c&Y;CP|+XiEteM7`f}rIXU(0eZ1>c|R`-t_<3Zf+bvS#5$j0(Hp1x{!q;W zV^yXB1Xf47(7#hE+{4g$9j$lZtWE6-9L6V^aDN%&_(#vs9yqIY0F+SNVP`f+F{u@~ z;6*iZ*}p}SapTX1-f!mws)7u{#V{gcF$bWnq0 zBMcGR*us%)vjG48o#rfj$mZ68@WAS9q?=w(3Iv5;{pN^XJMhx0a@seW1WJb~MJJ}M z{$b>3mPxETr_)EX?6BHHgLAdZQ5I2l)=BR3PAZ#sJl0{Hp^PU(*_%f=3@{$rg*%F#w@eWyx zUa&<$#fGgBMnsQGE9Yfd%=S)}`Dd*0;!j2&2tx`-9i1V|F?FU?(=h-RViFNTb+=I~ zq`<=h#rbi4A$L3ozop=Vy27sQc)WoMLFZF7@!St~1k&|88ewlwialNA!Je*Pp}ekW zW_E0nqPQJRdd!eKp%mGr4P3?c80IZCG8N_s9+K2uZy~xWiVronuiDK*5gj-@dr!p`GXT-zxyAxJu*vaiA-N0PpD6+ z(2WhiUK8!x;cVrxJ+IX&$k`1I&Gr5|NKAN-AR6%;E!d!F=HFINQFrurUWQ945Ae3j zqT2kM`rTPrC($jD!+bmYa7PN|I}k)Cz|!Hwz94u(OZAi1DY+tr;4^-kxA(V%T-ag6G4W z^u>K;$_Qoh)b~mI3)({dyH-kHyS`>VeNE*H_zZ_1Xg~l0Kon?J$UgAl#vvjk-H$2WaLdU^I0@T|Vdxa0idpU+OZj1$we zaq)s*qko$G-Ay-|aG|K> zvqtxt7atOMEMpT`vOdM%?N&>)@|SAGsg(4?$F3=9&G-AyOL_QGnk@+)J&T0tPIr{>F}fThpZ9sMg+jR%+utCa-v z@Xy%WU-K1^ay))DsvFTaRAobU21m{>-b|O-ryJ#X%3`AmO;0zhz3=Sr{w{XOb&pZZ zGHi~#Bi)C==m18!1&?L>Nf)pE)%s#;-CN&jipX$r^8&m0%C@gAB;4~E%dLo0q}y7# z_nLij!?4eJyF1<2IXnS#poj*?*GKhi4>-Sx*ZhmO7dAO8t5_(QgzWgNf>hY(g!*y$ zi!M<8yogFeO>*V;h{l_j*Hn_?>HO}6*^1?S>-#hsDF<}#b#Y_Y#?6DwG+jKj?o4xE zC>oZgRo^9KX1tDtJoNR5(K8KY`)$}*{arw;{J<{#<}5o0{PN_@#QLqu*!wGH33Z#c zjtwSoovC&DkgL}wlpKH%qlx{Gk8GO9;o?(fZ5F%|LPB}pIp_<<&1A@RH8C3j?tNa2 z7XCT$vYr6$OLNn^ex@qEv$Tm`DFNxKX5@DjZ5e?t?^*a=*TyE#xvr|`aRsYeOUS*O z{VK(C|MewLc4iKjv>Rqwo*aYz_LsvSULC2uNo{`vclEEN?nFaFbwBn~c$+eB7%6Id z<*}a;BD(G}R`99lSJXYCg}=lRFVFi2n8H(8RdtgaHEO6gI2FEw7#lxV>wAU)P!}y7 z(~M6wb@OecqgcNgS@K&7_&MD)=F;e{br{6_5$6_gg)_h zZtV7FXE``N;*N0r?v{Gazaibt!ns1hv-q{@f43LsB@0Vk-u^&*b(GUFsFkzQ zxBoy^)r(5y4(n0UkxX}PYuhJ}Zt^EK+;4t6P34UcA9L$C7`H$X1aStP*Lf&jY=Q#W zpfdUHe^fk*e?`A_q4DLy>{`+V_2V=dp`EnziIcQ!J^TaS&wYFj{Hm?Gi_X%i9tqD~ zKJd>ON?D^yH*T%Wm)s=?OiQ!x`}ikLZ1imQAL|Hv|NavbBP#!!C7vK7cE|#o5jaYn z=E%Kaf0_Ke(+EZ!qJDYun;Hbq;`G^e;`dBhHzw`#2wdRI;p6&!HTretf0`?@HL~UX zSZA?^DSKDmXZ+Kql8BZdO z6FG@XU-uMUO3tplAba?bmjG5Y3PC{wZlb}TINNf)8OfUKs}rrS7}FkhdY zEP#^aOMZ<)6C}b*&}_)0bOTBX{`N2|<{U*=GDYVyT}AHP)wqge+3QlY8Ou_k%*j^Q zwZTToAFj*rq0hie3Nq|#E05WA6r!9%%djM?b8jUVm#hU-2O3TEhmH)K6r7vx5Vzvml8J}G%w=+p|I#|m z6pt+5u)#>n8yDqMJorWa=vbeB1r(dRj0(-!E_MsOS*>dIkx52KHW~%pCDcKX>@GY@ z@VMo#$1Ite-Dw|&^XXtUcZh^^i~%eR)ogM;r*s_3;oKKM!cV`=4sgkOK4}HCTX>Qr zRAy#*>%yN^n{+}A!@YSxu&^22wPvv^A@uUmn`p1eBuV;BpZ7;pr-T_A5Y%U$V9+p`uuxQDmo8u8+uDiWBI~33d%#nA|KW+y} zCjB%1k%;|_&6e6jP0!sW7)o%@?551ln`jCPr~Dc5Npbh6xi7%5pIJIFArbEL1k{t} zLwr9X+H}?rp0EF9IC;XeSr)6!70=SQnud-!LQ3Xv2pw6<>6lXRV}N4c7tFhnOJFdJ zbU;s&JOB8SQRq5{{t)XgH4mM3!(JbjhgBChbs{@Tio4WVuIhN`KPi3A*ZX)!{M*;~ zy%y*#HA}Xw(3xJhy?knAo`4AN2?#OtWY0oF$nZ($>VX8=Sg|Rk6~OO1Q&Cp`#gYzA zzC#kjyo}AxKk3PKfdB^eFzmk))vFgLB!ybmR;MN>Co__S5C(lltl>(0#Lh%i6R6nO zxOde24t2pFj@X$y7yYa)8Tp^Rd6MJrvj+ceL{fM);9Zovr{*`svIhC#TbKuh&JEZ9 z9yRW6R`_9iq~X(NHq}xu9;+qmzqyT>D>`x1E(&s7D86F5eIIblj5&2V8U9jHEMA;^ zr_sTCZ!TBlbP_m^tyUe$w-qVJCn?k8(OMOK>KUzIh)LKEzSza#B_(yB@kCp3Z{-0^ zjY|(kxRNUK1)TsPl&!H21j;N1D}a^`U;N9R+JEX(czpG3mLT8LaK@zk-0IY>xs+pF z?SRe9`h!20>;d6ND*Re?VDl>G`SL+EvxZz+YW$+??`IO2LX{urI)6%uQ?YUQ(t`xR7cR$Dg?+dMdD8Dc^@A!qcm= z1XS-q74MSW&6uZO?ir$_&6xKSoIGjKWT4z{JjCR0#+Xq{*WRwjYPT*f zJ;7c_ZBx7Rq13;eB8*qzUODbd{Fg%L4SI*$mtoEnx<8wkCO_RY^%X8Gt&G~mn?su= zeW5#K8+rMsPw51N-zI%Vk@kl9vEuI*CylzIqV7AXS^hMohbFF19jr1J%KX`{vIM`0 zq4#hbO#*^I6nBhV`lY_N(spjI+M0JgUODG_@VU7?a&u5srAyD4ZX+|2Lp;KiPsFcU zhV8ypuw2vT1WU-*|YncXJ#5HsKpg>U70#b9FL&1-~06`_I&G2mg7(D)<3O1KX3oL z@o|2ra{8x6QrcC;w>BNO9#JCj?jI^ySry~_{d4`tt4`V>b85|lz+RbHPGWskd|8FF z=STGyk5t-2m*#7@q;8ko_VE8TmOS2AiBq2(zqf!gb)#}~9TN`pmbN=TqQUHQKb@u+j z7nQH%FqRSiC?Ao|&((D3 z@K4%RExpH6D46`-Xy(2CHE?XY@1pFkvl>c1Als4y1 z?Y7LJ9l9db3_;?^G-^C_VP{&x_emn;vo3rtd1LLCd-2;o19E3ouV8HStTZ9nsCGehCiJk2#2Hw<99D$W3xUnwro^YDU2Pq`3 zh_)u%1Mrdg-}kOc%fm;hD)JAuH3=p$Og|U$ttcM!DmDG)*^7QL4}f@mTS*d#c*t;XVDn-WH%;d;C75 zVU)f#t{scNuLSrrCAYAAdabUL#u$SvzXlF`TG!ite_WDVcdDLJ?-mzXvh(vMD4Qr6 zD!mTJ9aUL^0&}}iR6F-ke}QS{o@fk1kk6v#YK=%5Mk)8xZQ=W&y3(tY zduZ0z<;Wk5aK8vEwi%l!3KgCV+uI}91IC`xKO@!>B|Yj8Ube3Vi@iCei^uz2qO{Q^ z8rT9vIg2}#8S9f>9%=2~772D!WsHqaIi#sGwyRB@h({AVtWb&G3wKV%YD93aLcO^$ zI=_jR4mOM64|dC@D%;&F`Y5XhHX7cy?W^UixZ6k6m|Lch@&mAz&JT3==Y+Dp6oTpH zK8Nr~Z1GUx$^akk4G?QDl3OoI`X<^JWoxoJf@pHwLyf)T-a2UsvZ?5b#v*jja?>Kl zRZ>qb!7<6BSiKNttTsxrcP5pB>s@O4>kr~xEM7^1A{_-u6mNvR^5Q#*sWkFfk8^oZ zS-m^y(#<%lGbHEotb$Hk5u?8jG|gb=E#~TK!=@u>H5R7=y!TFgo3QUITTnkX`&(W; zH}!3VzRYE1Fp*w$piCMsXQG@kFS^@4LPAOzeT%s8`VJ?b9FWi2gY)!95(XHE{#TyeUzLrLJenHeSk!{-uMKc+bJvvF|ZbE}!*^AS*=RYym znA$w`gF8nbFSe#FKN+|l-FCr}!k)u+i8cGzh-eyDrggz(SB6n5=r%8s5b)J$$8@*o z6(};%5I1vyA>zmwx}G+EnUJWjHq9%Htp!$(rjas^z_KS~OOEFlN+a{N$x^ZyV4z}T z$Q-y0N*!{eiQ(%Ig{;5`k|DTmezyX;PcaGKmPRebUt~O@s_1mMYu~3Ggy0Jx24#bC zg;(2W$-KH#HmK5B3rzrCNTGXn1L*V6$&B1)Pv{Rq#|B8h%2<9wq%z51lk|JD;oKL7XoF zF(Ggya|u5-g!qd;5XA%j>!}xBfBJZBDoNU=W~JRfM9kgxgO)wa(z@t%{n#I)^ZKq8 z3u3>-#raBk`yvze7Wc#YOH%`=1+itMBK9*kd+Owm9D5&xIH_kmD!8KKUme}Cl1P>=feUu8u&X?sE^ne^|j-T81G z7S3@(SR7>k;vCUFw|V7EE02R;GNZ7hXaqlEnG$oW?~?xiCj6{XwyvRlq!9^8Ns(1N z1-Uy?ujp`oO77o7^?<4WVDyQ5qV?7xmQT!2^ucH(DT2J3%DXz}k$o^!P0zGp$5`FU z#G|qFW0iG~_xw!rhdtkqx){*f%!C0Hov}cDw<@Ey@7A*JHy#N?eL}BUv3+FI{}Mkh zknKHIOcptP?)`z!XYVpi7~^-&i@?3-BO2_=0Nv}Ahp+wTY@2~B(Hf2Od$rz3k_xp~ z${K*eVI(TnFx!uGLjVhhBbN7N^P|nGJ@c>V@N#%&KM6C=^$&2xlL4^ke#p+(8;eB| zxs(_Odd3(Jb`K^ZGFF73J*01tFu+@ChGduZk*i@}eU@#bsjf3u0N-Wkq*o_B_2CEi zOCi3;c3azJ_cfQ>e zD+|1eZZd!JaO2ywmA$W_-B7INcB?p_)N$cT#TwgJ++h!x!xlfl%`xTAmK&tD=$Eh4 zd^i}BWfFIH+js=oC9EBpD_F5P&ni|w{5txMh|P-k;7_)(K(OnlDU9VI4Go`TBRxEh zM5987wg+FG=pfX|`lDZ@uJz{4W2tJ$Uz6>u=T5 zp84~mM|(%q+R{h(%{4aoqYu8!BpRZfZSME48-jyZd^oQD6_R z@}jaV3V@jOSq!@I@#KbH)x4@0hL|RMb&?rVKsGQ}8gpllB^(09tB%BMn5|ym6yKjk zB6CHj9E=gVt_B^++o)ungv&CG@}aIIfwc39c5UA#N*@)Aul3{r>Diz&vtf zg|nFIJF*zWKx*3TWELe2qBVdv9>jJsPJ>B4G*BI2-5=Qw#QOJe`wk?-E?OYq;Nyi| zR!2dmci4SjTz_37+eP~M%)Vq8eyy|JHhASdEPiWw+nJ9} z6|MQFGx<#+3|99a!eB6zB05tF%jFUcy}-Xhs9o>?<`FtNVVd3e)A-w0Lg$O5qvv;7 zt)Ja9Mo>}e%ZD5YY|Lz=p)+zn1HtEn!2lTSE?cq&wv}#T?HZ!`mPl)B#V1R;wi4?NnFlw>{RQMQ2Yg$Vy<^rcHa~sI#ESPj2LP zssLpYc(0W39@exht+ z_^28O=%D2!$a?hsliYa~dLuh)pD+>vuLoBSR4_F??_fg6j!l{&S7XTyS9U%(zj=hK zDLXffXp)Vu9O+pdk6-94(wL=|DcUTIN88?Tm!Fi^sVVhMd`NCUGhz2_npGjIQx#3B zu3j0#6Kl(3>vzKUuHbC$u56UfF5dw#gD)27k<4a%u?eIih_@S+T4i?fsE>UBU|WnWtV~R z+LEYyn&bYWFGm_79tX43mQxV47fl^Mo=Frs>SG6zBFNjtE0cOBKFRh-jAYR#Kmk%c zqvLq;g393-BW6aoA(Zus?Jw8m?mD+n)$n=&%y;t6#fEjB-Wu39S86qzW^9D` zB>(s12i6-|bQ3bk^?ai>uwGZ{LNnCu<3z`9r!ia{N@1P zXdj+P#1d2v_f-H!&JOpD(mE@Wm=C6Nmit?P%Gpq{$PmjHu9kF$+Q8(a|H$XxApOh1 zNZjccVl~|f7oR-|ltQPkR#^`@)7nga4VI#TomLWI30lsb1Vg|uXdfzN4_FN+bmCbYVXwIL z4^hD19@K;7#?brU@lNX=F#kW(|Gy#VpYg9?5Dx5-A)_oy&=dr$rRwek9=AZ=4z`>2 zHc4!s2DPywIaTZjYoF_oTXJQn#p>PWP1>a<7$TG@r47=OjD!dRRLV(u@Wx*dWA;Dr zf1&?h5CPD+N44}JZ$mKP+`J;lvflXV0Ss&7M)G~F8*yUw(byV_Rc6Ro7 z;ehjl|IYVeRam`$<9fxi>A(CQ(WMwqD2r~qCQZiR7fnt1%ssZ+h-4IdNcKM z7SFCJN#*70zJpCy_GS}wu~UWB@MlzXV8`wsG=b#|A^=bYJUAe5tzQ4$uH5ty5h;=* zs`@zR&HR9eAFb%wUSs2?>l8TH=uOQdl!XQpt6*J*P?^V}0VC@5dGN+yJS73ktPhoO zpkw%J{u|>&FDH}p(esG`I(R#mBt%!x<#ghF!R~ZwA$lsEX>vNoz&^s6tyRk~X@x)V(|M6bvOL(t|DOzm1o=^QI;%9JkKCR0(S6#j0P5+TKv0;daPZ zTB=qmFj1$QAMqzbJni&vjZ_Lk1xMx-gocSXjKnyUs_Fdq(9zu(FIu7Z5`3V{0*U^L z25W2X`fgk1ZLNHlzAy5r)bw8K(_bF1E7F;nJX&o&bj|~1O~i(+{rQKNr=wW5Ng21S@dlEj3&G24DM8Auq zLWh=Sp-EUe1m}kN&>2al$T-&4X7{;Fwb$fkM7Jai-M&{MB}aIjrpdN``({F zBPs&4tRp7mFCH>?RZLoJd%HtI{X!ha4I9h3y^seUd1vbz&mwi4EcA+#ASHGcZ-n=kvyaJy zHEBn71~(rL#1HH=y1w1ZvFb4P)R&xn#tkCUq_zEDnA%sz#g1Wmgq^iBg1B0|ShlBv z`fFt@Fn9p9udR&Xa|H3gHg$f45W*a)7yk`d?bW=*1#H&Xt+E8j^SfmKste8N&C$Nv zmq9dJpkwI)p3NODj|_79T}#q9J#4}vy}Hx@R~>!?QGvY@)2qfiEZtl;JO-ZqWZ5%> z<8+g$5!*UF(voEQOX~hIdVh;|oW~?VP)uV?hvTNbmkj&H^tAwbLqDd$0|JV1I9#pS z5ng)1C9kst*mV2F~w>x2DZ2UfT=Ciwf!&SB+q_N3Nw@Q5kt*mxT@m-I3Td^h+e3ZWVxZT>nX~;zsWK-G%x3qv)%fb}eQobv zQIg7*t6UzzU@U7E+uUpkaW`xW>GPT1-RcJf6@CZLi5Q_TJpR64Fu-MDWzmyLvGr({ zP~*yR-Yc}ol;SiD;yda{JQXht=)q;>ZyD)$NDN=}M^-Hk%zynTf<1Aw#IE1Y!G8&L z6*}`l>}|}c3MH3+K$eU8ap`!qm77))4h~}e3$68iA9Uy7KD7NO?Tx$tw0Yqa)^IMD zu9culeHU8KzGR4@rw|tG;x}%nY()!@$&}>DN-;g(X{j?7?H?PPVTbVsLQG~v4ez@z ze(0`6Ft*R5iBpx1xwiz?a?b0m`9w^)0pbFuyDRVnVg4gC&_HjZYrcMvuh^JL5F?=f zo7Vbdio?|D3*Z!FeEl)I&!JkU^tFf$OAm>pn-NJj4&x>&o?io9oy2{s7-l~o!8W+b z_ke4`m%M>EAwy?oKE5vnoW(N)WFDNn`=G^4e_@;xqphQTs>N?lGN-t% zl8+p!p572d0PEXh99u^xRD%e{0#L!B??SwYFmK71fZ;m34MT!{%2Eg@gbBW$9oGDh z=P?DSb+VidaU?C*=s-k!NF(W{$&VbTEeXjFw{R73~9r1${fx_9^wc z3g7J_!1}V=)$9qH&gN)c_u-PX3O<>4*LMVa^HrjVl6+z+JbYQvT2DH7nvBo7FdH(Q zixt4NubG^4Y}q>{g=Z!QR#;4URWUHXf}J_TbS^TiG0a?Yhxp8mhc{x=v%`31T>fnN zmoCN@V-Jp{bb)+_3a<)&U}jUzV9j^5wY7CiX#C{6q_<+A zdh(dS)ialjJVdI?&NCe2I;kg(eNLo>-6DL!V)>L%4xfF*vS5o#YD|v#>;EJKQPc7m zCl0>}@`xWkk95`e$kDFr_-yl^1jq#=numNvl1XTH@HrXt!fTGam-S@zTy#4A0>(UX7R?n=ogI@4IRDGvWI#Aeo^$yuYtj$gf@f#Z9Q2^HPnc2Ks0r(=ojf zMpxxR3dBtFsxI$eaK^3{e_DI0keS~bc{r_Y@($U6?$$PGkj#1yscJ*q=#c`{1+Tv{ z8;Y-i%bf5%+i#?=z|Ed6DV$X>sBNOE6g~De*r>-&_5`P73?c^@b+jh=fe+al*9`K_ zczArjg&QuAm=~R!llr4Hlwd26e+Fa(&BsiEbo0Wc*ycl&3X_M_37KTf!E)>PH(R;% z4ok*^&4QJ|BJZhU)k&N)dkF_EBh%-A=W+AGx%5XsGkW{&fDqef?B>TWHzo|9ZKj*6 w0l}UT7TSK$-wyCNgk#@})39uVJ@dj%#p6K;CaOz70zhwub-_!i=}v76O( z<5}ASzu(x{)dI`C1;6pL&jVjh2Q)R{MP}Bk2|@R$H|g6yUAK3`HN;)tDHjlU#;ef$ zt`CnsI-UFAOAqXFnTM?u?LrI)_t~>*{eHTSyxOe$*?(ia2w&?OUhAGh(@?2>Tw+l* zOPhP+I`Z0W&m!msD@`zUQ7>SXvVTP7S(edzJC8?s^n-=&hd$xT48{m2W*G4&CJc9ea5yJAvdDP`Y` zvkgG*Qet)?6wkoTWB3tP=BnW6&(bD37EeNDDcJGXAO}cXl7R(I9#xx_Rb%%{O&i0h zXI$~yKuSpP=*{}_hSl>fkw|#4x}s(4`<^nvH}v)ySCe_z+Vl%zJb+ZOh3N2#I0(j+ zq~K0OzN;s(bFYhPky5 zAIK=&+O!Df+{jJexZ{N;@-4w0X>LK0YrpBhUX!Om!22%Z{SC*Ws0DZ+DYCB#PHFP; zoA3EyxajjT_zv+u;7nYG)x%%$d8hz~z2d48{~XCxW{a7nZ}x5Yl{x6|4Z1_z z8$g-*#}knjor~-Zoj>D4wRfIsiZoiyDz03(!6^%!!LLit7eDzH_^fHU_xo)Yy)%G| zNmJi7ZHA2R`+e`G{{tJZ;(!s?y zBK%68KD=Tl6cdF-BXM${vNcy7#EU=ZzO!7(! zu2SAtMT)J4WMa1-mWFj^@W(F#UL^4^?DHxr23?&z>s&TX>+#Hn@0k6oE#h{ieV&6% z5xmnqjS6b#M5BcmcW8aUK`P%}j;BnQ?v@S}{>E~1Md*M0{66ZV9={m7m}J;n&;zbr z_zr?Emu)_peyXdp9NHrS6vr>PkG+ms6v)~?O16xQFD)zl?eaf-20J|w(-B(PFRY>M z;WE-AI3DC|4Jk3M2L9zo81k9a zY=nOh2+L3ejUV6eUmY=AUkVTf3;o#di;)O@!7fU+crF8W0??ZlcC1h13}PWJrmOGU zfM*Bi?tq4b#3M@sQq*nH36Q6pftdl+djNe$NW1o0##!2}d$}?#uD9Io>PZ`4kE=Zw zrr%w~(XDz;EOs(et3BE6`Ui~_=o9r@IT7=vyS;|YJk0?iObYEv`b6D@(>?C@8WJw7 zD&#HS6uHb~VF9fE8|Uw#-uD4bX=t|mkY3}E5%>b_yrEBqMB>=;oJ1wJmgd!_O=^*` zQR8|JZ96-3t5wkDWmw8`W|D?V5J#QdXR+l~+lWuUFOv5cUYtMH{@~chz6)32V#G;)-#2L2<_YVDR zg0lhqZRx7n1D;h0)TLbYgRS{Q)2yt}6rtw9Klb0pO*xb%VPX6i)z^2Tz3#dUDxST; zq`-*!yK>0fVbYNdWIBc1esqoYB|WzgxMW9(PlfgKbF1}%=pQd(oX(;&uRcB_ng5>Q zjlj`sA2hOoa-Bud<+KR6oj;r31QMpkX~G2LSpY$d+JcPS&Xm!T^l<+7iVV@3bn{@= zW}2k!mD>h)WO(F0rnETG^LNzgJYYroKbw@!h14y+7V`a#Hb;Ze+m1Vnz~z;6a0W9C z2W6-R$ld|Wx&c3TI=7e2R9k&I?>3w1a|0r*+&=V)HX&QxxBI~ z9TfQj1y&y=g-BO5oYq@V6H$D9z7dB$sZ#aTBOv-xC*xj9vv>Y$v(b$@UWCMfgR;!)TS8H zwRi*Lc~yi=*jv%wNt17X}CcZSo%LecstH=a0NBdVXVe@?EYx|!FfL3>y zGAd^oJeB_`zvkAaS)QW{8u{t=C;UUdzn|=|vnrI@D)RDEq&qhx+Okx4bPB9r0>;e|jPl{Z-=$v~^$>737lANMjVa&C#wBtf5)Na{B#9_alL zQvD?A*@ZAYlBW(g^8$??4C8`40xOTINm)YhJrZ6!UhxlMhkjIMt(<*lnxjJtS$ zu&veTA7t-*1O&(xo?K9rew(kcyuX9Wh7Ktd#_e~nKRT19;Btp$dHJK=qL4q2bwhzg zv1{;fl&kssP+$HuyfBxy0JwbM2pVEd+s`_RATADxS5)w9GW2bI#xrV1QzvsLXVC}u zc#dBzN;3se()%Yirn0`26*Wht$oG|V|Eg38Eu{RR90IBCLnEeAKDfS{e^$@9QZ~AXg)w@oaL+q|784#Qo2wZ5B$&v}2yV%2>`DP@k^J%Y1=_Ay#`JQ|(@4MR8Cf zO!1EjxHGm8 zI0-`M@rUZwCWnb#?fMn%3s+H2RP^AvKaC83jFeRf9OYN|(q2pq**bh=+Hi&-BSy&ha4x@!kkz=xCxynw2WqY#$pZn)8xA)D9g>qu%-52*pV zulp{!WL^l}^y=UWd)AS#&CQ;Vtu^`bVAaAh1Us9!=qyctr|BU`Bu->Iv4wUpge|}G zn#8Cm`KeQtl8dwNdz#_UjW?9#HUU3bzVW|qGB4mCpq8uk{| za=aR;ElW?s6II0+34(a&_wW-73eq3$n{xyI{ynnyiL)GZ`a4J-J{8&K^WE-N5>om$bNTspwJw}v zXOt1bQ1EWBAwzGuaJVSP&?X%iB(pU>1cl`M_|oM1{*Bi3V}mC~-}dWN|IJn!1Zhmg z_}H2~sWBa9oOS(z5%!^bsf&A)tB~()(iKYlS_iMnTL18sd#iR##pEUyHkF~3%Xt_R zz#NK3yO!m4M)$yOc2Dq(lJ*?h!teU#`~I*6T=}&(S-L~w>713?TfNT=)DtC6_v3`n z@lr6iLmTyMpyCo1&hZNY(qYou0=V_G2V_x)mFmH*=4NJ(FKrEws@xp~*P29JljSzj zURYLEYgfL^*8k&5itmyTuL4}NRrXtB#Bf4uzDmJ015h`^5L}zA`jR5g%F2sR`q!9>J$0;Vt8VJjo}y0J8{>z1$+VLr0e_wDCeZ7;Lo2x zoLe()9NOzY_)29#=?wwXorYH6jOKEsg*|-Z#_PbH(BNmSL{^GvrpuV&qg-%pHiE5OyW_{hQs@rjpO|NO`*^Ar46Pxw4l@oy6qi1gu!%LusP&-$l zKp9yOiosqAwWZCA>Yp#_K056uc>wn0bfx`b20`fU4M#KV*?HKrZ&rQcFkD*qa$zAxVKys^jm2<<>%(a|%sYr_@4AKr6x z|HjSQKagx~^ZV|tTj3hU(YM~-kQw+^C^DIq#4w@qYYxRQuSL5Go;Wif0$T0h!Vb6& zXf39(yjFoQ2xT^Xu3*}mL#=u2dO~-GPo^gD|BF`MFZ;MY|AE;U9+4E14^XJ#vgama z+Bc-yb`|c<0~1@B znAL}1hWR@y7_`dxXyF7Oa;Vv)t2gRYm~`|6{bX!g3sBXZcllxgAm}l&la}R?WaHr% z*e>Ueo7u1OQN5E*Czd28Y`|E|j#kf?Icz<6@yhbkZrqul7hho)3Da4h%j!*oDvOhH z<$m~bjS?2bM-DyXXOCT9z$&W!4He%u&oSETx~b4(Kd>A^QPBu7-)0(HKOKI@N>Si=`>m!74`Za4_YZ0?Xx@RmpN*|Rk z{{In1d;n&mtBBJ|0h~NK_StdBK|YSNLnw?b+Kkq%AJ-8FR~3?IaNc;yClW`^X~fea z-2ipG4+_ui^wzhjq^ZW=XH(B@!a;8%>jkMZ9I$4CU5CVdAm0OL!k`>90+<64>Vf za~8S|X?M!w1O=XdGnO=tm4!grl3Iw5fgaEpO>YU)b2J@qs>+nv+EcZG)+LE5nj#CR zm;=mb>OT56mc`3yr;B&)#)!alMTn!DA@*_l+&st3YQ0w<=9yc~%nu%uiE2OO|%(qftCi)1<{G;g>H?wQi&-ZFfVwc>2`Xe>&s$&hNwN~O7 z61wKR6+cWD-2tQb%R&3}U zKblf8n`vJuifDoBJ->e)+R)XQ)A7W&na$U zEtn7QTJ*CApx(zQ;N_DN1h*cTUhd+g!uEi9C5p`DlX2tH>ZS6qQP`sucSPSk=h3UX zI^0~l>lo4q1lo!&LeP&LIc)+nn|m<6YUwXXuc=BhSPxkEO&8SRCqi)cEyltJmpz`{ zpxH%TqWp<|qSkh7_*>5T>nK(%nqwVv+m~%95{q=^7P`j3?UakCXNp>Q5-Jvm-&)|Tw zEs+=1m6^g6zrtMg_pZAzEbS>vuBs?OFMm03|4NBK;j?DfT6^3-6TB zGYzF2*V6DuXbXC5+QY|mY0ATO3}8e4NgJd2rbD3UmNX?rOmXI`OayvXvkgjr2e90? zXOZH(w*KJ{WA+Q`d(6PeYE{UkZU$6Ab?PyBRMT9TyCWRt3&ujLjA}&9NM6OTf!^3{ znbJe@0j3@1co5%eG6t|UY!yuy-5G%mACi}%z==wEi?4BlIk{`6Inl=9^xF@;E0Sw7 zldmY3>lHWcy0cW&jaf#Oixg6Thvz{Q=|(nL^v$xk0_tZO*vzY*QVoTzVaDhYl}~2=ub4IFzv^wFBvEEn-dM z+q=@OdsKGU%%Gee-7+d=Al7g*^gpYv^- zWPWt;;x{SR$MGgq9s8YL6)3J<7P5r_q+9`U=!zi3lIjk08nK$8*M6xJsrq!O>m6+e z@s^FSH({Qn|2bVVEA8OjAJ))#r*Q>il4vyRQWnKDG@GfwYXo0jUhLg`Et>S1^Mdl# z)~QDCZ#>I)#Ny+`+wVISG~eG(XW3Cpy8=<-LslbN6|vjW6+W>TYsDGlfWrm*Uz@N} z%$cw!K&caAop&W|%T4qC(oxfiL)>NB0M;QN5yeeURJe)b3TE_c!?gq*P^^bT8I8+h z_82j6FA@)Ly5Cbs>vWl4zS_5Y7JMyXjm%Wm;UenXDy7`$&T|d4=^XEqZqk*smw)6? zNnB$qSJT%?DKig5N6hx$Lx1o|BA74uI6eSsPt1%&2^d!ph6XwycM7oxQGjv~ysfo| zug3pvkZU4M3LX!T@W>?rHAJ3Gamb#P)+=IL$=tAJTnKK%#PA`_f+f9&lpCa0`de3i z`+4H2hBJhJ1CNc++eK-;byLb{Vz+y0ko@e8)UhX!{QJ@L0WlXi{{dRn zU|hUy^M%xo@g4nF6OsNVt%X^KSI+}@wYLyLTPr7Qam}(?LOs#Xf^l!(V5!6xksVD( zlRiOnQXY0=bTR6#VEmnxaQmxgZOO}4HHY0wpFGb~2J{grx`MZ)5=}aOpT#2ZZ{NWR z-)sG z&TU?z{9D1ex+bf+j`tM#Z8(kfq+WOF@Xjpr%6~fa;l{aDfH-wKkU9yJzg0oQ6g-;v z&07$-FHtK$`Q-lyVsa$7JhL@b+tn_la)p)ZX%~uR`<@Oz^eN1|J6sxd=>MYe#q}$c zDJ2)CfyD6Xl`K3wRS&@e4MYv7DQR-2W3Gzy+KArvk?QVQJ$ojELYNv?-rTnOO5FdM zeq$Ea$kq#DGV_$XlraLF<<6vtZLL3} z>GEC-@Yr*ntxeAt7-ZyohACFtLTGe9;Z#a^4nV;!Wit54pxXx%(}9C% zT;5yXKtRX!m=BLPO40>iRolI)-@Vgeq%!+i;bH^HnQzWX6dte9yA*QXX$kH>>$eRn zPCg~|=GiRa=3jcv0*h|P7au7n^WZGmC6=D+P`1u<;1AK@V|S@}WtJ8x+TV@zhoCuN zs+BmIML6UB6E6jO8 zA9-+%c}ExdLk2W;@r?|sNLsrN$%banR6t#*LJ%_E18w6l7!b!pWIohv+N3hm65O_e{>C7M!oK^ptOHYiS?lJ9Sq+7LeL zO?C&W9>neHD5kL;Zp{@;d1AMJMyM;wF||bnaWm;YIR}cf;a??(qgCQSFb|{Pe2j$> zvgx!hi!+9dF2`aaxX1hu4(;vGELBDm(CDptj56{D;A_`a4&P%Xi}D4i@3`$lHN^ z`)n{y#c68uwMg^(*qLzukQa`r@~0@fJn~I-UTJQY*Pl!o78>erDZj5eZ*-Y7G5moAKXz8R$qyf2luopH^?1Qw7pT(oq&EJrOI=#hOCq)K6B0%Epm`+!xj+quqOqdgQeN&&3=}afgOV?lz8^Z1PbaOB zJq++;2g@2AJ1YNEm~moB2q6MNpgj}*TDwgh^I5-38uozsG9HHr2@eDkiV*1q6IE%9MY3SjsEj zoX!nx&7HuVXCyvCbNnvSX8p4s03i;uE9N1(W-Se06iP{ z?7_o~LW(Ep@;<(v5?#M~ypdXH++C9&Wd>UAk^|l-QQzIU^AMadNM8Zy@D4P+m!49H zr0G8bE&B}AYXv(woAV&9K46+)r~g!Mli24{(?KgcWZ%!aZg$O&z!W&RVv?&m;81VP z#HOgZ1aI^-0Oo?$0!icaO>{Q~>1l-A+k7d6}!-=FFaZo+HQg9k~k1BiVIC{vO=Q?)z575qlm}^%p)_lqN6eMNw#4!Alt%TQ@`#f@${2((r(buc`W&dvdPP zG!VmhHN1LdX;Tn8#lh{%1dl}S7sCq?ohpX5_YZ<|YA~@d_w`Ge zi%dYza?Ewt)rUqVzO5!fweMi_MWE`w`A+y+&z#1f9JcATk@{GPckk@k8X=7pp=Jqh z+Ju?F=G4_$o2s7GQTH-O@`a`N24?LQU`>xFh!^yM-9_Yu58IF_%T{QE@cIglpHaQ< zh`BjxrK+Uph{Oic?K>2iw)vbn>gMUV=$(xiaOihkD=G^824iq@1-LJGV+Gh$yT*_X z(8q(%w_Nm_apf!e8oMro&>`vD#~{thV70DpoY2+FhAtiK#QurLOqhhhO)d>!ncI4u z3pm_dJI-Ovy;gO^zT<7Yco=3JBJko##%!1W>F;1JxLniKE+R+gWnjSzGbSR#eYQVbC(@gCO*&DY-;b;i zXt>&v`!93hN21Z7sd!KpD>|rSwrp>>@e|u_@^36JYWFN5b{ePz>Mk&u?UWa?JR%-e zq>KN%IV|-Ebd#}7;bisBlp|=kX%)iM(EmG2GY#}QpX0fEaU!K&t+R^Y_mh65{L_Zi zPNh#$gXcnU?oq1%8E4 z6|sDv6VnQM6pk4e1l(Nl{@4Jcwifm?DB{;YVa(d(en0{;*TogQ*`~ofhD4)_sFh5L zP~-c3AyZ1~xs&1-(9ma^f8Lz5JbM}bkLL<#kxdpC4uP+Iq#A>l4S$=1kij)er}rQW z`v0goq0TPCo^aIePXuqX;J~razp2hzZ03Oe@&b?ksQAR>uq4%nJYulZ3oO)}VpEz9 zDF6Y!mHHDQ3FF7@8!sh2p(qbmufAiFkBh-VSWVei>3BJ#CsQd3^4`5!x7Tsf@G{d> zVIlQ#uJge2X#Z=g%J#1Nu7!!?0)25n$eyf1hPhf;{b%{52jYa1%%gxKLu{Iz zOooa+g}^0@{kaMgL7pUN_nV1ncfgvaPx?t9Xb-=VZPRs4m&4Ocw#-0dIn&GR^X52S z!TIvnqvs_*MCCc|iZ^$nH`7>@3QSV5^!37X8aJ-;VT9B5jnTdwfZh@p`eI^bXV9Zd zd#ioQvEXs0s527q60tE0<6{EFeW6}$P3RsFnOJUKZWAzg`E^1 zF)l3o=Rq3aU0x6_A{2A72-T)02UB?YWvQlKJNcd4M_rsZ5EmROIJWd2j*rqxAU!`9%0cSKE46}azyFeuZm_X zhV#$f+19=MT<|hRc{KHh_}8CTQq{@}*81Y-1?jO$WNg4fAnt&k=<8uEkv@R-Yy>gU zGs^AXdsW)r=b4{hS_4;=wKiB-C=fyq-dAC{WDnq-5|Xbf!O0ZV0IT!c0LLuBv2WOl7ywfdc+EQ9uJh)$th zBLiEwBaQUmteFp@?9~8V%@&|G)?-tK$~hMd?C&{ISuRF1AOgdElicQoW%zaIIH2@H zDj33$27Zg;vXuAIeTI+~WL6x}y0pHF9qcd$eJoI^@)#QAMWxaYFm`%GBk;t1Gn}iJhA~9A-LdTSpM^i@l?)A*;A{WBI~)l-P#Y{g{L|E*a7W^1p!ExgAPq|jBY$( zGn4eyI<4;TsladfpI)TGXL}!3%KmJnE%&3{|7Yq#2-RPT3+$O4TXq2vxyr)NaP!Se z8MBiYR?)%&35*(5;{Sp+6xPby7*9%_h1;Oh_$>m7?br6!k-MM*7PVao==wY$fLWCAzzBz+)bGYyVE7T z#dF416$vJ_e1Z@r$CzdzM8qnnV)|kK!m~Iifh`1Q{}8%iNxx=sm0@wYy#HC3mFynB zVjQ4AxRz7CzzkVBw6S@?C3XSq)mxQ72LEH_6?rk$Un3gLus&}CYD_*Wahai^iey>!{+XSXL8 z#ZT5gJf7352SdZZM@2vDxEdxu9ew-wj9R6~t@pyL#v3Ys-i`&iERI}boS$8}%%wZ@ zJSfUq>lHRi!Owb(pr$a3?~Q8m5J@~K#hgqgn>B}b4*){9R97DDEEz^4UbD1o-3637 zSHkBZ0^dR3WiJS3ODV&5VYK1+5X;6K{jRfRkB1r%kmubEf>%E0{}jqQbMWcWqZDN(gpfTdLMh&CUsu(x5y^_yFN3Yc=C6pdo(jSV4KI*isEAM%|3TeU-YyXj;TRRk#w zA_9x)>GE%G*hg)ozaljg+j&yB!T_fX22a-vwd?Lv4|xItiG6l2zRIy)l)`JkgM}sS zryd6yW~)71AA`0D`+*iX+j7})nmov>;MrGe)1)eV+eU|q*xKCa=ddLJfCG5XoDi%? z?p!cbRrTMV(cM25ExROEE)ivD*TR2afIRWF40~bb1rS`CSPKGI1H}Xvj=XPf zp>m9hN8H@xMop!VY+Sd%=9j+HeHUkp-UvKLFtro=_P-HM5>P1~N?PUTw(MD4=99Yk zJf!1qP8P+f^?Jn#K%Oz9U-P3imxc>ePl^Je^bq6*jAtHzQI?;bVg?sLe$qELG-DZg zuJE+#A>eo4^T|VWe%G!sMM-81nB5H&H4NTDvXZ={ayZLwcMG`u7--M*VsavG9$!yYZo zvj~te$(Q5xgptWnlb_SEPSVRt0eQnTIk*i#-m2Q67M%PBV3y%uR4%5jRGMa4AdaOS18 zXpKK{yRL{E=85Kx_e?&gwsSbNh4jX?k!>+mQV9c6-p%P38ZpFQMWJ|!`F+|0^qFAF z<)=5<4cfPbvq(<}3x!7th^7~R#t&~*HsxXzs0Y*j=PEsR4}Zjuk<<4`5}&7l@)JmQ z%$8d`g(<)4p6}6_mR%10qwN~<8J}C)h3wQS(WzwHPFgQ?9^|RY=|FMJN_a%P^H0Yg zB=e5gVxXf1nX879yJ3{oQZ@sDmah_{j_ud77X`H(P=C3UJ}81OhS92 z!{jqJ_%XRXvk8r$p|ypy*ZVe2TB*zCQPdblRdtlf5jVZC1DrAOu9=YsF$-Q+B1R?J zmCSs$K!3xvvFe&FrsH^zk%axc?15Ml3L#r}sgSiJ>e-nIBtRHV{>b4pboM$IH{0}= z%yvUE9I<IMFcjnV_{6sQOT+?xn`D!=FHcdZ%Y}#jF}cYZT;MoPP%NHN zi^@QdF=cxDERs|c7X5S-!|N@*73$2bjYFA zI8|h2!H54ujyhUsIvx!b9Yp1QDctE`RdD*(@me?>-*2JP>p6=E-Y^R3NFyO8%#;PO$PV*iWZlr24euia=lwny5MYDlv+}lVjW%m-)@B@Hp2M!`9#4eZ{-^zo+j`0z>x#KY_jL?=oC0(DVbXe(o> z0q*tZaJ!y=m8Z20*Fq!rDSgCzT;Ws`ecOhI{q*i2wW<#Ko8Io2rNnxZBtTywmzWh! z!PHTkZ`bF4%08IWx$ln+e3zmmx??XvAV&aL5nHZ!m8q-LZyK6dTVbww>d}n#k>d~i zY{;`Wr`B_2v7R6I(o?@4M*iCL2|y~4vs?BNv=CzEMD`BX7*c%maBIGgDmaP9m;kR| zYu%C{AIqRyg2`Y|cvj9_39Km0DFn^fl?jaG}R)@gpWVi(Mh~8-N1p zHv(XJ8*={WE%Olq$YuVo@rnQb-`2Na^%4i+%WnO ziEHM~yk(ATKI;VwpJjYtN^(l<7xdmem5a8L1*|WWJl8?^4~(M!)qTtAfoT2woF9xE z$nFcq9bKF|3M?skUzBE?^!Mp{LZU;tZ({dE=iisxOaXRx9+BK@S?=fyZl8i5UETew z{alD7#0F9jHz0((3A(ucP0YW`ituhmf`BRw?PAPHRd#!+D_rw6r_DOfE=0Kc1!i1m zvkw>|v`WkMu}C*wj8GJR^Bi#bAdm0=+p>KX$Eu-JQK@<7wJRScKkma@%KX>lMpA0l zIYjW@S_aN)p|>CrpLfoHK-Rz{7Jkim>)oVh^qceh@Okf(%p80*!^)=FGW+dLwMstk zOa;z$@tsa>HLrO4?;11jiP~$8l9`&)(RyV78NA?J)vE7MarwxwE}RIXTOlk9u6${hNr*2gh&FStt4u1$z(DS&+Z zwzo4sZr)Bz?Cht|2ILqz{dzm@t# z#)8EV^+2XGx4GrZi<5A0?ez=Pdq0g0^sFvE2V7CU3nLze)CT_2GtPp7%b+)|eZ2}_ z=R3nSBp7g1U)2p4e6^`yt~#M`5@d*9<5`AM#I~(y{&^aAD6}_n!c=;>NmcxrAm^tpQ~+ zIvz>PVcp-(Vg*5OO3jb8TpyF}O+Q|cP`-Fs{hIWL7i?#5d_zB=+^dSKl)vhgKZCUq zdy<^)W_9MY2WrFjyJ}YU`$mbY6WKx%obI)IyBes$C@svkicbpWsOc~fM`rZy?=;}| zVK}9`>GdEcp8o!DE-QU)Y-QzhbL#6yqz6si(fYQ^^>TK~+rvjqe(0uT9SwcJEPc;g zPCu1c0JXhVQc%!&W$5O(>5t0CvA5^KEc<^$8;nol!wUI`MS8{aD{P7{_S9xuyoFTW zF#j`j*DNY+sZU!2S0=xdVxzxQpw3}^F+g(-8vmc@??iRT4HzMK^)&I*2gqMPP#5)uJe zKz_h+q2e?2=)C`R`~6?H#Pnkb^~*~>dL7*N(?T9PUIM7Ez-;Opsq$vUv}Oio-{^U2mQ zA>c>*&ck4qexW79Zk%a2+FFu^==1-CZZyFbT!Ft#=`;CH^jt9N=+-li)Ef+&Iq-K~ zY7ARjr)*(2rY=8)NWfH1q0rDR(nV}SYJKyo}fO&N-DZhchCg#HWBuiPuLBdIurO1liSER*Zba+vaIRJNNZD1Oe@+L;!98v-7uCm>v+mEM;tQa!DZ|$k8t6UG=EymG z{=4#FQ>9BsoR(lCb;kFU27uMB9t8SO2(|+?udR(}l`j09zq9q?qKXP=hH_5imevc| zcQrCwp|95mZ{+XR+^bcuaJug6$(ZNNS1aN1wPcaSwWuWRSP8qdi;C~mPrkHcMrMPY zNo%H8A3Fd-<-N|@%d4;4zJ8>Y8Y4>?6s5-B8)dB_47FYoh+cjC5`ec)IE0Of*ujy2 z=+n

!$0)p&LNBD_8VxrCvYQ^9h_X{4;B7F!tub0IQ9x>XCn{kFe|afo$lp+-naL z!HeNpT~3>er8*}k?$pijmqI)Q{rq$I{Pctm1k`touaMZuD$#cUd@5sY{n^3ZU(1kf6Xo3JH0rsd|^$S?Sq^@BETwoG?tD-zeq{ zI)}sbs^(p#WEwr$KMk8WW64|c>`lwSM8CarU5lclbAiKYB_-V6^}TKM@#ChY8Fg$^ChS^H!H6=4s4t`b9gaqArl{U>VC!20SjwTtbg>^I#~}1W2T~$liT(*Nwk0T zA6(ZHSf~E4w{`{{MF+lo{8^;yjqhXk!E-K|0(0kp@@v4B+HOQWzAN| zjBHtlB0^>?8T$-lnZeBbrqA#Dyk5`udCnjA>)hv@>pJJU&UKd8Iq&NTKC8YoTM0fH zcgR@$eE&VhG`)JU+$c!f7|Sod*IPa%Y^>FMxq zgG2Fwp8lqh66GUVO(Q1B7VcHwucQ@6wl67?tKMacUDUc>D9^R!=O;E~IE}WVn}GrYixp;n4bt`l65T$F#-axN<%$B7nOyX(L_!>iiTV+4HA(yb;@X7N*H@Y z;1~cg#Gc7BBlU(IF|83Z(nCxygvMe~WGW81cSS>wnL6=T{Im_i=GR2|iaAw^c3kSB z7}(xr^rfIcAIIlX7!EpOfyU4O1!}?NeyfR#nQDk__5MsHut>{HMI?V2(Iz zFQ^*c!&&W=6lO=UCpYlF0)BHc)RVIHfxcxaux-6M>tNdMP3>)&T>_c1*p}nwhWZfR z4b~r4Kv8#ePS&^_&l`s0Li{0wtsNe46vXPee6qOeb08QACwnpHahFaQ#V~|L_33>G z&i4afZ<0Sm8f*BX+H8&JQmIVR(G7*KQuvSwo-nc~!5jnqnB|+O(l3^z2<62!K+7QW&*+h@`2fpc|G{4yb(2p97b-%=j8q>K z&}s=|wZUX*Drw+}<1^iGT6R|PMJdZMrE)x3T+Kpo-H^RKL_qye zcA8WnXb62UtiiFiOn`VDKtspybzX+iT3Dt{>eks8fzCsjD88`&Wf^c#F2$ycNO7%L|dl`H4M|yV)+>F7~V8l$TP|2_Pmvd@T8XSA1QZC zg!aO3R-|xN8Qx?$T`l4ifH(L`-C%7Gk>MauC2^Z&FDe)N-W*&F8oIFm#M}oPt-J=r zQ{%bSS*@uj97^LoLgW7H`}|b;uLj*TK!{59J(S7c0a;Ew+~P(y9ovIYAUs2Os*k}e znT><|ltX6qZnQ6(uYVK5NY8K@bFH3ad_(Auo&lfS0-=d{Iet3(Y&-|BbonyCatCF3 z%0Q31UKK z+PKE-hUx5<{a3UsgPL)TZb_gLDpZ_@wHMkxh+W&o2)0PC{9T@U(2PH4bMwxtTE*0g z_a79KmfR+f*qsuN`L6z>P+Nr=x>9t?AbCoe)-2gpx~FI7oLX>5EMv#k_~C{J*xv%U zL4Cg9K(1iqTx%P{^EP>3{l*Sp+l(KHPs&m>rKh7lFg!uQ2f>1ZfQo(E*-1NoF%oq36G~&`BI@^% zCgz7=mckR*avS~^q?y8$@{_V)UIhEZuom|qL(;O2;MH<}xR!CmRbI`zE>y!ed~&vS zbKu?i%a59j?U|w(B6h;*zXp|4FQhr;oeAL^a^zo=LQRJ3lU`3lf&WO}b~#R$g?t5H zLqa+i_wDDqsLh+!@aKSaE?IYvKG0nan2E;lle=$K@Oo01*OAG|5YUC4(9F$)b9y6l zj_<_jxy*E;{xhV@I5D*C7S#vf`r4VK*{?+)iezV`JY!mXRmn=h65cp@w1p~X=_WtT4hj-op|y%<9Qnl-@r{`3B~2K#XAlu zbPpA4-_`{$`d=r92x7xf?{eyfV%j^rM1`Y+o1?wv4CZ6TCVUs(7y^#JF^>}ozb!wt z*Z~@(;QF9r@sPMA9P<`1H7jo|m=g%%#jNReC6#8Nw7#;J=gDtzS5E*>$u}0(t>m-u zr)^gA-+<>D)#&FZY=34Pk%WP9Zgce-JrRiOAoyBqof;SO3@5L9RY~6KzH?k}dKGR( zDxQgUX711xjfaP@W%0e&w?J`OK0)CO|3~+r6^DG(aaPij^q$F1tnm~>!g7QU$5R0% z08*4{Hxl;QRcNR8$i0c$qZt(+s_Kiy)!+SaxUsmZBEu7LC3)egln6<9=6q{}|E(8b z@bCIb)GOvVGo?lBVo#k87x~qrcBjcJOWUmAIiFH_yxNzkWqn)B6y(#c=BIGm2mRg! zCBfo=9g>MozDVWfKL%jNIS%p<(q?`sF=4)>gH(b#dhSR9#~nPT&)) zkNsmY@1e-&x;W1Sg-=Gz(LZZKQ8KX+n9;S#EtM;Yrjfb)SuAawiZdgTH|U%jVk8O^ z9F_7Q2n>|Sg%=OT+iBi1_({G1?QaUszVKf1dQPvbGfYWMeNUQU5Yz_UZ7%JViiKU> z{xqrPVRaY+394cgosFc7)z|)5*(Qh!BCX#h?u8sZ9L9t9HcS>NNAXwLEfgH1xpx;E zTlcXL8rIX+UCCmTBGg~|)rLN&i_+ftvd7hS0r-zv_zg?M(x%i~wd+L0CC22HP=Nb7 zIT4B^IyX!gs3Dfw2OnT)gccxkwEvv7uR=0im34eNBX}+|+WmOb#vL>_j$zf?;{)xvY*T3^lv8UI%@_VYM7h&(e`)q zqOl5lSADSGd%s)m!3?{-@%1GoqjpM^LN`)&6d3&6E~Eh?QDI4taFx;3pB?qZ=P77wmXWub9qh`(05_Bw#0)6{2A7q%E+z07}> zrjxaR+*UDoCoy~lvFI%&DR;+UWOPccey~OECp@6tP{g8`K(e)Pw)D5eQ#BEB{M{MN z3ODPXfvw5p*sfZ_qo*0O@_&Tx!ZKqTPTlvWb%F^0K9QTC!{Ldq zmgr+&|FL#oZ^4IX~W8S5PypcPV$5Y%X&QzgA@n&4|wU(lUIQq#{ zY15aJN}Po^O zreF~}l%EQ^GWt;t6*&oQVs5@IHB1NRKmZS$E+~l+hD|z^w%N# zo(d+zz5}Ot5*qV)+)G=bFWtE3|A?(n!&kYD@kwdh*iyrUC`H@`_aapx@6Rf6RvCfX zuKPmtB^@*S>vg2pN7C$IIsdjL{NJ`L2gGFuQXKhDzJWkP(Yh2pNgTkIcW)pQt|bBE zAR%n+b+ZU!EzI6{`+e#42D&7-I77^uT(9uy-mEpR5*2=WC^NUTi9olxv}Ivo{ZZ>< z8ToC;Of65zgKiVz>Z3NgTNX=d zl3AI$32HgsW>L$f)W54vm$Qx6gT8^fJ1@rO%w6z5Q}rEnsnr6cK2KqO2AenctPXpY)T95JIUomL6*_S)A|Kzy)+nEL0h6 zt-G<7XU~{%=R41{*2gbsJju_v)%Mf4#AHWyFTAr8WWiqn!L-Y$SB8gA`z{4n`G-`u zN7yc%2S+yRe22n>uq`_`Z9-YPT=$*C>h2E@#l7swC#ii=zk4!Vfy)-Th}1Oh3c>`k z@auD~!6*HoFO?nv&pktu3K+Ue__?5O9V6Of5ZC1xj*|e?gvWAL^BVDpi+*}n!ZDTw~sb?e!OGrSzz<)h z7>Z`Y5=%ak`cndDx4i_{B!Is~R-6-Dt2y>A%aUh+t>A#>Q|jWgr_2zqtiJdUTa+T= zBo9XUv(xJ*;2Z^{?;n#TL~!gxIcbGN%PzWT(-$A0lpQPyM2E0Q^r8JMqBJszlr$o4l_-&EsW%$Y6T)Hs; z74Pt+m3+RmJWf%@wZLD{JdRnY#75qKR&XYIgGr-=ZtbuvfmX9a=#}ipgvLkvu{F3J z;@y7`vd>%~uI6a?Zic!em?218Ayba7SNzMJHhyJmH+NeU$QSL{<##vJ1(KMWyaf5% zf*oV-h)$sw#A>dI<8UdHdI^A>6E-ETdNr&(JRU zbZOJ1n#F?97A^t@`Z%$)pxwAJ`Ib=Ij9d#(Zb0zT2#C!A0KOR)qmPPS|CslFtKJii z>2d7I{6N#-a#v9Vj_(YF4os!tg+qnZM*c{JsAV36C3i=l>)4Hdl|Y#w<;=ieU%77&RLSO(KO8^wk!mv30 zd)(|TF)TzF`(Iz$IZ>>s3cv>-0YDf4Ab>IeKmlS|$nLTiBd7YgHM?J=r+@y^$$RH# z>(hY25BFAszYw0lmZHZU6OTnFypyVSUU|Wos2^RraJ%*Ul_s#;&fx4cIx})v)4XEF zS9i>w9Jvg=xjpX)&n>kKec8aAiOON?ec^mR*rPy|+BQ8j>`jvD#1SwJiy>^4_9}VL zdCau|bS;K)Juz>QW0ShTU>pQ8^AyvqYi?h)nISB96+>?K2{Uj41U3B2teZx!;3R?l zi$~m;<%6WpAUjkBkOHPe>S!ee-iQN|jezOf29bQF1uoa#bnl(jG6=H0+>fDobvx@=*4aRScJy+|=J@ z&QnJ?tFw)U4Jrx3$aqGbdDDzKb(LCIs=J;5!~v;1FCW90Gxr?8hOJFEf-qJXDZ;2z z^Q->9i%rQTSv9`YF3lNx-1*ME<+#cNePpO|#dc0t9qs2upW*UY&`dt~N3IYXCvn8d z*_M6C=l7SapE@pQOivttvA`g3XG3adCj*RMlGt*GM^Q@=TAGu#;(0HQUvgrPCfGpT zu`5Uq7TR=)Q2b=>XA!o^YroI0swcx6OK++Md<(;_T0<4>KZ|q{oWQ0}RRBfB*H0UFet37!PT<19;(p`JPU=A$MFwySPcpm(?a0y< z5EwUj)FYf9^+pA~hgTt%K{89Zh%>*CcW**&uk0lGd0pxb?l&p5nblgeCx(M11H{V` zOwF?oQPK~)VyYp3M8-W|f}@FY_gB8>@AZ;*%Kj!!4&{pg?cE~9qj7e?AO3MM6!RCw z+!3~1L&vT}(PMSD{pi2<-vM_BX~Kn3%&#OU`3oHR=D{a|?Z$LCMiRfeX@Xc@Yr&Kw zO4mCvfE!^5@4j^l0hFT_NagI0aO{xoI&}#1OA@&tvlZw^SP)WPPhhjEQ4Nn|wpus} zBf4a;DS_<<-d>dCXsJM%foJMd8#i|x;B2c6=Kg#yac8TTdizJ)Q3eIeL0n(OV{+h5 ze2q@d6Y?;NP*f@Ani!>fu_+|jrwubzawu#jNkXyYrZ|x%%fH`i@-R{aY7)nhW*fhOH`6GpG@F1P=+RTibNFK_luOTsMkSH)jzJ8;;~#mM3!uyEIP z`<7?hkz0_HDnJ(*&gTRygbVg2oiKuLh@)5XhxlAQTX`V*UTWhn_~*KeN1vz?2-qXx-grd0lhIKO~6n&W(g0ir(>UQ{Akzaw6ajUP9 z^@*0$)cwS&cbGofofTQ{RKe^JTuQM4bp){L@%og7ZwI1#;isdfv#ve8&}y#FZ;r6$ z<$c2EH;WV4bjvGF;34Ho&pV$2dRD6e<*Ss*z9iu_x#y?XT^zJcaAIx0ST$AMDwl@* z7>5JK>|w%6?$iJ;FU|LWYpd-Jzv2AF!b(~!EwZWP^K?~{9Nf6ff28`P<&q*n<^oXW zE9_%>I8#8y(8I|TRuihww(#r92ZW1N_qIA8tmRQ4z9vK$yb;D;yMH%8H>=8fXHDpJ zxH}zkD=Li#IoH5uvje=XW=faoH*VZ-3tGEBxZ}x9cw2Kf=LD1V&3+eAf;{jseqWM2 zWX7b`C43x%OuuYAuk*@$N!qmb9B{z%`oo4J58df2lEyhqNa=`Sl2b;729$Uo@Ld5Ru`(wHEL;+bC=XrlefE#U7*Xv$jbBQ zwCZ?^0yR?B6|%&q6f`Brgo$0T+66bP*8)acuif9ne~hmSZV%ic+1Mqqh>MH&FSHye z+6p?`Uh?p$**5CZ4XYq+-!D+*5AAZ}QwyukWye7vX+ca!L>Vfcm|lSp14xArHR<}% zCAn7s^a?CBrr1%EMuvpQC$uI`AJ$ z7&{Fll=_t=TUE+7oCfMwqbK=K7K7YwJ!J63clt5;Aos!u)sj?Cqna0nGF*kFG%7 zp2LB(MDkj=i=R@M6hNChs)UXm)9QWAm)vB%fm<@+yzNm4>yDHVQ&dti;Z(afRbOvj z`90QJg~@ZT{-gSWwr*0g*3!}fa&-89UL5ICc!d-{jn#94-1d+-qx?_6xstSyR&&-6KaL!B3$|0V7CUy*L&GF+`|8*ix zIPaH{;Ip=`4A#ps)aQUu9g9-;yh7)WL*H_rDwO@y0?uJCqu(NZaEE}18+N>-ypsih z{c`OyW&K;}e2J|!c!8W3QUNp~B8fI7!g&ez6>W~K)grP|U7-yeG39DG&f1UYUqKK> z!|OSjd~yDkbGA3zBcV9lLd{;@6`iZpnUJ$%D(p-bd1>{7uUX&&xrDB&z~$j&J)%9N zVleIdl{Q!KHTr35V?nMzw%wh#QG;k6C$|eFi(((7G^Na%vw(?!FP4Uzkskzf2o2i< zW+&!Qn8@~^MBh^AMhTGWrqXw#ax2%#L#59anI#$9+9A+2>ZPbAqgQaZr7}k#@%0HU z^G51-(J-1#F4)EYCYa+i6R=y)cf{-jUPdoqp8suMKU4DgSxnf($YAFSN{IL;C46bg zUICr{&kd;t;mJ{K`qHf}G^^H|yFQ>bzK^pSCJ^GCEX2D9-;LG9kNFaE0G+x9_7F1A zs^KQns*YV52Yq diff --git a/core/src/main/assets/messages/levels/levels.properties b/core/src/main/assets/messages/levels/levels.properties index faebb05eb..df444b4f6 100644 --- a/core/src/main/assets/messages/levels/levels.properties +++ b/core/src/main/assets/messages/levels/levels.properties @@ -271,6 +271,8 @@ levels.prisonlevel.empty_deco_desc=There are old blood stains on the floor. levels.prisonlevel.bookshelf_desc=This is probably a vestige of a prison library. Might it burn? levels.prisonlevel.region_deco_name=Prison cage levels.prisonlevel.region_deco_desc=A metal cage just large enough to hold a person. It seems to be locked to the ground in some way, you can't move it. +levels.prisonlevel.region_deco_alt_name=Hanging cage +levels.prisonlevel.region_deco_alt_desc=A metal cage just large enough to hold a person. It's hanging over a deep chasm, suspended by a chain. levels.sewerlevel.water_name=Murky water levels.sewerlevel.empty_deco_desc=Wet yellowish moss covers the floor. diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CavesBossLevel.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CavesBossLevel.java index 0f4c9a9a2..8cbf7054f 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CavesBossLevel.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CavesBossLevel.java @@ -432,7 +432,7 @@ public class CavesBossLevel extends Level { //city statues are used return Messages.get(CityLevel.class, "statue_name"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(CavesLevel.class, "region_deco_name"); default: return super.tileName( tile ); @@ -460,7 +460,7 @@ public class CavesBossLevel extends Level { case Terrain.STATUE: return Messages.get(CityLevel.class, "statue_desc"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(CavesLevel.class, "region_deco_desc"); default: return super.tileDesc( tile ); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CavesLevel.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CavesLevel.java index 482e30ac8..658f66f5e 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CavesLevel.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CavesLevel.java @@ -200,7 +200,7 @@ public class CavesLevel extends RegularLevel { case Terrain.WATER: return Messages.get(CavesLevel.class, "water_name"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(CavesLevel.class, "region_deco_name"); default: return super.tileName( tile ); @@ -222,7 +222,7 @@ public class CavesLevel extends RegularLevel { case Terrain.BOOKSHELF: return Messages.get(CavesLevel.class, "bookshelf_desc"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(CavesLevel.class, "region_deco_desc"); default: return super.tileDesc( tile ); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CityBossLevel.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CityBossLevel.java index 4a17dca16..3e6d08861 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CityBossLevel.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CityBossLevel.java @@ -389,7 +389,7 @@ public class CityBossLevel extends Level { case Terrain.HIGH_GRASS: return Messages.get(CityLevel.class, "high_grass_name"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(CityLevel.class, "region_deco_name"); default: return super.tileName( tile ); @@ -415,7 +415,7 @@ public class CityBossLevel extends Level { case Terrain.BOOKSHELF: return Messages.get(CityLevel.class, "bookshelf_desc"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(CityLevel.class, "region_deco_desc"); default: return super.tileDesc( tile ); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CityLevel.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CityLevel.java index 4e68f8279..4b538e22a 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CityLevel.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/CityLevel.java @@ -138,7 +138,7 @@ public class CityLevel extends RegularLevel { case Terrain.HIGH_GRASS: return Messages.get(CityLevel.class, "high_grass_name"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(CityLevel.class, "region_deco_name"); default: return super.tileName( tile ); @@ -164,7 +164,7 @@ public class CityLevel extends RegularLevel { case Terrain.BOOKSHELF: return Messages.get(CityLevel.class, "bookshelf_desc"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(CityLevel.class, "region_deco_desc"); default: return super.tileDesc( tile ); @@ -195,7 +195,7 @@ public class CityLevel extends RegularLevel { public static void addCityWallVisuals( Level level, Group group ) { for (int i=0; i < level.length(); i++) { - if (level.map[i] == Terrain.REGION_DECO || level.map[i] == Terrain.REGION_DECO_SP) { + if (level.map[i] == Terrain.REGION_DECO || level.map[i] == Terrain.REGION_DECO_ALT) { group.add( new GreenFlame( i ) ); } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/HallsBossLevel.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/HallsBossLevel.java index d8059afc1..606d79f6e 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/HallsBossLevel.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/HallsBossLevel.java @@ -368,7 +368,7 @@ public class HallsBossLevel extends Level { case Terrain.STATUE_SP: return Messages.get(HallsLevel.class, "statue_name"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(HallsLevel.class, "region_deco_name"); default: return super.tileName( tile ); @@ -386,7 +386,7 @@ public class HallsBossLevel extends Level { case Terrain.BOOKSHELF: return Messages.get(HallsLevel.class, "bookshelf_desc"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(HallsLevel.class, "region_deco_desc"); default: return super.tileDesc( tile ); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/HallsLevel.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/HallsLevel.java index 8b597ad0a..2b3801664 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/HallsLevel.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/HallsLevel.java @@ -161,7 +161,7 @@ public class HallsLevel extends RegularLevel { case Terrain.STATUE_SP: return Messages.get(HallsLevel.class, "statue_name"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(HallsLevel.class, "region_deco_name"); default: return super.tileName( tile ); @@ -179,7 +179,7 @@ public class HallsLevel extends RegularLevel { case Terrain.BOOKSHELF: return Messages.get(HallsLevel.class, "bookshelf_desc"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(HallsLevel.class, "region_deco_desc"); default: return super.tileDesc( tile ); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/LastLevel.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/LastLevel.java index 679673552..fa87e1320 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/LastLevel.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/LastLevel.java @@ -201,7 +201,7 @@ public class LastLevel extends Level { case Terrain.STATUE_SP: return Messages.get(HallsLevel.class, "statue_name"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(HallsLevel.class, "region_deco_name"); default: return super.tileName( tile ); @@ -219,7 +219,7 @@ public class LastLevel extends Level { case Terrain.BOOKSHELF: return Messages.get(HallsLevel.class, "bookshelf_desc"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(HallsLevel.class, "region_deco_desc"); default: return super.tileDesc( tile ); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/LastShopLevel.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/LastShopLevel.java index a634c3a65..3445e38dc 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/LastShopLevel.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/LastShopLevel.java @@ -159,7 +159,7 @@ public class LastShopLevel extends RegularLevel { case Terrain.HIGH_GRASS: return Messages.get(CityLevel.class, "high_grass_name"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(CityLevel.class, "region_deco_name"); default: return super.tileName( tile ); @@ -185,7 +185,7 @@ public class LastShopLevel extends RegularLevel { case Terrain.BOOKSHELF: return Messages.get(CityLevel.class, "bookshelf_desc"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(CityLevel.class, "region_deco_desc"); default: return super.tileDesc( tile ); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/PrisonBossLevel.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/PrisonBossLevel.java index f14070cb3..67791b0a8 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/PrisonBossLevel.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/PrisonBossLevel.java @@ -723,7 +723,7 @@ public class PrisonBossLevel extends Level { case Terrain.WATER: return Messages.get(PrisonLevel.class, "water_name"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(PrisonLevel.class, "region_deco_name"); default: return super.tileName( tile ); @@ -738,7 +738,7 @@ public class PrisonBossLevel extends Level { case Terrain.BOOKSHELF: return Messages.get(PrisonLevel.class, "bookshelf_desc"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(PrisonLevel.class, "region_deco_desc"); default: return super.tileDesc( tile ); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/PrisonLevel.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/PrisonLevel.java index 30b8ad23a..df5a7725e 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/PrisonLevel.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/PrisonLevel.java @@ -27,6 +27,7 @@ import com.shatteredpixel.shatteredpixeldungeon.Statistics; import com.shatteredpixel.shatteredpixeldungeon.actors.Char; import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.Wandmaker; import com.shatteredpixel.shatteredpixeldungeon.effects.particles.FlameParticle; +import com.shatteredpixel.shatteredpixeldungeon.effects.particles.WindParticle; import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter; import com.shatteredpixel.shatteredpixeldungeon.levels.painters.PrisonPainter; import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room; @@ -178,8 +179,9 @@ public class PrisonLevel extends RegularLevel { case Terrain.WATER: return Messages.get(PrisonLevel.class, "water_name"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: return Messages.get(PrisonLevel.class, "region_deco_name"); + case Terrain.REGION_DECO_ALT: + return Messages.get(PrisonLevel.class, "region_deco_alt_name"); default: return super.tileName( tile ); } @@ -193,8 +195,9 @@ public class PrisonLevel extends RegularLevel { case Terrain.BOOKSHELF: return Messages.get(PrisonLevel.class, "bookshelf_desc"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: return Messages.get(PrisonLevel.class, "region_deco_desc"); + case Terrain.REGION_DECO_ALT: + return Messages.get(PrisonLevel.class, "region_deco_alt_desc"); default: return super.tileDesc( tile ); } @@ -212,6 +215,10 @@ public class PrisonLevel extends RegularLevel { if (level.map[i] == Terrain.WALL_DECO) { group.add( new Torch( i ) ); } + //alt deco is a chasm visual in the prison + if (level.map[i] == Terrain.REGION_DECO_ALT) { + group.add( new WindParticle.Wind( i ) ); + } } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/SewerLevel.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/SewerLevel.java index fafae0c54..e4986f1c8 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/SewerLevel.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/SewerLevel.java @@ -196,7 +196,7 @@ public class SewerLevel extends RegularLevel { case Terrain.WATER: return Messages.get(SewerLevel.class, "water_name"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(SewerLevel.class, "region_deco_name"); default: return super.tileName( tile ); @@ -211,7 +211,7 @@ public class SewerLevel extends RegularLevel { case Terrain.BOOKSHELF: return Messages.get(SewerLevel.class, "bookshelf_desc"); case Terrain.REGION_DECO: - case Terrain.REGION_DECO_SP: + case Terrain.REGION_DECO_ALT: return Messages.get(SewerLevel.class, "region_deco_desc"); default: return super.tileDesc( tile ); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/Terrain.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/Terrain.java index f9d1de59a..61c954fcc 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/Terrain.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/Terrain.java @@ -62,7 +62,7 @@ public class Terrain { public static final int STATUE_SP = 26; //These decorations are environment-specific public static final int REGION_DECO = 33; - public static final int REGION_DECO_SP = 34; + public static final int REGION_DECO_ALT = 34; //alt visual for region deco, sometimes SP, sometimes other public static final int MINE_CRYSTAL = 35; public static final int MINE_BOULDER = 36; @@ -118,7 +118,7 @@ public class Terrain { flags[STATUE_SP] = flags[STATUE]; flags[REGION_DECO] = flags[STATUE]; - flags[REGION_DECO_SP] = flags[STATUE_SP]; + flags[REGION_DECO_ALT] = flags[STATUE_SP]; flags[MINE_CRYSTAL] = SOLID; flags[MINE_BOULDER] = SOLID; diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/painters/HallsPainter.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/painters/HallsPainter.java index a5ac0a05d..bc78a34de 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/painters/HallsPainter.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/painters/HallsPainter.java @@ -59,6 +59,8 @@ public class HallsPainter extends RegularPainter { map[i] = Terrain.WALL_DECO; + } else if (map[i] == Terrain.REGION_DECO && Random.Int(2) == 0){ + map[i] = Terrain.REGION_DECO_ALT; } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/CirclePitRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/CirclePitRoom.java index b9d2b6b11..7e3d2fa1a 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/CirclePitRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/CirclePitRoom.java @@ -93,7 +93,7 @@ public class CirclePitRoom extends StandardRoom { } if (valid) { - Painter.drawLine(level, edge, center, Terrain.REGION_DECO_SP); + Painter.drawLine(level, edge, center, Terrain.REGION_DECO_ALT); Painter.drawInside(level, this, edge, 1, Terrain.EMPTY_SP); Painter.set(level, edge, Terrain.WALL); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/CustomDecoBridgeRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/CustomDecoBridgeRoom.java index 3123652c5..a46cf8e64 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/CustomDecoBridgeRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/CustomDecoBridgeRoom.java @@ -36,7 +36,7 @@ public class CustomDecoBridgeRoom extends StandardBridgeRoom { } protected int spaceTile(){ - return Terrain.REGION_DECO_SP; + return Terrain.REGION_DECO_ALT; } @Override diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/FissureRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/FissureRoom.java index 7391a3f0d..693052085 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/FissureRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/FissureRoom.java @@ -76,6 +76,7 @@ public class FissureRoom extends StandardRoom { } } } + Painter.fill(level, this, 5, Terrain.REGION_DECO_ALT); } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/HallwayRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/HallwayRoom.java index 9eaf1b5d0..b0478cde4 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/HallwayRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/HallwayRoom.java @@ -106,7 +106,7 @@ public class HallwayRoom extends StandardRoom { if (Random.Int(2) == 0) { Painter.fill(level, c.left + 1, c.top + 1, 1, 1, Terrain.STATUE_SP); } else { - Painter.fill(level, c.left + 1, c.top + 1, 1, 1, Terrain.REGION_DECO_SP); + Painter.fill(level, c.left + 1, c.top + 1, 1, 1, Terrain.REGION_DECO_ALT); } for (Door door : connected.values()) { diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/RingRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/RingRoom.java index 67d04f0f5..e8e62ead0 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/RingRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/RingRoom.java @@ -82,7 +82,7 @@ public class RingRoom extends StandardRoom { } protected int centerDecoTiles(){ - return Terrain.REGION_DECO_SP; + return Terrain.REGION_DECO_ALT; } protected void placeCenterDetail(Level level, int pos){ diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/StatuesRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/StatuesRoom.java index 206d3f277..1270c97d0 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/StatuesRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/StatuesRoom.java @@ -84,7 +84,7 @@ public class StatuesRoom extends StandardRoom { if (h % 2 == 0 && Random.Int(2) == 0){ cy--; } - Painter.set(level, cx, cy, Terrain.REGION_DECO_SP); + Painter.set(level, cx, cy, Terrain.REGION_DECO_ALT); } } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/entrance/HallwayEntranceRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/entrance/HallwayEntranceRoom.java index db76c2d8f..2ad748576 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/entrance/HallwayEntranceRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/entrance/HallwayEntranceRoom.java @@ -42,7 +42,7 @@ public class HallwayEntranceRoom extends HallwayRoom { int entrance = -1; for ( Point p : getPoints()){ if (level.map[level.pointToCell(p)] == Terrain.STATUE_SP - || level.map[level.pointToCell(p)] == Terrain.REGION_DECO_SP){ + || level.map[level.pointToCell(p)] == Terrain.REGION_DECO_ALT){ entrance = level.pointToCell(p); break; } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/exit/HallwayExitRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/exit/HallwayExitRoom.java index 0577fc15d..29d4c2a4b 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/exit/HallwayExitRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/exit/HallwayExitRoom.java @@ -42,7 +42,7 @@ public class HallwayExitRoom extends HallwayRoom { int exit = -1; for ( Point p : getPoints()){ if (level.map[level.pointToCell(p)] == Terrain.STATUE_SP - || level.map[level.pointToCell(p)] == Terrain.REGION_DECO_SP){ + || level.map[level.pointToCell(p)] == Terrain.REGION_DECO_ALT){ exit = level.pointToCell(p); break; } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/tiles/DungeonTerrainTilemap.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/tiles/DungeonTerrainTilemap.java index 9569c350a..f3b8bb90e 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/tiles/DungeonTerrainTilemap.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/tiles/DungeonTerrainTilemap.java @@ -72,8 +72,8 @@ public class DungeonTerrainTilemap extends DungeonTilemap { return DungeonTileSheet.RAISED_STATUE_SP; } else if (tile == Terrain.REGION_DECO) { return DungeonTileSheet.RAISED_REGION_DECO; - } else if (tile == Terrain.REGION_DECO_SP) { - return DungeonTileSheet.RAISED_REGION_DECO_SP; + } else if (tile == Terrain.REGION_DECO_ALT) { + return DungeonTileSheet.RAISED_REGION_DECO_ALT; } else if (tile == Terrain.MINE_CRYSTAL) { return DungeonTileSheet.getVisualWithAlts( DungeonTileSheet.RAISED_MINE_CRYSTAL, diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/tiles/DungeonTileSheet.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/tiles/DungeonTileSheet.java index bc2ff3a63..065a59945 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/tiles/DungeonTileSheet.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/tiles/DungeonTileSheet.java @@ -106,7 +106,6 @@ public class DungeonTileSheet { //special floor chasmStitcheable.put( Terrain.EMPTY_SP, CHASM_FLOOR_SP ); chasmStitcheable.put( Terrain.STATUE_SP, CHASM_FLOOR_SP ); - chasmStitcheable.put( Terrain.REGION_DECO_SP,CHASM_FLOOR_SP ); //wall chasmStitcheable.put( Terrain.WALL, CHASM_WALL ); @@ -121,6 +120,13 @@ public class DungeonTileSheet { } public static int stitchChasmTile(int above){ + //alt region deco has different visuals per region, but most commonly FLOOR_SP + if (above == Terrain.REGION_DECO_ALT){ + if (Dungeon.depth <= 5) return CHASM_FLOOR_SP; + if (Dungeon.depth <= 10) return CHASM; + if (Dungeon.depth <= 20) return CHASM_FLOOR_SP; + else return CHASM_FLOOR; + } return chasmStitcheable.get(above, CHASM); } @@ -143,13 +149,22 @@ public class DungeonTileSheet { Terrain.DOOR, Terrain.OPEN_DOOR, Terrain.LOCKED_DOOR, Terrain.CRYSTAL_DOOR )); + public static boolean waterStitcheable(int tile){ + //alt region deco has different visuals per region, is stitcheable in demon halls + if (tile == Terrain.REGION_DECO_ALT){ + if (Dungeon.depth <= 20) return false; + else return true; + } + return waterStitcheable.contains(tile); + } + //+1 for ground above, +2 for ground right, +4 for ground below, +8 for ground left. public static int stitchWaterTile(int top, int right, int bottom, int left){ int result = WATER; - if (waterStitcheable.contains(top)) result += 1; - if (waterStitcheable.contains(right)) result += 2; - if (waterStitcheable.contains(bottom)) result += 4; - if (waterStitcheable.contains(left)) result += 8; + if (waterStitcheable(top)) result += 1; + if (waterStitcheable(right)) result += 2; + if (waterStitcheable(bottom)) result += 4; + if (waterStitcheable(left)) result += 8; return result; } @@ -190,7 +205,7 @@ public class DungeonTileSheet { public static final int FLAT_STATUE = FLAT_OTHER+8; public static final int FLAT_STATUE_SP = FLAT_OTHER+9; public static final int FLAT_REGION_DECO = FLAT_OTHER+10; - public static final int FLAT_REGION_DECO_SP = FLAT_OTHER+11; + public static final int FLAT_REGION_DECO_ALT= FLAT_OTHER+11; public static final int FLAT_MINE_CRYSTAL = FLAT_OTHER+12; public static final int FLAT_MINE_CRYSTAL_ALT = FLAT_OTHER+13; @@ -289,7 +304,7 @@ public class DungeonTileSheet { public static final int RAISED_STATUE = RAISED_OTHER+8; public static final int RAISED_STATUE_SP = RAISED_OTHER+9; public static final int RAISED_REGION_DECO = RAISED_OTHER+10; - public static final int RAISED_REGION_DECO_SP = RAISED_OTHER+11; + public static final int RAISED_REGION_DECO_ALT = RAISED_OTHER+11; public static final int RAISED_MINE_CRYSTAL = RAISED_OTHER+12; public static final int RAISED_MINE_CRYSTAL_ALT = RAISED_OTHER+13; @@ -374,7 +389,7 @@ public class DungeonTileSheet { public static final int STATUE_OVERHANG = OTHER_OVERHANG+8; public static final int STATUE_SP_OVERHANG = OTHER_OVERHANG+9; public static final int REGION_DECO_OVERHANG = OTHER_OVERHANG+10; - public static final int REGION_DECO_SP_OVERHANG = OTHER_OVERHANG+11; + public static final int REGION_DECO_ALT_OVERHANG = OTHER_OVERHANG+11; public static final int MINE_CRYSTAL_OVERHANG = OTHER_OVERHANG+12; public static final int MINE_CRYSTAL_OVERHANG_ALT = OTHER_OVERHANG+13; @@ -437,7 +452,7 @@ public class DungeonTileSheet { directFlatVisuals.put(Terrain.STATUE, FLAT_STATUE); directFlatVisuals.put(Terrain.STATUE_SP, FLAT_STATUE_SP); directFlatVisuals.put(Terrain.REGION_DECO, FLAT_REGION_DECO); - directFlatVisuals.put(Terrain.REGION_DECO_SP, FLAT_REGION_DECO_SP); + directFlatVisuals.put(Terrain.REGION_DECO_ALT, FLAT_REGION_DECO_ALT); directFlatVisuals.put(Terrain.MINE_CRYSTAL, FLAT_MINE_CRYSTAL); directFlatVisuals.put(Terrain.MINE_BOULDER, FLAT_MINE_BOULDER); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/tiles/DungeonWallsTilemap.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/tiles/DungeonWallsTilemap.java index 751bf945a..a847323f7 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/tiles/DungeonWallsTilemap.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/tiles/DungeonWallsTilemap.java @@ -94,8 +94,8 @@ public class DungeonWallsTilemap extends DungeonTilemap { return DungeonTileSheet.STATUE_SP_OVERHANG; } else if (pos + mapWidth < size && map[pos+mapWidth] == Terrain.REGION_DECO){ return DungeonTileSheet.REGION_DECO_OVERHANG; - } else if (pos + mapWidth < size && map[pos+mapWidth] == Terrain.REGION_DECO_SP){ - return DungeonTileSheet.REGION_DECO_SP_OVERHANG; + } else if (pos + mapWidth < size && map[pos+mapWidth] == Terrain.REGION_DECO_ALT){ + return DungeonTileSheet.REGION_DECO_ALT_OVERHANG; } else if (pos + mapWidth < size && map[pos+mapWidth] == Terrain.MINE_CRYSTAL){ return DungeonTileSheet.getVisualWithAlts(DungeonTileSheet.MINE_CRYSTAL_OVERHANG, pos + mapWidth); } else if (pos + mapWidth < size && map[pos+mapWidth] == Terrain.MINE_BOULDER){