From 729f93f9d5b287ea16c28ccd2adb111577473169 Mon Sep 17 00:00:00 2001 From: Kyle <41976328+ImKyle4815@users.noreply.github.com> Date: Fri, 8 Jan 2021 17:50:21 -0800 Subject: [PATCH] various fixes --- img/manaSymbols/cartoony/c1.png | Bin 4117 -> 7833 bytes img/manaSymbols/cartoony/cflavor.png | Bin 0 -> 11012 bytes img/manaSymbols/cartoony/cr.png | Bin 8602 -> 8446 bytes js/creator.js | 65 +++++++++++++++++++++++---- js/frames/manaSymbolsCartoony.js | 7 ++- js/frames/packCartoony.js | 29 +++++++++--- js/frames/packMargin.js | 3 +- js/themeEditor.js | 9 ++-- js/themes.js | 3 ++ theme/index.php | 2 +- 10 files changed, 96 insertions(+), 22 deletions(-) create mode 100644 img/manaSymbols/cartoony/cflavor.png diff --git a/img/manaSymbols/cartoony/c1.png b/img/manaSymbols/cartoony/c1.png index bae42f6f8957441dae52be619ac9261160014d55..57f1db910c48c7ea1d3fa9f454b0eb78f9924a2b 100644 GIT binary patch literal 7833 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 JEtfY7{2#5b?J)oV delta 3976 zcmV;34|njHJ(VDkBYz2ZdQ@0+Qek%>aB^>EX>4U6ba`-PAZ2)IW&i+q+U=NGk|Q|| zME`k;IRXhTAdkbse8p(ONop<3HsLb0zDp?;*ZP!5ky78EDeZ%MS&S(EOPbU;FjmSh^ zWP0ZDu$;lr_=BxMbM_-&T^*Zmr z_%dBS;^5^47k|H;_xEY!abkbBNS-g$VEeb_T;H`uUTfY~S3|<1>58c1Z1*t?H#S`E z&tr*A`9_ZQY=te`YCDh*rfY276(^vwj0Xw^l-(APVAXC6ZL^?q2a~X_^^n+N~ zn_Hs3_~A3Sb(zL{PRrdEcjhf;zV0$J567+I7;HoR%YV)M)y1D|X07d8=WM?F3cF;- zHD+w&_Ahqf+)oakGNma8Jt=Z?0V@_Ff z&L!6(#Zv=gNkvO8rPL~>GErr$%KeoyO`30^#g>}3+)AsR@adt)p1StjORqzQAC!ra zhK@YSsMDEArI=yHnWoM>%dCr7TYiNVS6aIADu1iqQM*w6w*3G#ccCT+sePZ`QRA#p z{TRaSauPRYASS_qxNZapXxW(A>_U)@+{VlnAt|C@WZc-8;WlDG7^aiB+#S15_FG4D|OMh&Ukt zWq%BIE)o1*LZvj8=w^wYh@57$HFZqC2(2~))m0ZH7p<W*yV1ZBU?v;B0I% zb8Bvrpei$IE!OPOz74jLZ)yK4OY`2(Rb2GL#kNKy-asGHaCAkC$ZDE0LT)AQZoCH!ISkz+(Q z_1yM@&(D7e3yT-3i48~sZnizy9AFPySxIY1gsJ$s1m>J>%@{NCYlkIX*_WF?VadPV zsM%C%*%r{0%#gK-JAbyO|H&SL)PI+0VS(@1gDul;d;HMZeU7Nnfd80QbMXsGfs(u# zJ;XF2ib&WBT++h`b)-2{YZ9X?!^7dzx2QhRXtdfg-s=lRI}tXmtv*IG)xmep9fHvm zf@-Wl>tQ+Z1gAFLEXa6ekgJ`@tuR_`c-}I|qL~4gVW3M7={i)>w7D|+B7cC@HR!Xi zTqnHMh$8I;POA+n^Ta+nd)JuOmk+kiT2C4ABb|6vr#MKZ#SvrMkk#&S5u#Tr+Q+<%&h-cIXn5*h}A7?@H-InXot?B*ynPs(mBd)WwpqKg@V z)EW(|A;nQ5WlE~JA{39`Jk_kGxoqgt&?hIu@}efL(c?Cccu}g`*ehu?H7tdQs*RY; z0qsHDZKJ7c(<>N+cJtmCZfcIlE!M_w&Nnx2d`nL%)S^@^#@_jjAAekL2j{r9^ckOH z-uA|RIq|E#8{viX!$Aq$rgrU zRy^THgVFtYZPC&3e=HOr$->CZ1KfU+gxmLoMr(tuM7hzO^(E|9C6O}p(%bcA zm)D_PsiUkyDeL$fUVqC2GN_caR%P`*Lr;z3eZ|q@G5Z&YyaR}N2a$L7<{d=d0mQt6 z$UA_TUm${uDL{vEkTk2~++L{`aB!nl!Q4JJPR%JeX_|)XwwxS+g+ij}aWg2fM$#mK zQSW*=@D(O!>7W9OyaMK4(%#M$^CM^;kfEP=!p2taZ2#WEQyn%C$pu)CF8~=#$S%3$@?uXF*h>#eJ(MdCw`Ah z%#BR$T*6U6?q+d0&H#7p32LEx4I*1J6f03R`O;c1wr^S5Xr9s8Ipgk@>3>Tc2&d+0 zMms^x9ms&XFn^&&yuTV;GPn38O@z59NrQXlekX>Hjyvh#`y2#F4FLk{`RHl-YQNKL z(qhLH3U*XQxt=F5Jb4y2$t9W$b2J5ll~}PyV6YghqdT4+mAjVOEg`VdB0WfB!DoZW zBRy@8Fr?5@pIj5!@9G2KYuf_oY8mXuGFQ7GNMSdMCiA$ zkWp^GA|ZoNtOe;`HrM*)3_(3sz>e6uOkq{k*?{g#h$PVIsdR}Qr6*Wi?c&0gPOFDg zKXssj8P8m;!E#q?z?e#Z77uqUp51N7$Yr*zB4Zhw#;GMcBFMTl+3hDyM3?_+mKT$d za+&IxYkze@zOi;ioM5VjU-RhTRsADiB<6+K!x+!bzmJ1Odz?K=WHt3L*j%tyLFK<@ zmKRr5OK&*oh*n-(M_sY1Pi6D(5i#UOaGurLz3d+D7Y3J{8_9zxH#+T;3^1$ zKOk;yPKqv4;(bY>MT{37@8i6C4)5Iu2!G8gQ_Y?UK-DZGorsIM{Hhpug%1IQFpHSP zOg))d%)+z2?x~yVF3PjK`~Iu}rC>6^Clb#w-LQx^h+~_U&Uv3W%*v8Nd`>)W&;^Mf zxh}i>#<}FMz%#=}Ha$-qCKgLwEO#+08!GWMaYRuy$`^7jE1b7DtJOMd-;=*ESbxw~ zGF+!Mf&`Y3L<%Bg)KNhd7NWFkq?kz4dECQ4?D$jUlF3y8BgX=2P$4;f@IUxHTeCPd z=_Uo^K<|rfe~bcwU7*#l?eAmTZk+)BXW&Zf_-jpI=9BbBM~fT*gWJHxbw`u;fXf|V z=t-9h$&viDgklkRKcjET1EE`>e<;nJTl*ZR4?vb?wR{5{90Fq{%3k+)cVGA1{_Sbc z?+4`xa@8yky#kZB88SQv6a_IIY|cvn00fRnL_t(|+U?!JYaCSo2JkP9Mr~7Vt!>n* zEv-KSLNEQ3B^o0YoVUsD+usl7kkXwj-|m<9X7=q&0+V4H zCVv0`08EA%5sam$lN?L3oa9Y$K;x|>-z2%5WRPSj$=hOK+U-p8QCo`j+odGCM8vdC zanC0CzM~wgn^AJHG)i{nIxx^ zJecHxB=?WtcMQbLq}h?=wIt^Yjub`^su(fOruoEsutnR|BnzTv+`XRUr!6eT>b8>P zcJVXLqsIAdD8}0DsF%S(`Z$_P@h={*xe_Z#x#F@GsX zl3ed4QIK)+PLdO2^n6UQ6oetJ6@hu}I60MO)$PF~zb08s^MT!B`}2+@`;y$5ZtmfToI_wyPe|k5` zMKLG{-F_&vA1itlq)Ok3KtbsCwSNc{gl^v!njX0dCe9+z0=s${4L2A|a0Ne40f>f>VDO#8OQ4k}Df`2H8g8V-& zuAv}Ra}1#%jBo_8l2<{hw$k(Q7Ah(TBOHNHkg8e9s~}bDyPDTB69tj;5YB=rNY&;< zpdfVX`;9^$6e@^#cPRy_THiPLT#^MbDoCyR-op7lqlkjktnYI5nYd57 zf|z0rwNs1=QmYcz#hMqRf`1r6y4@s31#t}0ZI2igM9$szi%~&pRbnmH&0+-Pf+$F}N?f+bC+P}OtrAxy*`4ID zC>5keCDvjchy{xZQmInk<+wqV3R0s|Z)_uof>h_JBo7zbm*pl3Qh%L=l)G$?f+$FJ z4iwy%N|@? zRlZ7d1J07$qhd9J)ZmpQM@O*VU7}Tx8a$UW-y~emnJfjFcxOg96?$B}OuA1-aO|{h5Q9v>|!@?p&0D|0000R_PN4{Ney`E9qM+0)8|Cy2c5x zYXF!y0B)_Qa25cnAK=|jdU|g_*jE6N{Hea!AGS(@9oDCw`dTB_%pfcmY>dg_f}yX^ zNzFX2M9M}aVDa1{LyEJ<=PNmH@EiQqvrzybH<9?s+p~M`alFd$ae?>-Jadk{PV~oD z@854cY)zDXlmY|C`JL89nEjt}2oAEDZqVdr`vW2|fNrRo8>y9@efAOH4^ zT;AvA`T4EQ&0orWGR79e`T-B%9`i2!dxvX?*d6j>wPT$jnAbE|0rhINXY^dPkZL07 zMcDhr?F5CpM(oEs;Pk6LrT5JStVA1H|GC7!&4@kYEqwJ!CW)p0HSF=j`U?9kio^;( z;D?>WGrvTR5>rc*OBE&p1NW|VBmi*Q>fAlUjENFt6S_9x^>{3KuaNs15M-^CA7ld*T9Q+1;)c4ObY69|)G=SZ9pH7 zN%}SXimqD`^}iSf+My^Stye0E{E9r<(I8q~Mc}Ep>vQ2q6Zw`z(Vqa`kh_RB1)eX# zHCo~`IQ6p4C4v-T^53y1Ke+Q`B#`80PP*1nh{p=#?M#;0;4dUd$PRLM{U*cU>vQ1d z9O#v)7Gi&qY&lZ>svM_mfZ~Tefv)5HHuAmk$Oi<0dVWccrsEH6{@ z=jTe*1t8deFnO4hHvKMpY33V63i{-sg%9>M7{XuJY1w{;Z)R`yZt`tXZql6^V`aaW zaw)jdS!dQBwo@kGBG`Jfg>IG3E3KQKp}ka+2YSh$U?fwK*Pvac6~#v?;`ER;k^ zrLf|A$~1)ysSVP$>bHB#%cT@*^|VQS*vPKJ@3h}2=UzCt5yYW`QDA2BOfn2IFu505 zRk~^s`E(5VAc$L#XFq-CEB;q!T?5tzR)6BeVXPG86vh-vRxVH}v(%L0e3YKkVHT95>Ri0+)4p>< z6~J{5x_7)OzEHq1K(EDNKu6$=lZo~7yEuyhxdst`v}8?trDO{&QY_Ne!V;UO#PVn5 zjxw~>nu}P9L{&vq2ggRozK_Ab@@Ik*(ODh_3SRtYGlo!Ek4%bOO-0Zwbf(OH9R10@F)Dq&96 zN&zQ_j+MK^v&i-Ab?gm4(sZt$rXPLs#(U1gi%Cj3|6>_0R10v30Sw!UOgf z=MGIZ47dze>Md>}vMD8qKSfs(AxP7R1Aj3udT&uiIuCb#UHnp4TGrS6VZs__y}P~4 zkz0HAhP;;;>Okl|(^Z?bp0&DFx~)Y@R(^u+UZvhTnpUVg zx*QIoz)XXfr>TI+UK5U5cEQG=5n8b-Wm8*X5OaHnpgL zL=O+0cu2fRz?Vf!_?j>hfg7=(BP1a#ye{c_zk63KJMm$HF^BZw`@={jDG3+kYIc8a zd@6k^FYPofxzo|V@P4mrpS%h&&@({YG33q1V|K20d)V!@=mk8^U%}Vd^rsDEezdu+ zzR;O0zD*`iPJTp1Nk6-@jvF587Z)>cEkVozCT^jqt_Bn|JzlmlM{TA3Y#JWrWwtdd* zwi@D>?FPTN4S4p{_9qc)A&>s20fcT|qW*=~PvRCtOYl!iM?nq#r*%=$Vxs<2w*k_$ z|1@q4%;*0s1qn+LJVBzrGWsk;>Tmgk)bR-Zzcm@%+x~1HUa`Ua&(&2;(ZJzdbN1cx zm%Yx(?yUvkE_|1__x#np{S=}AQHH}L_pb%|iX!r`PqtYpbu9PyCO6--=_J1p-;5=Z zl#cwfqLV2=)%q58$x_s*2#a7TlJtwVol_C9h~8a_9XV=Gf&_BVEP6zWCaQ`*Z&bcP zQF2b7dQX#b{^90UU1>tuSBi(d+{;^VN8o?VrFXqq`^DI=uD(CrIT*lU{PSU%zyCBL z(S3nv+WCw7BGI%c9#Yz;N$4Ce{Cpw?d|^UtD&{)o!PfW1{=flRdb5JFLN`#mqL$GJOEAU)>Hjq{|lt zUU5q}R>`z#1d1aQ;0zj#!=`sbD*JkWwN1rhaYIf0+fIT*qc#8i={7F&wYy?P5uflg z>il14_Js~N&cbWwsFq#cG^yv^{s8HBe|!9J*4-3TEdsR~I8NRyHdtOM@?pH-sHfS< z={rn1%CyEad{zs$!f+~+muJL{vp==f6)-Ng zCADLy-Mp!-2krUq7Xw|o9E?8cf95|_zo8YjgbAQs6QtRzEpCs;UmZOUO*nfqef^r6 zB?8Op{78sC#WpiGQRee7!Dfb|6Lv?Ay4}d|FVH}T_^YCMv#J|zN=xDp=Txg$Elg=S z9TF4`k@4Y3&t}HMPNjb5ay0~VO7}QaN`S>+uV?P{`amf5fIi9@W&)3Tiv$U}VP@_Gz)3-vJ_#ZPuy-l-bz_jE19 z)*ePVd~Y}^oaO_rTsAdQ>R0I`4MUUE0=+5~D9qF#htT4QDoX)l1w%A)zP5)~#M;Cm z(LFXUc}dmPv8VPL9W1(r{ikEYt`>QAd$nq8EYS^Fe&eO*X1cok`&>F`?zWV}6w8NYl`&V~#y7S<(g2G*NM{?P z**DZY>0r4X-(t`H?78~gVQ=f&;L%Q8|IJ*%s_c%dVbR5Pon+{a&I6LbG6V6o#`f&g z7SF8RA?_C#O*pe559g4BH;ylQaJe`DyP>kIsCnRuyL+szg9eo0x|d5J1)I*`sAD8}o#7q@}T> z&Hng%!1)95;jh`sU}>yn+U;f<@TSY=p}N5eoWd-Z-kn+=BLjoa)zMqDLqzgc#2FY& znekr!BvF3aLd8(_%#EF_>D$1adp6t#hFzKd9FxJyj}K?FkhiWznf0f~4UKQk0Hd%! zlC`?vw$;(RwZQv0QFM#|Q&<`1^GMmQGlqcH=}7^~^BWcOD#~R@T>N~CAyda)&-tBo zz3p_-%&Ng;FbW22W#add#(lWNUG-y;XeV-KMwv?Wm+cy=6o8gX~s`rdEirGi6&cT98kaO}U7L)zYsr1d<0t?oc@pX>RG@u<66{vzR;2 zRJswD06imh>2r~(dP9VRv24c|BGgp6a7bv}L|y&`%+vy%f`JiRFtYLW%7+bY%VFhk zmiGin6trse0^xXLysCc9SX&@&ejp>a1{D)2A%hm=hr6-UBxW|ZA}MI zQG_W@`k1EWN07IHVAC7MsGpga9)KlbkZmz3l$&4~7tWU{vo|?&EO0WkXEdoP1+F>E z#nQG|c*H}G7^~5y1#NC^$ww-M=2@9dkPPRVRoTb@N^zeH77#U^Lu{I@$SJ4b^@Fdr zHcvZ59f3le>>#x+eIj{m>^zD70oIX8)K6CA=;NL%ZDBm)eeW2)KncH(UrW3)ah1!f zfr3)4*b(YKzM$1YL$ibbc>GR5L-+XnAy$`o;a%Bz9wAmd4u2XZidq0(VffYE4Zl!; zvaif&MsrUsqI`sj&dG8abF@~) zVhHU=A;@q33mCAIn2mtDor+NBGKEEw!{*k+jh10#Prc zow&f6A)PIQia=CPkuY3`vLW9sc&}wu0Z84dFoz99q#mQoax6=TP7oUq zXcK%#{d^k%!U(n^7a3%!au&dD5*ZoteX;#GzHieG%%)D4aQEx83ijL$7>;mQxO5^Q z^A|j)^l`Bd=@Dp3D05Lu*GsV~PV)f*T4w5NIrq7Xc5K?|2GSW%YT&PlOGmg^E z+|-9osJNrl~XP$8qRI=%(d??5pv!3 zC9BV%k#=~m??E#%-239a5|P0aS-YxOs6{g6%bx**H@MLAJLymEov(Lpe$qUSzcgpLi%NjT zV$-^9^!!|8>i8Jxx$+qLy7+oQywPS#a)kWvMmr#~YY3q}r^4kwAH6O9*mHKVFlSc( z-N)Q}n_T1}OpVPkZKP=VC?+O`a6&;S!pCzwW_+%FrQL6)jv z3mpLt_%nhkH>0ak|3Igx9&9OToQxkLTP-K)yC?0q-1apif|znn)J^!Q>0|iQROS8s z_rB{B;Imt5r2ivN!0Ck3*P$B7-HcAl?V4yQ0|2mE;<~*uUrL%Ca0F$)6|D42Yj7}o zMP$4_f+gU%Sk7neIuJeA4%2+vNEe-JI~u#8`Sv(kqE(fAeyv51`FtNY%GoAf{|;@Y z+N)1v@ubxk(doxkk87~OxN9Nui6A7$$6BD17(9J#RfTKO*5 z`3(ylF!IZL)VkewE(HVWZ!V{3qE?>dUC}7F*p~YI2L8+P zf_m2im+tsYeP+30DJ~`$?g#(*Om^>i$Dbs@vK!`dHYNJMS!84e5>i?<)}#jmV_;OK z(0;6VpgK-t$S&qF|G})J0rb{1Zg7|qt@15~Lcf#zOG4kx8rokBX+V4ze`~1t-Wx4l z)-TX=H#!_kDYb0mKgv}#9aYRcWz~PByhW$sTje12<64PUfKn&>?nK5j|2IO8T_4P| z0&3RrKbf@8yrqohxLL-3FcS4_`@HbKPUzM{0yM0eh3r7)FfQdA=v#tcPF?Puxq@0x zv$fH*p!4R4!#|J~0MHRhf(ZLm++iKFkHngjJP}YrH6Y#BJBz;*XO$Ehl@VT7RHZC#u_uND}Tx&>v1@n&YzRl z`kJqG^rbDJ0PtXL6XM0VlmhIt%tBQw$1AlY4Ht?y&+WlVHyTNt=1x5m51Et~5rG%f z%QYw%dF&&hW&_h2k^z(A;LF9^fJ494snF$AN=c7eYRLL0tD+2u@uMA5u+D3ZhZW~3 z4v4T?&GheKvwWu8nag*K*&f^Ee8$UiT$0Xm78N|!y0T^f`(8f3Z&NPD@sxtTRqx5J zCfAn7>4h=N+qGbwsda8clrg)zIhmd1wOoP3^@Or*NGv*4{)y#wzv7IJmE-*>u7Cij z5B2RI>iY+p$BEE|Mlh0Q61Z}Yg+cx_w&{e$hu(Q+HD@8EJEBKTYBv{wr#ZwGXN6n{ zVULMvkA3)%(a5u2t&MTSV}hB_eE)`gpcc&d=Ki6hw>eJ1pTK+TEKpWZ(mg-XJ-Z-5 zaiMPJ+}OAH_c9Gc7SZ6CA7Nc|cv%1ANA6CJpA*#QQv4$Qa`B?Qbo=^h$7$~9HjsN( ztnq&Ae|}84e?zm2N(6GI*S-$>mT9xl>9_m(CS1SM?z?UA3(;$#hr65e!27J_Q}|p0 zWq?lSN+4owv4dU$v+V}$Sch2on!x=`mL~h^76p7C`f3Et*6;Gb(DhEoD?n#LoTnpl zzS#Le<$lHQ*w|APa-Pg|o~`hZ#E1V>Eg&erPi4H_pjiB|u6l#3bKTX{|BsyI;J3gv zVU-8Sa~g|p75I;cz$$#m?;DqVuZ!DzQM|bZ;2-H#%83WkQ@RpmnnTs#Rl_8RF(GQm zT*oQR?^vK@>xZA0OEeO>G)K*m891vS&&qy`$|*fzY)Wv`BCYKN1xw?xqOWh9!-!*2 zNBhA3yyK(IoFs12hYwb;kps>CP>RSo{Mh+t_-4F%N&5F{*aN>D{2zKo-3M5_(Uhd6 z894&4Mkpd8BMw&Ntq+>~Gi4i?xp43AR3+FY*Bm-N`}&{M48)6@1}vc3um87hH<&%3 z*E_N7Xo!ac%&M*3R6;6QMnnd~1T2R|>t1IJOUAYl;82HJFAaRSeGk)jPY2;i)7iWY zEy!MuXO79!u1`XS7J{u{)N?cnXDAp5II&n*!yT-%mPCiI!+2G~IM4*L+r9_=?-WIs zYY|-N*m^O`j-*#&0UX1wsaQ)Tz;jEH=^`SuvW|cH98jJX02#djU6TTab(y>at zx_cd@yRqnNdL5&pz%A&%DyV?hd6je)Swm-k`0`N{|M;OExr_h!8z~=mQvvA=>|I-^ z{5$@hI~Q0I=s|Rfd6bwP@~}t-(;nLwqkY{E4u{i5LtG!-?<)!n{fm1V8N{2hte!TI zZuRm{R=me=J-sq7L*x7rID(~r$o=8#b%h_^yS3vaRZyOUlRI@%BI5A1>1&6?hDAIv zlU$UABYlfB3u(>K(R|45w_PQCESHhw@3?;`3-MbzphGbi%j6*vijC2z^9| zQ_u@GEfMhbdo4xK0uPKIyT`DkyJP1U^K31}F^wRZ3JS3!lvvBDSpx~ND(EOv-2Dw1 z4k)KfG$zZgBmB0ZJxPg94YV{Zbd_pbS=P=~#Jgl+Yx$E)374qljdR565`Aa`RD4bv zVh@LA{L)SoL@*W;jNcNo*SurSA4DHL!yQu{)sV+GL>y%`^9grG7O|UIIwu{rOgQGD z&~x*u?;l;qOW8-ZjqKud$VoDEiuA~mD+4cP8*qDN+mm@+Z8L8CJ;$N!0d8@XgOMP; zJgnWiH&7_8WlR0*<=%C1j(9<=JXMd1dqlcS3Tq+4-gp9bQPu&Di@uX>IjKt%&ktq_ z**?|?aM`9iVnY4;3*pC*I28bqS1ffXKpaFwdz~Ix>^nEekNp6pZfZD zmGVt)0iTc@ckgHW<1f?5*W$ceVi?*#+`0FxsLnMGJ1)@`eSrYAMP{Hw)*NogD;j4Ex2#|(4rd06l#VYSwhm50U6<&8 zs_Zql<$b1*mRm9|c4SVYb4rNO`N@puCa>mhNd!{HN=anVo~-F}10w_nW2yA=#fFDuwaMH}M zse-fQN2g!3YhTx0zzQI$dtri(nBa^XU82e*h5D`cv2pE}+VeynHsJTb67(J;@WNRm zRL0FIll>R}KuNg_Ut1-U#Oybr4hpQd`-i~Ahr1O>E}O|uKQY`0&kdPoZfOHSvZyVV z9#m-~AP5J!h&=+Y*y6Ng!~czbX$yjZm{8eFAKsDU&U_;lr}YbQ3m}IHmYK=utJg=LZg)Zs#?Jm)xp%a8H{Mt&b2N5326f?k83ADB4FD z`Wz!(V03=zOg_1C5>&RIj>#0r8cF!1>;FuXhA=ZNMwf8G124uFj7hf?3gu;M^o;Z; zfzCFrifERhn9wYw*Hh+tt;}Cd!u>Ki>&!~2^&GRu=lG~biyeo|W3OAx?I=M4J3+Pc z0eoiI`vTD%sypGDOHM;o)hgj*-G0R5xN7^cwr1@0FRPq6zYZ92e6ea9n6t3M9P3p1 z)-!sr6~iMB7x6I{K;kN~5*-5_QA92_Jv{ug+jCXX^in0@alB^5?>*|W&){htXB#gi zbfE+xSuTfeU?>8vjBPdRlV`x6XV+1dJ z2r*}>+pQD=b@h)KSweDRO8Ie?TW{K?04m-^t?}oMkNaRfiUudxu;0AXB(G#&bJ*A} zkHg*whniNo970`4j?~=0lwntHCnw*&ve^jH=rns~{_zyFwpOxOwsK6aZ$t;5@khsIZp(;Ef(Z6gm-J}oe)fsooEVwP^ z2r^&zQ@J$4&)O0Ydg=%Nt#DmbJn<3Z`(+*|Nfm1rz7-3`S`6JfiftXR|M)+O3xMuH6QkAvDU6dDn#m?+|G@-wyF%T`vpfqk6z zwEUFmk&S=8bu5E3i&$Pe7v@x}S++ZEQ(Edw)R!lgO``gF1WoS~Lx(3>%*%*Q$Vzvj z1yIM?EP!Iy2W0b?A5N@*R0Y1Pdrpi+6@GbRGA2N7css@PiVwaZcwsq=@uH2z;r6?x-p_9=Lv6Q z@v)8wyi0j+sc!4126guEHWj2&q1ntzRElecVF0@toQ$(xX#T3DDI2&7YNk~;7)W>aG3t1g!cuuuD% zuix0H`i+r~K3h1&$^JNl6P8bpGChSR;M;OXMy53T+bl8LB0K2kaB)H~qOGyoP=tVr zN^jyF#`7_29t-#D*^Su5qHFTHFKqlfYNCs8cFYfO%P)=ekTug$pFf^J1g~mn(O!4p z9F7Ecn@kMussATQTd^?hJRDZv%4T(;jk-zyL7&U#gDviRJ63wokLtRH zE25#XScaCmMWy8ESFk`+z4Ga6& zvRr{{MQ3e0b=4pJhwaDrLgta1Nqn5kbLAS+);Oq0c~CaJ3nH zLk2Fvy>uH76DY81Eyu7c&DB)yFw)dT_d(O`E>oP)me)(+($y>63?-?{)kFg_k6eA9 zByz1R{{FiZY$ApM^C>&`r;-G&eTbcId{`kZej#7HYvJ2ckgP{{z_6M{ANU9ri~}kp zbdh5OvvL2yj~*3LMAVL66>B#Mj6W@`LfxKs2Gz*9I-2aou~O{6_`ZvdU#ZI{{8I$!d~E17 zjQYO>uN0*~r4A06dE!I6DXcUJ&h~KBr`*$<$zVEnj6?#*feinb|1Hvqj2H=EzY*xC z!ECnVa5%TX|6djuP%a_+@?W(81<4Spf9n6wH1Pi`{=4gu2C)2JR3uu(@Y7LN061bFvj zomqYUy(9F1n|lEOG1Y$=7Lc7w2LMF6FO-z@^q#wWyL&x%_W-LaDSP!! zi+P4lMuxjIvgfOR6*Z%fshaKv)C6Dy#aQG+GzSkGA%#X1ThRiwe$N9H6&%K)!YEKe z0y2(TpN}Ml=o|hPTXDkMlBk$3R~tbkE_0pd+he!Q^RS)Tlf0%0d<+3eI$T6w3`tU@ z$ns$Q?O^}F#umRkiU{ffP!KdB*t~Aov4D$E85v#(2EQA?@}DLq05IA)7(u4UJMuln zEDJ1T7#7AGEvZR>dxaQ_pJbCoPxL!ARqw* z^`pYM0h}PfW{92L9|+3=9;*H^l{x0Er`X}S?^IT!OgmIc1@(;Ju_wN%DL)I>xH>KG zLvdSd+iZFM-heE6VU#HO`pGB&6r!o`PkVCXKTcLZJ}#cnLT3GV?-Sk~#LjN>_Qynx zhdcmmc!y5j@(DCCAfMnNU2lsY9pF5-A};hfk9BM$mv06NcNa}hJpQXUDn&`{3kyHC zw!UffD?YRRVj6Pm)N73~y?OaBROb5pbiMmK6eVnlQp34e?;ZWCRmL=tOc-Xjyq&0a z-Aa6S%{&e1SGQ|7<9WELPwAPUoE>)}Tn33&Oy>UlXzC8}eU0x51X~jW-aEsvg3ymE zE$u;Pnw%77-k9&_0Pv^7y=R7t0EB%0c4NZt?ojSVt?&_mbW~6F1OO{#D8JE{Cb>ZZ z08lPO@w``H{M$pvhrwg&!CmelzP1q$Q-t>SDpDvCA&^Y3Y`AORC~`%Ny=UgJ5txx@ z7RBg4k4W(#4za>_-|P zwInqI4DU^9K^@Vj_7e?$IFu+A452uVpCZ_nMFDQ6Wv25DUI}J`iauB*lpq9!>GyI% zQYtk+aD065ub<9NSSZpA&c{ASnMfr-5fr7=F9D^DRublHPr_DjC^ed*oKl@~GhpB4 ztI83DGq9%&FCttT@ugDvz`R4@TX|c3TOwPGTWo)x5#`y*dzM}pe&;gy;;cdcgW`wi z4?KrVVFlxoY=f1`BBKXliBA>lidqcb=|@&liTY$qjlHE&*DR|mPMcD>7kv&LKAjW2AKkl5t#bP5So%RDK?$M# z%$+RqEO%owo)(^9YV;SPG>tTlG)5i)qpIri>eXsu;}hc%qr@sJ!;pGaV-ds6D#Drc z8sq9by?sMQL#L`Im66p>mF`AzrJ?3G(Rk*4T79}orTT>p)|;IJU}AgvCVxIQ7t)#t zACy=>N5j}curE(X<_&X4tZa2vk(82%hKOmC!AYv49R6me=S8l!4&e@0MaD^J%<98K z?(f`;<)T{cLJk%#)#(}OW;O5{{Tj9XF7f)`6?x@dDjnumC^CgX4NePAHK)XJ+`Jvb z1;dpJq6!*qS?SYy{%V&p#-a{ozfW!z2buZZR>*uU_lnhkuANJ!5P=(`8`sNp%$y9tRtTruLrpLAHT*dpURc6Rjs&gJYv(#ba|>VmY!x^TInhJ2~??Yppg<{h#u+ zRJOD^s5fpsEjK@C>2wQ!DrH_~X8hE$NwqGo?$KOFT}Q=(iguk8otpePr@r^cEyFEU zt@Q7Ie8XF+Z*gr2v30Veb!z=w-*=GGl@jtXB>qMgpEPoTtcLk1bEwycR}ZC4q*t@Y za}VS~KL1VM6>u_}pqTh3ve`m4!rlKO&oF0N&572j-Rtd1RBW{7n-TsD7=I4qz{*h9 zmWKDKr{zZA)M;K$Q%>*i%B6P);s-AdB9{wBMGLs|%|*Pv_6;em>;IUPBQ8i2bXltn z)m73(IW_OF3)l;wP3z|0x0d-;pW7bN!p>l?3N~SzG7_u8tLE0D5}4MZ))C!4_k8Q{ zHKo_=cZj>dyGft|`3TDi6pd0qJ;T1b2n=TXlprU)&CDpN=?_`dn$6t_z>xKTD`-*S7Z5!JcO2Qc)8EzUOm*5d)#xNMm!=tsE$en<1sS+hJd^_QAVQv5vi;%+ay*RFq` zM1IfvPP`dJn<+44=@C#g-upMaf~Ja}l21BaUMosRGWAG-f~S%u?$IAAzefo~0lmz< zP7r}f@yV!fN)|jUI)C6i+JVWx(4Ard(9a@ed_UU5IIEI6wMeyAa-{QVvVFm>!m`p` zLT{7NNuG+;Y}zR;PJ2$FxZFki=OEt=P1}qV6 zQseSQnBdjQw8gaWxX$X<{5H*~5AEUz)OJBx^?Z5L(~RY^Pi#!|BRph(dH%Phu9<-O zTC?qCL>?oIIy$EQ;Sy~I_3Lk3%l6*!h-=}9PO9B~VTuU8qTa?;MKFPFoI#djgk3EqyDmD6RbZI1hFtyTb zJAdIedB7Odc_#X6cIjE?`3-Eid&wBfSbNrS*5OM1s_9&=KDv7MBK^wMvQEd<^Y0DA_ErP0)s|Svb46v$12j&IhF>i1 zzL`#O`ZE!imzEb2%KvZKW~sO(Xvcnh&6(W&@FRuy#+1rk?9P+UC*u}>+PwcXF8!b~ zZ8Ob&CvEMz=e;L$n=-9C*pb_jUEglu(tZ%w)g0t_zRQ>|F~0J*E8v*sZf-VTN_M5| zB+&i*^ZDr-%}VGi&YSU(js-u?gSt-LPV2w&zZDjgRw8HRp4~2gJ6wM4jPWZxnOs&o z#|wWuaf?1pBv-;s%t{=IAdT41mxM`4eV2Q6vwK~kG=Z4l$fvz6z8$Hjr4b0dnBAWr zpUj*r%J`F!^2s&0>}C(MPycRdpm%_!d)Qw@$m*}j)$bm^Wk2S_k~MPOtzhtLuDj>| z8cq$rR$Qgfr=;BBfHF_6?L{6h-Rn&pCk1T<0BA@EzS2**pM&k;2HF4+_y_=yZvo)n z-M!xh03SgB*s}ou=}Z8ibx*ebtO@`$^y4Ur@EP*$e`U%%DkzZXQLNQtV+PsR@BHv zq^s;p!SKAWV_c*3FUx{$6YW+VzD{^DKT zqgTAhN0=S?5|$!d)~CN>g-}N7^XWTY3%F=uQ+(_`3|=o=7Xj`1*?f^O_ejYda*pjl$;6g8t+?4jJpc)k>Y@3@eOki_RTwi2twd+G66jTlDgyjc0p>4k) zxnO%wN4PXTH7ISviMR#Xh*0M3)notj6I-yzavKv}w+PO3VUHp#P5u58>pJn0VIdQ@ zlPH)(t3T3@=)i%!wMqI4t1aP=at{sg4r|9DJ~&HW3#<~g<-Z;(R+C;u6_*Vs2b}|? z0Tt0(!b%VcX34_1))&GaPhi(QILUJ2Dfy(V`Hx=Fg4Xcru^e5fGRm!j$Adi?6~4?;Os(-wHmo3TF-@2xe#xarm{ZI}?#8;X=uuld zIQ_sX*}d!M`2o2Mp4K76vk>cT113$m-d$DygWUX3`v;4r>|WKRx)4-K($KVMaHcul zn&U$cwj*k2LxU;Hofy?cp7e4on#)WVO8-aEW&$#?4YDDDX^p(94?zjR^A}byOBe6Q zbN@bl5LH?_Un6h^T4zmaPdtEY4AL%g4X*c1=|tJdty`lJ0}tSo_WZCJa8Dq!ZTV*3 zfbU=(C_ztdH#mlvb^_$~Ir51}?l}x|h;A?R8N%6m4LUh08pcUhMoHSB_KOrH0d;X1 z7In3W0mORm8`adIJgi{D&+nfkk7mX?V2I&+SIWVedYGM+!rRf-*tYOkWP__RX$-*P@Z3yO zD)n}5I3VZ7U8a?vjyX@|rvC8=(~4#fo$CC#Oj@KTiBOi9+05f$l$~84kw?UPH3j3bY1FL36g-cJNj)ZDZ$vI zv&?2Wl7>zdl5t-vZ-~sgAY)O3Ckd-BWhWY%E+w=vitDj<%*)ug!a$qGO}OGe61s45 z_ws-2PP;>?+!C&QN4&vijxcyG4utft{|)vzKjh)bs$T*8J?W5qxq91}Z4@Uof;`bjQqjBq zm<7wCs^pn7KLU1SYQqn+nBSd%X+zg=wi+l$y$=-<} zJf}F;N!K}*56Z+L57Z>mg2W(+UVHI;MPteW>p_>7Ao!4E4&k@BS~rVGs0z)rst))S zepO}S`0=eF(kXhG-I6j+5cN>i@>cG@IpAWlfI|1Q*^E*j)-X*7IvEE@rXVxn-4}UF1ckDHT%(M?;9(SRdP_$@l ze~u&`N;T%>RrI07AQR%u-^6NcCNeXxnypZE-_HMFvT!(0W_f+)9q+5bAC6hMTctCHx7+Wja>3E~P_i{>5*Y#H_mz-jC z9trPpvuKKx%u+GOhT~1pLo{P7xvA4n!3g%0@GBqB9CY-;kSz82W$*BVDCP77MV_Rs zeLt;HXM-P%R;RWQbO-J5@5P)cY8!v7=<4RXPMY-)NGplCk}zG{n;~52BaWNePvKB| zlQ$vWP}exGCJmiTQ^h25fYZr;MD?a|it#YuLXiKCoNYe)kHX@!f>L&~J-NNvbFQ%A z3lHxEvW?JFrRp?ejMc?gj>xfOYTiLNa|mB7(j71@m2Jf)+~3x%5ABaMzBmej?)yj@ zBzp(>jJq2x$+DKSWntQ3hccviM!au_U=#M(RYMKiqyT@+!Sa;UB4W!Q6Uf4mAb!o0o=Mqb-DE_kWu`q4{0hco-N)3p!1)0#jmG# z#IauU_^-u}mj++FC!$l^^2NHP$|BGrynvP3X{6whZc}?KhbtfOAn>kOn^P(|#^?5f zW^oJxbX?B;L_A1gwQR36(bv_X@X$$4T-L6K_1WYS6zvB?ED-QWz`Nf@iyh=AsG8{I zrM(m;Yn3&1a-TVS-Xw(N?)WTQ8rk$od_KO;QgS&@Tyk!yr_p-1!9K); zVXofV51?qnVKvE4vEqjQm8!9P{rXjo7!#~^Ao9E^0Wa+rr=t4dXDN90m=WUGuxy8o zOv&-jnEE@x-H_?!1cQ32MDmICK3h1{m88zWkhjMT9sr?&hyN?Pq=_BQPsp>dP%RS0 zPOKUBDb3C+!ggxulG;r>6rFj7FDmZl<#BV0m{85Sr zzDvas;gR{kmV8x)507x)oj6Qu+~bgi^VO4k;#0O|zJ8|#Ry8FmA5*ZY`C6OOoq z1qLpO46G%ZdEM2>yrdwnV>g#yI;(+;h;L%_#66kbK2&**WA!;w6*5m;H5jyOLZh%n zhM)gp2YR^NV}kc~#Di13zkLDP*RO%mQDwGT!j_=S(#?Epr1t{)>Qvc{z=QCJb@6Jx zEPC@Lq9nJ7KB4VYI(~>b`la$y4J$Pb`YicsM{hU-@p3&J`con5wrhy^h_m2tw3YD zYsLX>!do%v**?pTihRBT*>Ke8!1W0uFW@LL&y?p8h)N~co8{ApXHc4XC{4rN{dLl= z@+@sfcXU0s;>3qp#gVN{S=0QREz1J2MUFhB6KuF%zsf3v_V<`tHK_A(-Dj{kz{=kI zQsE59S{gtkPZmAvXksYsx``gr@`DG3O1ArbvW%NKc0G*p>rWUGUOzWNmTgf7`;Xxy zBTm$-X~{IM4%v~1VDpCdZ6ekE%?bXx7A0k!VCSx+_zZ7gPOXTf2#y7k)cTW0FW$GZr z(~*6jHd!hbw@4k8sb5vl12_IN(X7T2J~O#k^W~kLIn4`iAFTsJv3G(fXylCYA^?qP z!ZGLdq)Gm`QFDF0rr2UIv=!q0gK{Z;&#x=JMCqgMb-hP2A(SOFa(Z7*`S%V%mRwt| zKi`88x~ksH=wbNmd5;4uk^@omk@iX3d@&lv8U;`9>B*AB82ge?PkSVz z9VCGhH7L!cb^OUZ_uSxw1ZGk212#|9UW0Z$I-70rjU+7n_!*rY`IDnhHXa_ftBS~J zkW3xU4I{7EP&#`&jzCS}JHQeH7K;$}6v?dVRw}~2I>B{WW;##8VV4)&9^}G?%=lLQ zk((_ai%0nbq?k_~*B=FEqRZI#@UM|A|7?8v1rI;^swU0xEs(-Lo{PiPbK9cqv0+Sx zNRlt~dpD0^xobW9rtCqZ71N3iy%XYZ9?JXqSm1*R10x64b4@{VrWKtO3}3uqpA>x8 z$7Tpm73Yw_0(~`%-zDG7M93rl{;ZNU(`}C51Sd=wG2JVw0kXlEx}4Q7!nqTNsQqJG zb3EH%!i&cXO;H7$cd`arVCp}zmynGKFFTKMVkGNkA4qB~tKIs*GQ#U}GQCR^QQTZX zv|1x9aJK*_ zY;I82-gFFi(yOn7{r%i`6*B!v!ir(0B#v6ff!4Hf)&cVW+bkq=Hul z-s{Y4wBFCqet)WAI$@SJVpbFAhFvmS(l4pv(|&)@eUQFQy*028$KY`o*}Dnzj^C8! z;BbCNj@@GC9(;2b*VbQrIHB01QTE-&YS0jtQe1N{x75TP6tA#bR~|AxJ{k5#bh`PG zhjTnWx^8V%;OpP!2cIjV7OVQDJIkqp+nE zT1#kq!#;o-;u)3WaPVEmNlsX@laNFFmKDfG9~q`XPRD6 zstufAxT&896#!JTt^VX@5#;d!2^fx~uoHd*%V6(#i$fXe-gr1$6e)afjN`YcbLZ}S zwY)`k#bgU%EocB+ZSpvOQ{9FMmTNk7WnKamh@o!G#GA4Y9hwV@;Y2$;`czOx`E2=e zDG7<5BNbR5LoBfXLy4hK+SyT$RFE#ZygC; zd6eaPT0yZ5@~h7B1S0m5Sl%J2jzIjwKWAyQAPI-J6-k3Th20E{*@-bID9OFYM0tGFw)d2pCn2o76lw_m7iw;B3Z3OLsUAMA%(lv4@Ay8D_XDnRHT}WToPIH?L=36V z(lm!dY1lui5sjcmFA-ep-!#2u%m2(m!@m3LHI@}NOg_dm?6LO3{5FvS6c#Z=Kf1gR-u(1bEm=Cm+AG_AV=DNb<`I^Xun*0# z$AB!d7t%Dy57V~?Ne$(GfT_pbK4_N}ys3S@jK__V)*EYGeZeuU=u_^5J?-OdhAJ(0 zS1x|p_4h=)BA%xx@5FM}x{?t30(+Q0{iClfRt2d)zRhc9^N8nt1we59o1Z0#K0G89 z@gdB~e;V`)_Upf^*Rksgm_PJJ)W9m9s72jlHFcEH2*S9=-+<$(7bD7e(X+l#?;diZ z!F#`G{%7L(KXS?c4*n-0{eQsC|75BEQ<49Jy~gou-{AxHSJ8DR&J-2*Kp9Y1(NV5f Iw0ZNt040H@SO5S3 literal 8602 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 item); - if (textManaCost && textObject.arcStart > 0) { - splitText.reverse(); + // if (textManaCost && textObject.arcStart > 0) { + // splitText.reverse(); + // } + if (textObject.manaCost) { + splitText = splitText.filter(item => item != ' '); } splitText.push(''); //Manages the redraw loop @@ -548,6 +553,7 @@ function writeText(textObject, targetContext) { var textFontExtension = ''; var textFontStyle = textObject.fontStyle || ''; var manaPlacementCounter = 0; + var realTextAlign = textAlign; //variables that track various... things? var newLineSpacing = 0; var textSize = startingTextSize; @@ -580,10 +586,21 @@ function writeText(textObject, targetContext) { var barWidth = textWidth * 0.95; var barHeight = scaleHeight(0.002); var barImageName = 'bar'; + var barDistance = 0.45; + realTextAlign = textAlign; + textAlign = 'left'; if (textColor == 'white') { barImageName = 'whitebar'; } - lineContext.drawImage(manaSymbols[findManaSymbolIndex(barImageName)].image, canvasMargin + (textWidth - barWidth) / 2, canvasMargin + 0.45 * textSize, barWidth, barHeight); + if (card.version == 'cartoony') { + barImageName = 'cflavor'; + barWidth = scaleWidth(0.8547); + barHeight = scaleHeight(0.0458); + barDistance = -0.23; + newLineSpacing = textSize * -0.23; + textSize -= scaleHeight(0.0086); + } + lineContext.drawImage(manaSymbols[findManaSymbolIndex(barImageName)].image, canvasMargin + (textWidth - barWidth) / 2, canvasMargin + barDistance * textSize, barWidth, barHeight); } else if (possibleCode == 'i') { if (textFont == 'mplantin') { textFontExtension = 'i'; @@ -674,21 +691,51 @@ function writeText(textObject, targetContext) { textArcRadius = parseInt(possibleCode.replace('arcradius', '')) || 0; } else if (possibleCode.includes('arcstart')) { textArcStart = parseFloat(possibleCode.replace('arcstart', '')) || 0; + } else if (possibleCode.includes('fixtextalign')) { + textAlign = realTextAlign; } else if (findManaSymbolIndex(possibleCode.replace('/', '')) > -1 || findManaSymbolIndex(possibleCode.replace('/', '').split('').reverse().join('')) > -1) { - var manaSymbol = manaSymbols[findManaSymbolIndex(possibleCode.replace('/', ''))] || manaSymbols[findManaSymbolIndex(possibleCode.replace('/', '').split('').reverse().join(''))]; + possibleCode = possibleCode.replace('/', '') + var manaSymbol; + if (textObject.manaPrefix && (findManaSymbolIndex(textObject.manaPrefix + possibleCode) != -1 || findManaSymbolIndex(textObject.manaPrefix + possibleCode.split('').reverse().join('')) != -1)) { + manaSymbol = manaSymbols[findManaSymbolIndex(textObject.manaPrefix + possibleCode)] || manaSymbols[findManaSymbolIndex(textObject.manaPrefix + possibleCode.split('').reverse().join(''))]; + } else { + manaSymbol = manaSymbols[findManaSymbolIndex(possibleCode)] || manaSymbols[findManaSymbolIndex(possibleCode.split('').reverse().join(''))]; + } var manaSymbolSpacing = textSize * 0.04 + textManaSpacing; var manaSymbolWidth = manaSymbol.width * textSize * 0.78; var manaSymbolHeight = manaSymbol.height * textSize * 0.78; var manaSymbolX = currentX + canvasMargin + manaSymbolSpacing; var manaSymbolY = canvasMargin + textSize * 0.34 - manaSymbolHeight / 2; if (textObject.manaPlacement) { - manaSymbolX = scaleX(textObject.manaPlacement.x[manaPlacementCounter] || 0) + canvasMargin; + manaSymbolX = scaleWidth(textObject.manaPlacement.x[manaPlacementCounter] || 0) + canvasMargin; manaSymbolY = canvasMargin; - currentY = scaleY(textObject.manaPlacement.y[manaPlacementCounter] || 0); + currentY = scaleHeight(textObject.manaPlacement.y[manaPlacementCounter] || 0); manaPlacementCounter ++; newLine = true; } else if (textObject.manaLayout) { - + var layoutOption = 0; + var manaSymbolCount = splitText.length - 1; + while (textObject.manaLayout[layoutOption].max < manaSymbolCount && layoutOption < textObject.manaLayout.length - 1) { + layoutOption ++; + } + var manaLayout = textObject.manaLayout[layoutOption]; + if (manaLayout.pos[manaPlacementCounter] == undefined) { + manaLayout.pos[manaPlacementCounter] = [0, 0]; + } + manaSymbolX = scaleWidth(manaLayout.pos[manaPlacementCounter][0] || 0) + canvasMargin; + manaSymbolY = canvasMargin; + currentY = scaleHeight(manaLayout.pos[manaPlacementCounter][1] || 0); + manaPlacementCounter ++; + manaSymbolWidth *= manaLayout.size; + manaSymbolHeight *= manaLayout.size; + newLine = true; + } + if (textObject.manaImageScale) { + currentX -= (textObject.manaImageScale - 1) * manaSymbolWidth; + manaSymbolX -= (textObject.manaImageScale - 1) / 2 * manaSymbolWidth; + manaSymbolY -= (textObject.manaImageScale - 1) / 2 * manaSymbolHeight; + manaSymbolWidth *= textObject.manaImageScale; + manaSymbolHeight *= textObject.manaImageScale; } //fake shadow begins var fakeShadow = lineCanvas.cloneNode(); diff --git a/js/frames/manaSymbolsCartoony.js b/js/frames/manaSymbolsCartoony.js index 46900289..79664e3e 100644 --- a/js/frames/manaSymbolsCartoony.js +++ b/js/frames/manaSymbolsCartoony.js @@ -9,6 +9,11 @@ if (findManaSymbolIndex('cw') == -1) { ['cartoony/c5.png', 'cc', 15], ['cartoony/c6.png', 'cc', 15], ['cartoony/c7.png', 'cc', 15], ['cartoony/c8.png', 'cc', 15], ['cartoony/c9.png', 'cc', 15], ['cartoony/c10.png', 'cc', 15], ['cartoony/c11.png', 'cc', 15], ['cartoony/c12.png', 'cc', 15], ['cartoony/c13.png', 'cc', 15], ['cartoony/c14.png', 'cc', 15], ['cartoony/c15.png', 'cc', 15], ['cartoony/c16.png', 'cc', 15], ['cartoony/c17.png', 'cc', 15], ['cartoony/c18.png', 'cc', 15], ['cartoony/c19.png', 'cc', 15], - ['cartoony/cc.png', 'cc', 15], ['cartoony/ct.png', 'cdark', 1], ['cartoony/cx.png', 'cc', 15], ['cartoony/cy.png', 'cc', 15], ['cartoony/cz.png', 'cc', 15], + ['cartoony/cc.png', 'cc', 15], ['cartoony/ct.png', 'cc', 15], ['cartoony/cx.png', 'cc', 15], ['cartoony/cy.png', 'cc', 15], ['cartoony/cz.png', 'cc', 15], + ['cartoony/cwu.png', 'cwu', 2], ['cartoony/cwb.png', 'cwb', 2], ['cartoony/cub.png', 'cub', 2], ['cartoony/cur.png', 'cur', 2], ['cartoony/cbr.png', 'cbr', 2], + ['cartoony/cbg.png', 'cbg', 2], ['cartoony/crg.png', 'crg', 2], ['cartoony/crw.png', 'crw', 2], ['cartoony/cgw.png', 'cgw', 2], ['cartoony/cgu.png', 'cgu', 2], + ['cartoony/cpw.png', 'cw', 4], ['cartoony/cpu.png', 'cw', 4], ['cartoony/cpb.png', 'cu', 4], ['cartoony/cpr.png', 'cu', 4], ['cartoony/cpg.png', 'cb', 4], + ['cartoony/cpc.png', 'cc', 15], ['cartoony/csnow.png', 'cc', 15], ['cartoony/cinf.png', 'cc', 15], ['cartoony/ce.png'], ['cartoony/cuntap.png', 'cc', 15], + ['cartoony/cflavor.png'] ]); } \ No newline at end of file diff --git a/js/frames/packCartoony.js b/js/frames/packCartoony.js index dc6090fe..a609a419 100644 --- a/js/frames/packCartoony.js +++ b/js/frames/packCartoony.js @@ -11,22 +11,37 @@ document.querySelector('#loadFrameVersion').onclick = async function() { loadScript('/js/frames/manaSymbolsCartoony.js'); // notify('The Future version adds special mana symbols. To use them, place an "F" before the following mana symbols: wubrg, 0-20, x, and hybrid mana symbols.'); //art bounds - card.artBounds = {x:0.0767, y:0.1129, width:0.8476, height:0.4429}; + card.artBounds = {x:0, y:0, width:1, height:1}; autoFitArt(); //set symbol bounds - card.setSymbolBounds = {x:0.9213, y:0.5910, width:0.12, height:0.0410, vertical:'center', horizontal: 'right'}; + card.setSymbolBounds = {x:0.5, y:0.9715, width:0.12, height:0.0358, vertical:'center', horizontal: 'center'}; resetSetSymbol(); //watermark bounds card.watermarkBounds = {x:0.5, y:0.7762, width:0.75, height:0.2305}; resetWatermark(); //text loadTextOptions({ - mana: {name:'Mana Cost', text:'', y:0.01, oneLine:true, size:180/1638, manaCost:true, manaSpacing:-0.11, noVerticalCenter:true, arcRadius:2, arcStart:0.165}, - title: {name:'Title', y:0.02, text:'', oneLine:true, font:'Acme-Regular', size:0.081, arcRadius:2, arcStart:-0.165, noVerticalCenter:true, outlineWidth:0.0048, color:'white'}, //, x:0.0854, width:0.8292, height:0.0543 - type: {name:'Type', text:'', x:0.0854, y:0.5664, width:0.8292, height:0.0543, oneLine:true, font:'belerenb', size:0.0324}, - rules: {name:'Rules Text', text:'', x:0.086, y:0.6303, width:0.828, height:0.2875, size:0.0362}, - pt: {name:'Power/Toughness', text:'', x:0.7928, y:0.902, width:0.1367, height:0.0372, size:0.0372, font:'belerenbsc', oneLine:true, align:'center'} + mana: {name:'Mana Cost', text:'', manaCost:true, noVerticalCenter:true, size:200/1638, manaPrefix:'c', manaLayout:[ + {max:1, size:1.26, pos:[[0.828, 0]]}, + {max:2, size:1, pos:[[0.7854, 0.0034], [0.8734, 0.03]]}, + {max:3, size:1, pos:[[0.7914, 0.0205], [0.8794, -0.01], [0.8734, 0.0548]]}, + {max:4, size:0.9, pos:[[0.7927, -0.0034], [0.88, 0.0086], [0.8054, 0.0553], [0.89, 0.0715]]}, + {max:7, size:0.8, pos:[[0.8687, -0.0034], [0.9007, 0.0439], [0.7934, -0.0043], [0.8274, 0.0434], [0.8667, 0.092], [0.7534, 0.04], [0.786, 0.09]]}, + ]}, + title: {name:'Title', y:0.02, text:'', oneLine:true, font:'Acme-Regular', size:0.08, arcRadius:2, arcStart:-0.168, noVerticalCenter:true, outlineWidth:0.0048, color:'white'}, //, x:0.0854, width:0.8292, height:0.0543 + type: {name:'Type', text:'', x:0.0234, y:0.6205, width:0.9534, height:0.0543, oneLine:true, font:'belerenb', size:0.0491, color:'white', outlineWidth:0.0034, font:'Acme-Regular'}, + rules: {name:'Rules Text', text:'', x:0.0234, y:0.662, width:0.9534, height:0.3, size:0.0562, align:'center', color:'white', outlineWidth:0.0034, font:'Acme-Regular', manaImageScale:10/7, manaPrefix:'c'}, + pt: {name:'Power/Toughness', text:'', x:0.7928, y:0.902, width:0.1367, height:0.0372, size:0.062, font:'belerenbsc', oneLine:true, align:'center', color:'white', outlineWidth:0.0034, font:'Acme-Regular'}, + pronouns: {name:'Pronouns', text:'', x:0.0234, y:0.95, width:0.9534, height:0.05, size:0.03, align:'center', color:'white', outlineWidth:0.0034, font:'Acme-Regular', manaImageScale:10/7, manaPrefix:'c'}, }); + //bottom info + await loadBottomInfo({ + topLeft: {text:'Art: {elemidinfo-artist}', x:0.01, y:0.9572, width:0.98, height:0.0177, oneLine:true, font:'Acme-Regular', size:0.0177, color:'white', outlineWidth:0.003}, + bottomLeft: {text:'Sheepwave.com', x:0.03, y:0.9767, width:0.94, height:0.0177, oneLine:true, font:'Acme-Regular', size:0.0177, color:'white', outlineWidth:0.003}, + topRight: {text:'*NOT FOR SALE*', x:0.01, y:0.9572, width:0.98, height:0.0177, oneLine:true, font:'Acme-Regular', size:0.0177, color:'white', outlineWidth:0.003, align:'right'}, + wizards: {name:'wizards', text:'{ptshift0,0.0172}\u2122 & \u00a9 ' + date.getFullYear() + ' Wizards of the Coast', x:0.03, y:0.9767, width:0.94, height:0.0177, oneLine:true, font:'Acme-Regular', size:0.0177, color:'white', align:'right', outlineWidth:0.003}, + }); + setTimeout(bottomInfoEdited, 250); } //loads available frames loadFramePack(); \ No newline at end of file diff --git a/js/frames/packMargin.js b/js/frames/packMargin.js index b07f3c52..5d66f37c 100644 --- a/js/frames/packMargin.js +++ b/js/frames/packMargin.js @@ -13,7 +13,8 @@ document.querySelector('#loadFrameVersion').onclick = async function() { //resets things so that every frame doesn't have to await resetCardIrregularities({canvas:[1500, 2100, 0.044, 1/35], resetOthers:false}); //sets card version - card.version = 'margin'; + // card.version = 'margin'; + card.margins = true; //art stuff if (card.artBounds.width == 1) { card.artBounds.width += 0.044; diff --git a/js/themeEditor.js b/js/themeEditor.js index b62d484e..24e57a91 100644 --- a/js/themeEditor.js +++ b/js/themeEditor.js @@ -1,6 +1,9 @@ -document.querySelector('#hue-rotate').value = theme.huerotate; -document.querySelector('#hue-rotate-auto').value = theme.rainbow; -document.querySelector('#readable-brightness').value = theme.readablebrightness; +function resetThemeControls() { + document.querySelector('#hue-rotate').value = theme.huerotate; + document.querySelector('#hue-rotate-auto').value = theme.rainbow; + document.querySelector('#readable-brightness').value = theme.readablebrightness; +} +resetThemeControls(); var updateCSSTimer; var canUpdateCSS = true; diff --git a/js/themes.js b/js/themes.js index fe648d65..6cffecf9 100644 --- a/js/themes.js +++ b/js/themes.js @@ -41,4 +41,7 @@ function resetTheme() { theme = {huerotate:0, background:'/img/lowpolyBackground.svg', readablebrightness:0.3, rainbow:0}; localStorage.setItem('theme', JSON.stringify(theme)); updateCSS(); + if (window.location.href.includes('/theme/')) { + resetThemeControls(); + } } \ No newline at end of file diff --git a/theme/index.php b/theme/index.php index 0ddce1df..6eeff38e 100644 --- a/theme/index.php +++ b/theme/index.php @@ -18,7 +18,7 @@

Shift the Background's Hue

-

Enable Rainbow-Mode

+

Enable/Set Rainbow Speed

Readable Areas

Adjust the Brightness