From e5185e97e9280669f486ec60a66e507abc11391e Mon Sep 17 00:00:00 2001 From: Nic0Nic0Nii Date: Thu, 2 Jun 2022 18:22:29 +0000 Subject: [PATCH] Color codes in the middle of text parsing when drawing text. Co-authored-by: r3cp3ct <45179536+r3cp3ct@users.noreply.github.com> Co-authored-by: sigonasr2 --- bin/RabiClone.jar | Bin 33367 -> 34114 bytes src/sig/DrawLoop.java | 14 +++++++++++++- src/sig/engine/PaletteColor.java | 7 +++++++ src/sig/objects/EditorRenderer.java | 10 +++++++--- 4 files changed, 27 insertions(+), 4 deletions(-) diff --git a/bin/RabiClone.jar b/bin/RabiClone.jar index 5f54968bbe7c8c30d2181212ee0af8f227245fce..c8fe86fa4164e48c9e635db8327c4194b340901d 100644 GIT binary patch delta 6984 zcmZ8`by!s07w%9ZsdV>{(v6ffID~XbcQbS!x)~UT?i5hETN;rLDFX%+0YOq4yyEw} z&;7o8{@Cwcd%tV#IOloR`>eARi8>IEiu(eBhE5E6`0ybJkqXBZNBz^P6x_Ev^ncnW z92A*{e-NRL#d;6>_)JYXSQn`O>mwcqVK(*Ra^2fa`}o;^$9t7%n#u`KNbWg&d^CvF zAl#-|77z4$`_7#dVf>`~zI#s-<^=y=7esY1PE#cJo4=v>_-yZ2ZORtI`0G|A$p<(Y zQ`=FD{w5+lvoJI_P)8EK8+&FM-VoO!JC8danO|Qq#hJn!Gl`00*tnN!6BqNkM)%EP z>tbs`i=(8|2d|Pc7U8q<%*?_*jdj+;^33z#lS&7zRI=Y|Hw7Kv3s&q3?B1>21z&TA z5?w%;P%pF|nvLj(x6=-tFtlHAjN$+?-Q=>5dDw%JEQtRLBCu<)S zA-2t0)5)?4fmpyUU7|cE4%n=-*L1V&LNt&PC)e0yS<)}s-vyZ<2~T3M#kP`(xdnjg z6uaKy`o5dE0mhRGY{*0*J8_n@zJcwXtVPr%Bmi<=0lGlx`T3}79edLtn^+YZ<)r2(LLKc8)IsR-$eYuvTP;iE5jjcA3^!<}z z4-3J39umhE*=DWRI-|IP;A-oUBizU)ABlpTakY-t{IVk#p%;a%HTH=Qv})7y8mrtE zya`R?9d}>mc4E#QWuxa8dTRktajPOIqxiI>e?4@rbzaQZmT}x$K(q5@`36EvxMIg}uJwnQo|Y3rB!7~*nq54*0avhV@g`^>Zi~fvsl4|W z5%kG(-5R@^=JaMs@$)rStU~C%wO~eqxQ>i(E1?fd#;-DTKx`@VMGIOD+pKbj)|`3+wQIGjgDGQ5Qw1T=IR?#T!e@ zt=|xIz_jI}EcX8?`MbUiDrvUL=}f*&N9%83LT_ZqF{1&S@A$g4DqEa0#*=0bX2a7O ze*nWD)jwG}DJ>83w^;z*=q7wiZ-B>q4(K-EUR0;p4k*OQha2Y5*0pO*EeXHzD(tkN z)ogk16BY(T!ZCSDbHCjydrPIvO-7` zEDg3twc&Xk%y1-D99Hm3MNDf=-X@DQ7;rO1DCsyl` zCb}s4o|**a4RfN_h2g;{?bX`4eFGdcxidJv4cykTwA33JRL|lTcArZsK`xV$8qSUR z4))*UFu(0JWdnHjn+JTdY&v-js<=tUFH@^&W0u;RJTG@PPZ>OS4hDMXB_)1?po*S) zp6VxgwtAkXC*4~ZlL(Z52FC zPI7E@J>{B41Oxpi=Mxu73Ft;y&DRkU((-p?#}>{OOF&m;myGSYb{d{XEo`@NpyIdw zTZp0@ybsx?`I{T{(c-}djojF;h_Bv5>qw^Cwwc34v|$bHp92Ec&HATm>f5=eYcjln zI2?2BQ8P#`K^F#UhgX|i&7Xje7HmPLS1)2Z!95|aduuZER1P&=7$+>N@{A~OA2=)k zt`4t#0Ki@0pJm{*a8u?v);TxVCA`>uzBU}p;pmC|_dS-^6N(MDmY5SM%Q6j*veYbN zhN36ymt&VLnhf`1moX#D=?HcB60I-^rI5~tJ&f-@r?Ixre*c-A|c(!8m zg)oO+4R37GHbffCQ4>Sr$|o5bSSNc9QkE|5Pa09^_Dx&AC{<*-9M10BL`Vg6S0B%Q zw^5^{q@P))4|{MRrmY<~=meSF3zYkvlfoY~l9EB-Lb)_)4ko7vhVkR2LT z0c5+9m9S`}XqmjO$eFw@{qkn^H?am>=}3!5mC|N@46>YFW-*>#yFWyedW97j1b!GH zr4`9Qrx74xaRbCiXyoEG!*U(Q&*nI!<$r5R%Dnkhf|o5HD+N(It$H}G=Q`qP-|u8U zOvMXDb7@a_cn9;jL8G}~eR{;>MS9SoO5%P10{P;AK>tp7O_6dI ze-qAkg%2qA38z;{2kkyNWsA`u3IOaTamel81oc#%?S9%?9e$sWn$ETMFz;#Kj06Dv zYe3tM;&;Iom{mo?L3yXW`I-64xk38}Fmy>E! zyh-a%*94+xOtY@$<{x zY5(h8pmqY(jsu*OP@D(MM79M!9s_64897qdNQjk(V!lI}}tZ4Iw+Q};1r9}=-H%vtLN4k3aKnKXNz|Vd! z2Clmel4CykNuSf1lRRqrq6C)Mjl9+V6-$+Tw2IkrnL-L`=82wF#JFZxekA znv>&`_&Hp0=m0wvsI@hdiNe${5BDyFAA-*{peKfprZzk!p0XlOP`_5&+Cw3b)7@wm za~1F#R=HBgr$Z+!C|@+Wa&-|#L#o&Y6k@foDh4?Bv{ge! zFtYy(%-$f>JvlU9PawTz0Z8*U5b`MdWLIhERA1>nW1duN67an3>|rJTYDSBWmWD&I zt57+Gns*FFY>jO=Oi$6iLqOzdnN7e4hO>o_smk&=uhBn|QnNv8oVG=ytm*1v4IOWK zD|5IDJig6geJBYdced)N<4w*$-+8!-S!&DuW_W{Qp0_zNv`^yq^GLwQ8AG3l;#V2S z&fT0xL;o<1izsE^mL+e7OMs}Q6#78?sb7MK?G`_@=5uuK>-th92tkq2tAb7VY*?VR zL{bmGQN4cOaV|JiWW>6;L~Ve~I*7n5wSjJ*cwN@OI&ZWL1jtj(Cx$8tt3b@tZc>kI zGW<}}nsE6_Ocjaq`GMZ>x~X|>-iaU6DRL)`w)Pq2EjiKI7Dr3Ax4Ife4E&jmvY5@< z7PRj!o)$36ay|aoPAVc1W5*mMH-e!$cEQ5^ydBJx?0}VN6NIC0Es^|$u$OBSW5WH_ z2R?B^Armt*9;7(G=@5j!Hz5YLZ8^z-&XGKP2f5VF=S^TRY1p?-lq)eZ=Xa zCsBGmImit1lNH!Je7bqq87X3Yg9T(9k=>-bb9s+Wo#u&HnnA$)(!~{x8NwXq4icGT zkI#CpDoH=!$xW}eg}F9nZuQ@ugeS!PZ*$%T2M zpL;ZktzMaWa*Q$=URVyjVhPwJ#U1WRGt{#PrU$pPy7Bq%swiBLhT0m2IMc_J{y7WP zOu`p5Q7VAS)(Y8c8lC5-NbRUb69o*LkZ)VZTBaW1?nO8yE2ZWAm(U~AHXG7VrV&iC zK^0fMR}O&r%CBaT(vcMoF;c$G*TrjflOHTIWf}~atY5IcPx8h4I2;U(7jJjwF+DI3 zOPigGc3~QV-X5FqzvWry9^gRU+(ofuC0eFoSKa3 zYHy;B`_n$X!=I3IJX+}-G*IG!+XmFco+_D%UVoD{<8#!fPxN`XthC9$pb4Q9bYwOv ztz&EfFzsIrs%V+FHQG>y^G7v8+}Wn(_6nm<2w%RpQO;b~D1{9nrA>1jbClBOX^K5tMtfT(n=OEoS#9M7POAD_=&Af1fOE zoNnmy8K0Q9|D@G*%Y4C7pQs?{PtYroai(Soq;nlqA_M?uNrpH`q zyw) zX1eo)Z?unGrb@4Ht%sKsBe0Y=!1ANC!);KXo^tCR8J(b9Ta4gx)QSz9DQwGf)J(=L zprKnvEALYW37Kz!qXVi_MZG2V6CO)lTA`*0Bh-HQsN-@E_-Ea8uO*c_CD|DU;*ijJ!o{T&k<$RS#vQQ|X+(Qr9DH=ENmSXn zD9+e8x^r~e@_;i*<>#7~{Ykr=M8@c%i9}C>j!X;no|ohS(J zy&7vh5mC0S2)N$0YKeQ$U=)OXY}0L{sH!?(%yrDG)?CuN+L7;iK>U+~dYSM08D-~L z(f1b^S8S0?^0y)HCp8CvQ0li!fY0Yg`eK8o+=4j26_e;^PW0DVb!KO2$|5vtx3p%9 zI0rvN$Sc|RCQ6~T=$s8aXMFKm!~9ok&%vIz3M5di{<#q4Ko?qyBWku3z{9;KXn|LT}Kcc#DcM#`BKA?EoA z(D!#I`cCq@#=9E!!J^;Ng;#!N6`t78k1j%hHPo2o!sr}7NkX{S(!30bEK}xhaDW7~ zYuX!$G^>T>2rjrl=f%}IaEVh39OkA@*QUHy)$MY!r%o>__N5~udn?eWR%{6cx(}|u zv>XJ!JumQC3ph9y0-bNP2|Ftmruzf})yoONdV8ZNEXllL_M@eKiDL`|x55T|eex|O zG!c5vN<)ennpCfgR%XHmRim?T1!i4D!$)1p$cUgi@_8iJoXUqe*2j?;>^O76)z3!4 z32LxK3!6?Prm!`96q#DYaw-`g&a*;y2MCr@tmH;|I3wSy0Ok#eBd4|o~%2JX8 z($DhhRD$6<8;U079afv5axmCm+K2 zNJA8^EX>P7_;c`*dLWs(JCOqA zuH)EVrF@~G)=!6OAD|dJrN(Dg+?e&cwwH(4p33K$8aLZETlzKQ(AJrdcqy ziW99`mE-E!zs=t_p~(+U%jf2(l&~|?H#TEUDk_-4Ki0QDf+x~C;r`gc#bf`zPtEb6 zIppQ|H0QAe`5eG6k=}`lJeE(X;mfIWB+?bqug_1G9BtN7r77K6BK-1UrLovqm~=P4 z?6YK-Z);=~bA~ewWn#8GyZHER7{+GY=b?A}0;;+1>T?{ChwO`bC?y4TQ-jnd`ebIq zIkXh2WIZ+JUo7wPJiBMenatH*S2gP`&%2wN6BZfq(rE)$Oh!2|+Ux5ywN`ov6)swm z`Vc-Ph`QNXmvXb`hQj8m@$P^`GrNm2Rkk%vlwm$gGk`=dE|FP-Yb_f7SuM z3cZ34eoFw3s_@_S-wk+#a>Qk9pw%>UNk*NQn<8$*6cmFQQd7Rv9lzT=#&*9>h||$Y ze#2K?d>%e|iYnjhCpACyJdkopKElgL;RzmF)-JcKpIBXcRHfK-GvXM{ufFn%hupmE zm*3|nm6d@c(e=pwT?+Dw`o((h54ft@2CXpiS4dp|ExH#P!5e&1xJe@aJ8en8ES$|8 z8{6d#Prp{!l7&fT1Xtb3lKAd2&QoeL1*u;8Jo$X$FQp=n$L9|iMJWs49P4m6Qs1|FLw?-Hcr1TJUwo{33YaQDNcT!KTX>!Jy6;ozx zW-o;%o*DBzt=_QV9gLdev(WdWAh=VaIud-6gcd)%zbS;Nfj@5B(7nPgZpUDj8?N9} zAU97^E$WV;i^)CkL(`)j;!Qw$gc=oHpiu#mo(*%8m({}vomVr)6vq}w~h;cS;Rf;sh$^o3Hei8Sc!F>#=o>N z7B0z($M>k5L>BDr+W{+LFMMjp8wb7P4dJ$$(yk;UGy|uBZWA8{P2b5o(U)WtwPOPK z7f8j>c5n1|Ps2-Sdkh|t;Q8TGxj#^Ak5|(%J>T$Mpa;sf{Bl<}>DtZw$YqMDyk+Th zrIy}5h!v?y14qcnr^gBt>@&6|Y(GX16JB5wnPC@vsbuw8oV-l71a(_pzribqjg+Y7 ziQ}z0D_Q>)=lp|`CVNhvq8PRf(#8tF?9LJ;YOFIA>^5B#9>BeQNXbebP&e$9sH%!Q zH$9PWg82BmmSa3^`GI6l4!!tfc=^>fX9Ra;n6dQ5BO;7D&Y)z+iac)X3hB zN>&9l@g|G4wngjV}m2VpxCr5`mehZZMz(r>3}M8ixaB26zz%QHOH zGy6+QZ3z`Xzf!33-EDh3q6K@S%bl3=BXf5IjA~hFKZvYf>lsU8zJj%|menya-09Y| zbV(Jfg*|oSov%-@81Hp`o)kc|(%toN0_UqMh02{i`p9tKi-PBUH&J0#X-^=1-Rxc8 zL&wI_J^Q-lQ!o4Sm@O!HH4ugVeeG^2n{Y`4d4^7Y8M zgvLL9L3yX%2q30_9Y}WAQ}iFQMXnpJqPUmR1d`>79~G0Lu}$5yrZQ8gj(>QQyD_L8 zOemC5ZBM*?S>n5o{yT>qB7=`e9nkrIMJa?~h~zyzD})*qPae@4!b5*gNN?+S zpNs+m(V&4ql%RhiM253+n1oCvS<8iZew6XH?Hibd)fiFykIU>I7dC6eK`7~8mssEDGXZ~&*ZHS7NBAEXb!!B382w)o z`lZ4&{-48a{dr{s{~-6Fq`M@fK{}U^lv;tM%XJAU=?+0q5fP-3R0Kq6kdUR8 zMu|^&&+mNi`}}cVGjq@V%$(;rXXd)6I|=v=0VFom!N#Em;N#;16yZo>IpE(_>&4Cb zi}ml?OoXL`{})mE1l%{UL(1NqOK=AKpZu0s{6=oxA_@({R%F{3H)zx+t;l z_a2%-7gk7Dl^?caZgG$9rp1K3Vw?afir8t;$uO(c$8Yg%>)v}Z1vjhmtgNi`tTpa^ zsxyM{7U+iWl(|R9+4Wh0LWIwFK^Q~i@5{VBEbCMQ4~p)2in*Auo+^Z&9ZtOOy@AKE ziTF0qaV9bzjvP1{U)ggq-m)Arey8W@Jd7?1HA@f{I6tFfN0D#-W2I%BL$z4wA!jUVBpXCHVn*$f^OA1_VrMMf z7j9EL7_MUf;=H08cqkbAb>uBbdnA~eCTEW?-@c>L&;{PX(tn4hTYm!M6+EI``QFHq zj_(1DcIJvZd2$ zldUSN{q3p~2F3=N8=p6eQ{-~W(8h@^XeYtRv~`ydU7_hT8GWujy|ndKA5rzUwJma4 zrxOa7mId$tYv#%>y_A9G^AOp*aSkJ@BLVQhAyv?jTfsf#F!zohcjjxs$*_|VT~UhR zblDdgs}IuKf>PS($-aZ-*3R^=#<>%jkMd0fUIbH3Dv8Z%aWjmc2b2r#^sOX9#3GLa zpvdx#>hj2YFWyoyOC08x?sD9#kQe(!!QSEN%47_$V`%=6c=20gQgrt_xMrH0%8~b6 z1Z^Wx-ICp6W7z^TmNa!Mc%NpwH7jk#^Acnxa70XOTO&+uC2LxizCH1J^2hh@E05lY zSXF47<7tjt&B!ka(TsuOhGK`hpLVuc*9Z`k*?Mdtjmlfv7M1_N=bqE$m#krQh%&pk zeu$33jU_&UBt*?5gLm3Cxhh`;1^t9q{McI&LpmVK=;^4g!H>oJ`0qk$(_*%eeV75Gz5eC&T`Sh-1jiXR#xa z<~UTGaopE94PyT|u{aHqbTG3N)c&~?)ZJVpUm{-&>TE8aFJ&zPg_(<5i$fjFUABZ4 z;D#-C*(MzbqZf8Rk| z&38tFSMVe9c$ORvV$L5Y-PlfZZ;mzU2&hk1xtD%-B zRI@;{#j?z{tXRG5zG}Q$u4-_m(zB2SR(7sm+P9jN8-4tqK=sQ7sH|6z`Zo-)% zR$eBjNqxQjM_dq%?V?>O2HIqFWD{cHg6XlT;@-G5PtiS>cUyqt$ObOO(n6v;ZU_E+ ziphmvO+45Q>thuA^p#;xyn(O@TVt<~Jf8q+^hEWs_i`vKpmWU+~<+JJMKo20%}#oSNyHc80Yy$F}c ze*;sfeq(c72tU01(8*F++8tldJhfRe-+^uadrz;cVl_h35$C?`qgV$3Z|I@EZ8^SkQNWfM%#Ka=PA^g9$9RB z@sUp+owk~Bh)AlRmYQ+7G9Z!_PH8Ca%p`}i=OwE_3LyANWQ_L`y}8;3Du0DbA9UMj$o_Llhn%#Se%g5H~OY$ z^|ejM!+|JQ{I8+HbL`Wv>?_>MX|kPPTIdD2XDQ^Vh)5m6G&AQ zi^-t-OGP+FSU+)avZeY9IdM4IAKcyOu1h$iq=#&DL(|inl1>{JPLo=fo*bK~-G>3GYrNThZcTc{Ye46MH3t`)%`);Rp?u- z%n9#L9bfT>hN<^%;0{`hes-v!N#Ba&dZ@xv%N;G|Av=i129|*Z^GvBMc{0fxB?2B4 zn8w8A>f*4ws2gyl{S07laCR$Y+)Y(&OFPk5{nPUSh*$-Bv>AV@tL7S|m>NVrN-uU9 zO)Tjqh>?&b+k$J&Lj{W19$HL4BapAgjh`%YVRU1rc(|wE_sb2IFoXRrM@x{(l>57J zH9s>MtqH*lwe*KE33P~FuZd%N+*AN2Lo7S3mP>Ctia9Hc5bbO6^v#n%k^CX&*O~$- zQDQ-%kDdLUqQxMquBi}pdEt)~(h-PktB_AwyvT@ZT_3o$lyOcYD3$&5;<#0rCSP`< zd&Gk+G@)GFYYtA6;g&~G(Y7z_t3=W~s{m5MnF~_frBr)xysvpLtur(^Sv0K(1+0Uz zex#jnk?47el(GEdI>>o1lUIe+Ez^&BzzG_^k<)G{TJ=IICVt;XRBIgVLpj2``6Rqj4z~pJMc^GckhJAPfw=*cJTFWUFp1J=Yrs z17V(}>@DY}sI?0eeY#iga*4{#I&z(|5ZoPKcYyHyFc}kBx8i-A#S+Rlb8kkD_UlB& z3+jv6mm%4O;sm&wB4TCU7>9>61nfIE4DIccsWW&=xc?~)94|cU>|6- zCuyXm91?h1y}Y~-wW-?bS#?oU40P7YeoC`s11B;p%Y-HcSQ_Xu92pd)<_}kc>kquN z4RSMGb2MIXiTjUe>%#3JwhurjvGl0laFfDZ;km@X$$HP1YP<7Wuc$Ka0AIR{O5#oT z_l4QG)J%pSM;-s-kn;R04yhmJ%f0XDmB~m{?od;FucF>IKtIL-Qu(P!-}gB~{wwdX zV@~vjoS%GWA+CeE4ntNdtHud@YBo4e$53&Kx5o1;Ojvs;WPE88@EAGNdt9dd8XhqA zietFiQ^Dr^YQ{*0&qAeYa#1A~>MS0(u4plv-K6z8QBH!BA7B zCnh2WG5P`aQ?p80zhX{4puj-&wG8TT`s-numSu1j3FS=abad0Ora>)EYQyKxO${G* zP9H3Nqx463Ww9bhDyEb@#W;eSvEiPgudlog@pp?{J7N@Yw~q|Q z6(z5m&ZuSB5|!M=Y<^<bScp~ z0JG(Nh1l|Ju~TIE0`s+;jFN2=WoXQaoLyESia3IH?dg6QqV_t%w#-2LhQiCBKkv^L z_h)6&-XG7;>VE_EP%o^br18G0cf;haozx(io-V~_1HDW9XfLVf5+l+4Ra>yZ?#{-< zI;MfdXuV~NgPPplYZGYLK~)6ltCe5HpVSggaA#ogpz&SG&f1hkZ!>6cCQj)ZFn)y~ z0|)si%D8ExsmaEK5!y=44JX^h!`uxL=zgEjhOQbfEf)W-3Yk5asSA;`v@GEaR(n&;G;8!Q&oXl@aGO}}Oj_E{0EQDZ}5 zn{cu!4!ZT*YA^cL7!$*!lmGapb!2aRP9q8d&^8q=)RM|Zkndp{>2p}s@ekS9x67cq;s&o)t+u(lK|c`PEWS#rrRnX(8t)QPvhm-gbo%ux zF$Y_BYt`Hnw6>HFlJ_Uj(8lL@7aSb5?w5V3%N#~}a6mI`76_J5lQ5wv%ubquS|*m3 zB1#=+w8#GNV*SAvf;(o=k*?{_c&~8O3_3igxaY$VrVLa9V=H3 z&ngRz4%`gHXB1cV zpqJ#9M-brrDX@ppqv#QY&5=$Sw;Y1nO$YaeG}yyBZpj1NBlg=H zs6C7ZWgS2Ue_-XyUX>FkXTHl2YVk!*gffdOgjlC zv#VR4b8UTfXg79xd5w&`?mS(%eZ6C2O2n=R>DnS%G39)!mGOoXyd?p4y&+`kdeD;oLSF-anK#Pv!8^F8YrQzfUF} zhja;?$(2(&p3vP`S)@y>lD1(ar_bF{Xn@I}&8=P3!Ft&w**l2C>(ZE${rG^_aX}J^ zL@qH^Ol`M3{=iWzCkxGQ^|BUg^H*2+DsReXd9EAYHB>(8a2=Y?O?YlJwd{!gzS`ZR z!!q3SJGE;re0p>7dC-_Z=18$}gQ1fM*a8gCN*NZl%~EO%58AFiFEL%oWWReLi{9!e za2jrlX{J(dasrF{lt-O;*|)3`s87iS!CP&Ne`_#>!u zO{1Z14!6L4kfchYvVDin=aLepLPHGk$?#w;4=cN)ZQsUy6F<`gN*X6?V+>(KZ7Vz~ zkFp!>kTPx~Y0L?-`$%gVu9aYQ_A2S+QZ3($K6{W|&o@&6!dagsQ;>7Gai6DhIMHGj zh6%I?YU5<<;O;$*ZB1pV+8ls@3e^jfSXMOn6k;|^FX+B;R^5%fq@+~#oH89%SN<9+ zeg30lYlfG^S%W3D@k=<-j1*3t>;fEL>%*0DDhYSnk2WFoPD4F<|7pX9ryKX}!hN^S zwl^_N$S>{$6LjF_V3+>5N{#R9s~FUg8LTw+SteTF+)O7NAIK1FPGnY}S8*xyIiB4y zOLZeXkb|DBq+Se`oto^-uHDO>wfb$uVXU=_)Z{*zzmp7NJ1Et3iGLyhinR*S1L)mi6zrRn= zYLvr!l)kS7Fb>`!Kjx-Qa)G2@I6}L+v zoqav9ms(?FBcVFCCJfGpFSwev`(=`_n{5rYJr$n&EoagOB<_lW6jmg->lo2J-di@3 ztM{^zDL)^|sjA2@ZmV4{iiUyQ)>6?sBxoiQw5EmhWZ+w&#ep%kmn~J4Uj8K8&m&?Y zo?0jovYj+XD%TZBE;Pn08Z>FHAR?&a_r*$1h_)6ufxyj6UwA_au0p(udU}d2Si^}i zlLB?N%u-4wqOnQvo%>e>VGtR1tF*UIIvx=C#>Sb=ig&NHp5lPr>5OOR-25A>!Dm_B z(M7Y*y?i@|8u>a+PiPWC?v71Ph+dKV3HL=?ij=6%Ib13dWy~5=xN_~I-iK%qWtCPZ z%-Xgqk(|yN3&6Jy3JO;w_^Oj0?FcNsBRZA0E@e42l5NYNj(v&yj5y2NPP<>(a#Lu` zoo)X5N|Y<0J(C zwvQueM75aY{HjFpiN#xtl65l-4|gJ-e2;$W z*1!d6pga^jA`J`2-*Burm#XX!p#8Q|@3T8MMc*&ERj&ftCfFI{@-dK_@M`?F-YVv{ zD0~IKX|{VdQi?=>n=OX;rrBZvsR93+0HdrTWNx}`R)pdW%tVOX0Ab|48_J1G21LW{q?Ezf*#+VCNxq(Hv#tra1xixzI1C38^_l}<^kt)KwP5ys!fKrW;XT32c zY4RedfdIg7Yyf}_@b4!?1yvj+eCw3?_T5lA768EX*NOh$K7d&@)PB^>L;*z~%?Ny@ zfs&5Cr4F{yj9B=nuz!@|zlsp5BbwpHZ}zWZjyj7Ly3IC*5r{TIx&g#`-ra zVf|06@0O^PnA>CRF^tl=PaletteColor.values().length||nextCol<0) { + throw new ArrayIndexOutOfBoundsException("Chosen color %"+nextCol+" is not in range (Min:0, Max: "+(PaletteColor.values().length-1)+")"); + } else { + currentCol=PaletteColor.values()[nextCol]; + } + finalS=finalS.replaceFirst(Pattern.quote("%"+nextCol+" "),""); + } else if (finalS.charAt(i)=='\n') { xOffset+=(charCount+1)*f.getGlyphWidth(); yOffset+=f.getGlyphHeight(); charCount=0; } else { - Draw_Sprite_Partial_Ext(x+i*f.getGlyphWidth()-xOffset, y+yOffset, f.getCharInfo(finalS.charAt(i)).getX(), f.getCharInfo(finalS.charAt(i)).getY(), f.getCharInfo(finalS.charAt(i)).getWidth(), f.getCharInfo(finalS.charAt(i)).getHeight(), f.getSprite(),alpha,col); + Draw_Sprite_Partial_Ext(x+i*f.getGlyphWidth()-xOffset, y+yOffset, f.getCharInfo(finalS.charAt(i)).getX(), f.getCharInfo(finalS.charAt(i)).getY(), f.getCharInfo(finalS.charAt(i)).getWidth(), f.getCharInfo(finalS.charAt(i)).getHeight(), f.getSprite(),alpha,currentCol); charCount++; } } diff --git a/src/sig/engine/PaletteColor.java b/src/sig/engine/PaletteColor.java index 487ae26..0bf7927 100644 --- a/src/sig/engine/PaletteColor.java +++ b/src/sig/engine/PaletteColor.java @@ -34,4 +34,11 @@ public enum PaletteColor { GRAPE, MIDNIGHT_BLUE, NORMAL; + + @Override + public String toString() { + return "%"+ordinal()+" "; + } + + } diff --git a/src/sig/objects/EditorRenderer.java b/src/sig/objects/EditorRenderer.java index b59ac7e..f5735d3 100644 --- a/src/sig/objects/EditorRenderer.java +++ b/src/sig/objects/EditorRenderer.java @@ -24,13 +24,17 @@ public class EditorRenderer extends LevelRenderer{ public EditorRenderer(Panel panel) { super(panel); - AddMessage("Level editing mode started."); + AddMessage(PaletteColor.YELLOW_GREEN,"Level editing mode",PaletteColor.NORMAL," started."); } - private void AddMessage(String...s) { + private void AddMessage(Object...s) { messageLog.append('\n'); for (int i=0;i