From 47d7c02bb68330ae4fff57a4bad77cc9d3ca61a5 Mon Sep 17 00:00:00 2001 From: sigonasr2 Date: Thu, 30 Nov 2023 20:18:05 -0600 Subject: [PATCH] Correct the parsing of comma-separated descriptions for class previews. Move Wizard Render slightly to the right. --- Crawler/Player.h | 8 ++++---- Crawler/Version.h | 2 +- Crawler/assets/config/classes/Wizard.txt | 2 +- Crawler/assets/wizard_full_render.png | Bin 4555 -> 4696 bytes Crawler/assets/wizard_full_render.xcf | Bin 18774 -> 19549 bytes Crawler/olcUTIL_DataFile.h | 8 ++++++++ 6 files changed, 14 insertions(+), 6 deletions(-) diff --git a/Crawler/Player.h b/Crawler/Player.h index 4a12e000..a95e9c63 100644 --- a/Crawler/Player.h +++ b/Crawler/Player.h @@ -416,7 +416,7 @@ struct Witch:Player{ class::rightClickAbility={ \ #class".Right Click Ability.Name"_S, \ #class".Right Click Ability.Short Name"_S, \ - #class".Right Click Ability.Description"_S, \ + #class".Right Click Ability.Description"_s.concat(), \ #class".Right Click Ability.Cooldown"_F, \ #class".Right Click Ability.Mana Cost"_I, \ &KEY_DEFENSIVE, \ @@ -429,7 +429,7 @@ struct Witch:Player{ class::ability1={ \ #class".Ability 1.Name"_S, \ #class".Ability 1.Short Name"_S, \ - #class".Ability 1.Description"_S, \ + #class".Ability 1.Description"_s.concat(), \ #class".Ability 1.Cooldown"_F, \ #class".Ability 1.Mana Cost"_I, \ &KEY_ABILITY1, \ @@ -442,7 +442,7 @@ struct Witch:Player{ class::ability2={ \ #class".Ability 2.Name"_S, \ #class".Ability 2.Short Name"_S, \ - #class".Ability 2.Description"_S, \ + #class".Ability 2.Description"_s.concat(), \ #class".Ability 2.Cooldown"_F, \ #class".Ability 2.Mana Cost"_I, \ &KEY_ABILITY2, \ @@ -455,7 +455,7 @@ struct Witch:Player{ class::ability3={ \ #class".Ability 3.Name"_S, \ #class".Ability 3.Short Name"_S, \ - #class".Ability 3.Description"_S, \ + #class".Ability 3.Description"_s.concat(), \ #class".Ability 3.Cooldown"_F, \ #class".Ability 3.Mana Cost"_I, \ &KEY_ABILITY3, \ diff --git a/Crawler/Version.h b/Crawler/Version.h index b62a396d..84073f83 100644 --- a/Crawler/Version.h +++ b/Crawler/Version.h @@ -39,7 +39,7 @@ All rights reserved. #define VERSION_MAJOR 0 #define VERSION_MINOR 2 #define VERSION_PATCH 1 -#define VERSION_BUILD 3332 +#define VERSION_BUILD 3335 #define stringify(a) stringify_(a) #define stringify_(a) #a diff --git a/Crawler/assets/config/classes/Wizard.txt b/Crawler/assets/config/classes/Wizard.txt index 2e7a595c..084ecb73 100644 --- a/Crawler/assets/config/classes/Wizard.txt +++ b/Crawler/assets/config/classes/Wizard.txt @@ -154,7 +154,7 @@ Wizard # Whether or not this ability cancels casts. CancelCast = 0 - Description = Shoot an electrically charged bolt at enemies, spreads to two other targets upon impact. + Description = Shoot an electrically charged bolt, spreads to two other targets upon impact. #RGB Values. Color 1 is the circle at full cooldown, Color 2 is the color at empty cooldown. Cooldown Bar Color 1 = 64, 0, 0, 192 diff --git a/Crawler/assets/wizard_full_render.png b/Crawler/assets/wizard_full_render.png index 404858a29327672976e600311e4c21fadc876d5a..b90038c523e21acd94ac1a5aecc1b9da9120c8a0 100644 GIT binary patch delta 4622 zcmV+p67lWJBiJO6B!7fyLqkwWLqi~Na&Km7Y-IodD3N`UJxIe)6opSyr6LsvJBT=B zs7_WyMI1{j7QsSkE41oh^3p$O(vYOMI0~)>2Y(i;4ld5RI=Bjg;17tai<6>@lz3lK zXc6NLk9?eW&*8oM0HIlBs@W3-RLwHdiI|wnuZn?J1mUA^5`R+?GxcOT7x~ER6 zy9m$n?)$R_l!D0spGX{Kx?vG-5YKH|I_G`j5GzXx@j3B?K?fv$s#ZL@buNSngt0HdNwS;;^D>lrQ95Ryc2QR;zW^J}19nu%NAExK3*n2`nLr6hz3V zqk<|dMCh-PVt*n{`!Nsyh~rO@OD0zZj2sK7L51Y_!QbHbY|Y}#w3`%+0lhD_{V@gv zc7ayIw!e>UyLAHipMfi_>Mwh6R(d z0W${z11~wDu?myy0VjVDFiAu~RCwC$oPTT^=XuA!ccM%&e?+u_08|3hvamEFjMW#{ znZyB0lr2CH?NX^hgHjH#MCpbK-LM7wCk}?e4u(O=A49tzfTgyJm1eORY)Gkk%WlP1 zD=`L1Yv!D@c}F9FLJx36AcI0@SSU&&Z-3~X<8v?HJDx03q5^+Dz>E9I9G80I4DXsxVO1wg<#i6A_ftNJTPhq@D^}-)dJiDS~nc zOoXkADpErNvW0&bROK;ureNE}2&P|YE>?~ntI_I0yzNZ9r(T>;nc67R!FG1>x< z%9J4k)h+A~3+E8~taxt3r|_JsEg*?E*Ch$kkp@k^7^r`%LJZw7y)r`EvkKA7w=ZRRyWYE&Ht^RcNtP$&E&Q+@u>o_i(I#l-7r0 zM}HGQw{Dp~lR)Wajerb{Drq%ox$g=hP~8m_6%m4U9WdQ8|NgDy39w^bAr;dt#KX2w zk$5wzPs@MiakJ&p&3_;uRoGbohjh#Q34lXJQu~$)oV_FYA)kRgkp zR9VY56g&D&s<;Z}Dcv&PaIPn|U|l}0j`*s$e8F z=$8360ZqNEIgj{!uOf77)POF{o&@Q-Cnf>a_43VQ0g0%nRK+J_R|7^3_6(3BfhAScYY+Ugm_NDZsOSd(y1!~&Ln_w)+kVZr zBuNb#lvDQ;kRs`&i!ygBph9_uDy>`QjG!K}Lq<~j-2f;G0CjNg_}e@N4$d9F?sGp1 z0QG+p>sgzBiMZXWOxmyGDLy?}d;$RUA1&8Z1P!`n{<)FV{y@mCxmv0KD!K9NzcG=I zU!jvOj9>o}0A+CQ_)2d4`WG0u|ILkGkLAX%tAp{cxKIu!Us3i#L3~_D^%+vFgQZ*M zUvc%^ePT$wc9#!aWpM8JPXVYC`S`y8z~X=6eE@)oeEfX?N-A{=6Z!amPvqmP6Z!c6 zq*Ax&c$J?|uv)1kWlen&VE%S#2htzZTi6MM?Z5aTNzZr#YnJ|*ta{xA+ zp^Qxc8_!v}ivVytHVmq4Priut{x}E(0K7Ll?XExg%w%oUQ*wT;_)khJT`Vkp1%Q7d zgA<>cLe;i$H{e2Y0`~Wfr1o99!1>j}MF3cjmw|GvvH;MNFK%z&_~SY#1Z(|)KdC!E zmAZxAXw<%4E-S496!yZl45sT^Z_EddTAp7m%-$##JqJ>$TM|Xoz^s-Q&=(tNs2~6> zgQSL?24YS5@9384Zhv}h8P!Y{pI(1kcGUv_?40WP)xr-&IML|aH5VHHKMxctvTXoB z`OiG(x4IRxCF959bd6{7&q!*Mx@Ato0&;q?F7`MepJT(RuC2$n-7;UaQFvn-52hwv zHHEQM>K5Lcm7l*86@@)lS=5G(`HT=o*}g8n5kcKD|58xcAMyeD^Q(pPTs?nYKshA7 zHRv8IWJdu2iLv>>o9>H^;Jw*t&u7URRk}ACwE^JeCoD|P4Jdb_AX}K4sW`4!aX@Ve zKz@%k=e97CSn*d+&J$Y-*-;k^U*D+(DWf+UwO@Y10suV!X0q=1^!SQR`{^2y09WGk z>0Jz%0-*YJ>)Ol)Z1oV7Dgb}b`cIQ5zAH@ec;Lv4fD{Wi5lVspodNtdJ@i zf#a%qIzDQ@TAp`-_C}-jYYRkWng^^uyS@4QV9_PC`HHsd$+9Io=x8QG?Lm^68c#z%+6q8b_OHqhq!t+zn>g@%ux@0c2l>^eLquT6tP>Whs?RZ=istOLc*<&c8h?RL4WJpX1A)8i|4n841j6LD^w zf^n6(fGwF4t_p!%F_PNDiLv>2GU`)8>e;$(R9mPEM!N4o|6=VQmB7%vjU)^ zTjqaKg~(=p_VqeNtd6Uq8eBgrn zgh!5i$E_Se;!rpc888_buAnf@{0VE^&O-+&MizgQXgo;PT5SsZH(9XV9q^Vm;3MRty;p2Ga&4Zr7(M-&}M8>~5(DN1bS36{6p zv8{ii4|U7TQ*%v_7S?8@H`A}Z?k@8$WbuWE6t@sCehvpiaJGjlPc?N!5dx&@qBgYY z#2GRER3y_u0H7L4tuLXUU3G(X`CU(c%DwUOyPjPOYcsCPEv(Jd08EYf-ZY(a=Hx%( zX0cHJ9Zejkmc9^>GMB3D?AHMRSJr;)9;1C@ z@dV5>zlyPV!reb|FU>@K!MmYik;o2Do6wcpt`6HRav)0_7b_`^ttX%j9&V5 z`vy-1_N}N=@2tLtD{DW-uO0a<_t*!e4*&pKd>!YeSD?k$kuBEW-+i$WTwHm^y;gr> z^itjT`q`p3Wapt{(t0T{C5VI?DBpf(x#GN|Bb%zW36_!6q7IO1u>eqZ%3Q9b%;hb|1$ooY-EPZB zYASC!Q|7WQYeqR3f)iwPoKzOn<8Ob4n?-i>;gq>-`^?PlX!wC*&i%3bv0A!H&b<(r37sz6Yl>AG_)iA$htEtTB*vC$^`j%;qYn8RnP3i7sOndterOaBgzIU2pW6 z+Qg#MNJLM$c@cF>`1glVn7SWuD5%b@Ot|V1O^dGwZihAp6pe9_GUv-V0I z6l%qSY;I)&;{zAm2ap)O(nEQK^dcpi|Knp_0$QH2#Rlqak0o=s>kyri_22=(rFc&+a}^Y^8c`l@@$+A1%HPv)JQ_LA<#S zJMJUPqQj_XPh89|0A603MkakPRA&w{jO)l^k?5LXZ8~`-aAc zXFkT@@Ld=jzRUMobc{YHg1ys;#C>tGFgHt($Yp3rt=YNB0i2s&L0W%TJ;&)B+NP#H z?2v0q`eMye56z1`a^%~dN z>Qq^A-`i_{?WhZNVEjHu52TTb^3X%|!&(N&FDWGT^uiVC~_$ekgLvAcJvg&c06gSCu|PXGC{opNfsNZ`h?j#x|&9cP;Tqq>&37^VBN79}u8 z={W`9Quy=X9anC}FAkdyNPIC;7NAQdBlNVeEb-$|##n#6%fhe^go6BX5?& z4u`;u?V`W6lN@NzVvuZo%!w=Vo9bpQ0Yq`AR5AbuQcz_Hl&FHBgii!>pnCIukizz~IT)@63jW!W(Q+_* z5`(C6rILSv)zX3oj$h2+$)3zr_7cvXv|@Y;m=A+$isnM%fwxtEG10bwWS~d^w9GbX z{MfY3rUPz^_k##jtJSm99H?yo?No(3wL8s$4jiEUunwSh3DT`F(>6PRWO2xhn%h6? zj@LpG{pH2y!o^J6-1XDvaAeyDQbE1ZsLd;47R`UQSM0vJ*j~6u*kARujf?fidz*G0 zDxyj|&AbnEQe-nBsry->-Pl6DC{@%*f4r%X_N?bjH%t|%#h%-44BE***zx!!15N;G zTYLRzLj%lLv`Gn6}$pJ$o9YsZ}{h zaP}opJVQ$3BPl|DGo;VhkQ)YybcN07*qoM6N<$ Ef?LGU9smFU delta 4480 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 diff --git a/Crawler/assets/wizard_full_render.xcf b/Crawler/assets/wizard_full_render.xcf index afcfb50a6f15ad2e81af19245b5bb8f3a29e35b0..c02924e3fd2394bdb0863d510eebce66ab8fe7d1 100644 GIT binary patch literal 19549 zcmdsvO$U@0NqIFMv!BPkYy3pm6kjk=bS!Ylb2t4{f)kNFJ9{VvTd?0q}Zc0N#duA6d|1?^@Mf7b(8Lp+AhO-|HYZtUw?V}ZN6J_vGdV4Uw-lJ zmtX38=asjo`U+>B8kH*v1AXQ77calO|MHu!yd-Uc{`c9p-v04xFZaDQ^V%yf4YXu0 zUA{Q;+RU4MSySwP^YY}2eL3?vIKbt}Z@GN1&wS+ayKlYm;>A~{FZVt85Z`{h>09_^ z|Bt3$dAskG>5Ee@zaSnO$-0)-nEcg|y#i(L%pw| z9&f0(Hq_f1>Mr%r5NejCNg_}9?+xn|)*h+*{7~+0sMp5IKH3_7)cXxzYEB64Q2#Et z=B$4Uh9>pD!t4JfEdO^{ei@XOHDdYqPFm~tK3#C%v(}%_54p#zYWcUvtrdU4%36!% zpICPJgynnhS!>zRsrRq`#H#%2qeWU4W?SDA^1p!mr^TFxJgJi!@+(Ei7jss^y5arA zs(SOFOVB6M14kyHKa;ycOD?4U1@xD5d7W&6iTYm5TlM{ge#S0dDvsSCxdvNor7zBeZO&#c*ogrlUx zj)x9=it;^@jKa7Kz{_vW{Al_mx%#(_K_U77HU=49GA916V-P1b{zPT`*M4d)2*+S_ zD7bL)-_!t=aj-?oVwp%&ix<@G00pESd^B0t7 zyO9HVa(jrjpXHyg&6Mb2AN$Tm(1>?`;s&?p57iDzD=HlI9Ivv{(L9&-*0|yk9DJ zS8&B>9EXAOq|J8y@#s+0^LIJk(k^$w^*l0jK@C+73=K7LNqJwpySU^oaLN1SpSauV z9^o>QSKVLACAHw7Yv8nI(Q`qPjlTXO4kWEFdR|!d7qz#%fH)UdH)Fwq`qX3FRHA+*g}%B+xtto{He+AeF`d{2V=4_ z2vt_u%A(Y|yZ~g7<$KIO3+_;MkqIcfsLEhK+GV(wtBYCXc6z@ta!po;Kc5Glg`bnf z*z6j$EZ`=i?UIWkXiKI(T|?iY=T+VwTFWl-X>ut+J6P+u6&%qlzWY?t9kBVKAz?n` zmL0Hmwo=Y!Bd!f&{OQJ_@kuIQ4VYHlvU2URcB|QPluOE8xhmehisD}xMj^MX>z4U# z5}8e{Q!O$&T)u_7oTlcpvzhrsW z74DAv6?FcBp_4-BP;x2M1a)FEF3OT@cdaZ`P43-*q)f3OMi`2c=w5Q&#TrEv3I%#y zV3Bggr+;w8T~OG0^;e6o`;i%SaF2ks^UC$hj@yDeY{u7B<*m3^Kl+G4BQSc^BU?s{ zm(RPSbipVC�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 Myp3e-A(`&{zv99e-2eap literal 18774 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 diff --git a/Crawler/olcUTIL_DataFile.h b/Crawler/olcUTIL_DataFile.h index bd314505..d97b68a3 100644 --- a/Crawler/olcUTIL_DataFile.h +++ b/Crawler/olcUTIL_DataFile.h @@ -482,6 +482,14 @@ namespace olc::utils inline datafilestringdata(datafile&dat,std::string key) :data(dat),key(key){}; std::string operator[](int index){return data.get().GetProperty(key).GetString(index);}; + inline std::string concat(){ + std::string finalStr=""; + for(std::string&str:data.get().GetProperty(key).GetValues()){ + if(finalStr.length()>0)finalStr+=", "; + finalStr+=str; + } + return finalStr; + } }; class datafileintdata {