From e2e0b20ecfa3cffd11ace626e166f8aa3f577537 Mon Sep 17 00:00:00 2001 From: hodasemi Date: Thu, 29 Aug 2024 12:41:39 +0200 Subject: [PATCH] Fix socket tooltip --- rpg_components/resources/addon_snippet.xml | 2 +- rpg_components/resources/book_snippet.xml | 2 +- rpg_components/resources/circle.png | Bin 0 -> 10920 bytes rpg_components/resources/gui.xsd | 248 ++++++++++++++++++ .../resources/item_socket_snippet.xml | 4 +- rpg_components/resources/items/slots_0.xml | 2 +- rpg_components/resources/items/slots_1.xml | 2 +- rpg_components/resources/items/slots_2.xml | 2 +- rpg_components/resources/items/slots_3.xml | 2 +- rpg_components/resources/items/slots_4.xml | 2 +- rpg_components/resources/items/slots_5.xml | 2 +- rpg_components/resources/items/slots_6.xml | 2 +- rpg_components/resources/items/slots_7.xml | 2 +- rpg_components/resources/jewel_tooltip.xml | 2 +- .../resources/stat_type_snippet.xml | 1 + rpg_components/src/items/item.rs | 10 +- 16 files changed, 271 insertions(+), 14 deletions(-) create mode 100644 rpg_components/resources/circle.png create mode 100644 rpg_components/resources/gui.xsd diff --git a/rpg_components/resources/addon_snippet.xml b/rpg_components/resources/addon_snippet.xml index 56146ac..407a655 100644 --- a/rpg_components/resources/addon_snippet.xml +++ b/rpg_components/resources/addon_snippet.xml @@ -1,4 +1,4 @@ - + + AR35&}x+K#&emx}`g$5f~xT-6cp1QqnoPLAo2Hq*EmB`+M$l z|Gv*2#&))y?VR)de(DWVQ<25RqQn9K09Rg4S{(o&;6n(2fd>B5cPX|20PGR(_u8)N zCLVN7E{+z~cII@hUQXt8=APEzi=GRusn+p~jnTo6=fodT9O(Ktor30@J47BnVLbm? z`n}Y4FMAIsL5hN411h*ggLU2hSal+Cm&C&NethMPZCtzXet!akFpLMy;$EHS3RwCa%t2`_v4${r!;Ryecp=EAZPVXK9t_Q`xTATlosi z4KF<2Ranwpc4OOv(Q(@1?(H_|Xdl|Ye+vGsf$h`Z8s!yry()yh*LCbp zKRF)ojygYlT;CiYPCw%;>E3B=*VHkr7$_A#?)ti!T9A09KhE056ZEo@g$erE0N(kM5kkOT39X0x4 zb==Ut;QF{}?%p)-d+0FJo4n}r?x~3Ux_m*_Hl1hNj9_BQiOyG3C)YvqpsFs{2-Bjt zm(T0oPs+d2k-Pp|IcX8aw_29@aivjoR=APeE8#Z^AQ*4XnU^^M=|E%qTsqIuG8>=m z)%R*uB`ZyJV?2|bL#+Sr0D<3j?o%2I+J(f+wk6}>1ivm<tFP!cGs`FPN>o%@m4a;y>0OSH|*OKK6-Mx{x$otH9*svU*o9J`7870AMYXSG(j$y zbJ6?PUBXbE?LX=}b4~&upr#91KZr=BoMzMn&wkIzn*VycggMt5TWnw0=v^(Z-ytNK z1!Wo?1-86TwpO0yP5mvybv&E=cr%SIF*+RI>IrXfk$i6;UWUF_gw;?1ok9yizGRaM ztUY!ao~a&rqwv+Ug2$1F{*$jhg|#v*%~W7dEMkVHYpyyH)v@~ihw{WpXw;%cguifd z#7NwhaIl^P(Fwut07t8jYj2KzI9Gf_XCj4cDz#}=uOzzYJ!4Ug^uc3Ze06LiWZ$f) z5^rLlHN8EJ*V|{)_rr*lrn8H`*S>UAT*AKNfnUGz>qi|eBBP4KoFZJ?BBrjDqwZUx zgu}_$bqu+M^r~!~h6xN!>(Vqkz1GU_X|rtNcJl#4owvPa$c$bw^m6OxG}^>aC{H3W zpC9w=s7z{MWcS__Rnd^klt_1_pOPDE?Y!rmoz6T$a*|zzub zKVgK%@6ReN#6MBY8U~-QBQ?1(cJKR2RX2-pc)<%$d@R{Pwwd zWa9ZXed@?#_j`gsA&mJR`ir6Ruq}>Q-1(usdMlJfK*6k}X;=`tsN9o_Tc*p!n)~;s zcAHuO-TYu1BjhWMR#S5-LZ!Nj%j{QceEtiUZd{|Y@YT->H@@GD?o%s>r%{-8t@Uel zE4|5;0(d(ZfN$DH8D_13n){3sgn7hzdDo?|M9#-yhuBGp>= z)v(}OjL{4zMxc$^)IB0xB5aw zxS&K#o%%2+-nEK{e}SMtX0EmGV@1S&=Kp8MyEe7ZD?t=x6IN#M3)O#0HaRO%+hH+D zE&KQfhAFIoG~Zjv?leoAD*r-5&{?WFDtz?R1UJ&KtTJJ|Q>X@h8B~4ZzaiZ&5o=Oy z?1zJCougqjwh)dPUWYyvG=*oxTrdS8RMU2yPyH)4ctp0G5Pi@3>20>JzjKHe?O`Fo zXFp3{XWDT5*+kTVk+rL5hWbWNt;9qdC>&R8e&y;>1(UK(H()Kt5BJ2k6c^4;U4}Ow zK=k|D58ga(+zH_i^bB`|v04&a_~`R9Js-XJ8F)(H{7$=k$0P3oOJZGfQ0T-OtD&Yj z*Yg?HPW^K6ri_35GbNN4!y3lyoWDA~KVRZc6~wjAKys>l;9;UqbM(}+v~echTGu(9 z7p1h2V<^I$yUt@Niuo}A<-3>T-ac!AOHp9_WGLN`pviWeyiVCUiNM>>snd>4!ER+L z$3#Pz_t^y}uq5|7&R-aj%m&~r6VmS|4xjxlINX}jR&SB9eepgf&;Qtz% zt>!6)xDhjkem8UUSCo8n-B5asI)M*?RNLl^G!->(JUO-R?0y@?C{wRbaC<&!DsB@F z(3Ka1*wUpEcTsiQiMFH@rMj`0Rk$PPX3F6t-jJ1jS3QlguJ7%CZG~)YIF`M(&Qg0I z5{Q0+U9f+2HjPDm9OGoTax?Bc-UXNqz~9tdSv;$#$eGQ(vPlz@vAr+8>x{u5es~lA zOmg^DqV%g@-;67FS$F&1eCCvVWk7jP1|2ZGtvTG1XRjFyILcU5y=Args$m-JmTVa{ zvxz~NH%jN~mT_?KVa~tvN8Y_ zDODv#5^`!g(@z~mSC=P6Y0KV50%YH8AkKZCVEE65_4P(D-0fcXf=5ax{wZh)smc=X7H0YXYkLVC&bf)#P8l{y$+4%K1#+I5D{{ zICYQFq=E+96AOGd4D~FI&~QN;l5jQpDXbsDsWE<%2_Z~9J#U>j1#haf-JG0fraLt7 zQ6%7*)LFy^`Q4AqpGkRWsjoMeTlS}q8{2Baka@#WhKS3=cunz=jGdYzES*rFLBIVRFlGyXJ$~Nz)SV2Q%=Q5 z$3l37o~bgFITW8RFPw0&k|0lmwMQ!aYE%3HGRqaO$fAXbB}A$gfHrU$bl-98@Z)YP zIE6S2M#B|-&I1kh2zWE%+!jMq_8pAKCUC`(hcoY-{K^;+rWBSnsoW!KkUBd8mVi*Ipi$K8}ys)>qfC z_s1?7v)>HxK);3dK~Yv3==<;XDp~sjID+XUr}Gg2UNHXm2k|VBa0ds`UFDT!(6>-9 ziJ8z_+019bAqrO+ZP(Y1_V(ruuE1*-a}!r{Gdd4zS1USMd1W=NfG1=CKwTs+E&1Ma z;V{d~m1H(+M}kmFRfJFqN{@*jk1zLu$9RHwh>n~5Lr_2}%avf*B*m@+YtgH{y|lf| z8zpaV3-6ajK7}G9m_=EFSI*Q+r{o?RXc?TTGQFLlz9gmmH95<2IjDQq55<@S z^(#Ia$G#FfQ{$)V?ccR7n^&8zJ&y11;TZJ6_)`DR-MZSh3yjWmX=9w&y?+@`m_7|Y zF5)d+(HOMlEnjQN0l`5O*on{{_<-XbjeXEzGhFN!#?l4NEP@?ro}&?C1f>gn4dtdv zy$lPdlLvwyBY{H5IfCovAsNc^qQRp=l~@HhhHWEJSKG-5 zfm0E37zgzCKgxgltK{PPyU^&HZeuPdO7a=o6hN9y9!Y5YTn%j)_{O+jYr@}!R_2o5D6W!gN8La4Au6;^zQDtmWEk80_gb+7h?{P{*d0G>EMJ^oV%wv%2B*luY+eREfj+> zC?XI7z7P(+;a}8ANUcw;T=Y;C;*;R9(Op(9xIg&NF<)0>9pV;FE$n8BKgrIcG)6)i1gF z`H7>VqDIn)Bu`Dfe-lM1qpnWq?Ck8fc;Vgp-&~7}ir`$!%ge5AZsQ9J3ikG#DO^VG zLz^Yg2dJmw5hvt^gC8oTvOCgp{wZSYOQ3 zqW1RHl9+Pp8x|*(@)wXBr#NY%Hyg|L|bsw*x8-X%w$4)YR3b+}-)}WMf!(#+O9` zTMfCgva)#j_?))~NuJOMZzbxLo?fD@!~xPQ6vzl@UsGGh zYD`;OTTGAf9uDW{=Q(t1LI)C96XN0|U0r!M z9w)&aRaVALN=nKUbY>u~=f=4cJ25E386ZS(GZJ~y*xFkE(yp@umo-es%K9ZWmAv-i zUv1~Q$-?4dqsumy&-GEk&sV!)fun#bjEosr?-Df@iKQYg7#KF|2`3>YA&HCsmPyKT z8b~GJpk`<|+7lsZA0wun5$VSaagrE=KFZ;{MF3eB}GN-zGxcL)wZ0T zg9ok?w=(E+LLdb{g0JT~32vBQTpUWmt{Iz>LRJ-brv}!|;OS=He5;QK_X`hdTUEKA zD9FD||K9tU=e&qbPVPk@7|E`>m^x-LgXJJECHVg^?^&3)6snHEMITt7Ac2ys( z>7D0xzAM}7*RS7eXq@&^Iik4SR-$?mmsZE2AnBDZ_#Oh`_YEK~VxNf~9M-?M*& zh>3}{T(9{2S*T@KOWB2LLS&hNT-K*^$3zgl=PzDZEH}BCSy+76XpFtR^>+U=M^M~? zYJhyXmXAW`ssubi|8`no(435lP5P{V$L03lKOvVb498ZISbaKsZFWU2IUsP%b1imx z`5`fpINSG1=j{A^+PgCpJgt-4gNn%|yMIcCuPVtK*dQ3RX-G-q^sG0E3JRWQ1FRHc z-Zi>PxReb{rSG-&%IbTIRSQAkLKlUeE1 zQ}n-*NKEW5P)zy5D~4rjvBp>SeT)zR@DQ?BZ9+w&9F`j5s;ghh{AEP!?pm=Zr6Rk- zh=e}=#xbmzeKAR)oiX}=S;`MC59mtz`r+eBn{oy}kI$9e;aCjaw{PG2`}>V=FZT4? z{j#!Y7u8|EO;Gb!z8ablc?*M;`M*;&0y)DR~G%&??N&4_;W%ZE9-z z^HPM!mUW#T6X7cwl~le+Ix#uvb=0`iKQQo?J=AGqb2E+Ko)UxrS6A0Lb9YQl&OmHJ z;G=~JvqhyjB0DW@;P*%dg@8k5ixGfNMked*%yW2nxYXn}RKC8?wyKt+0X6<*7~m1W z<4!&_GGabisBC6t)_>5`&cM%~{QOTg>@lOioTtAClp9%VLMv*x39@r_sjx)B9b54$`oSPBj;VTf0m|MD*WU$wl1D zT69J6LD(fGCU&~Luon4FCIiC`NO96mb1A}v^J;dtPdzbRz56XNFfx)PfZZ-Z_xJDL z_wVN>e8!LpTJ?I+lf6&qH>M&u_6s#(-@Y+;RdF-$@g*%S>8oVdm@htxu8}(_Lr)fo zO_e1vK zgGuaZyw>qFzd`fF1*uF8)d(C2t*PPVx0{3O>u0uTpag@3k?nU2u2n(?#$`Nt=3b8n zG3*L?zmmak4}O!LAsbWyB%{r~n0m%%shAhgW0`8843;gxSM7eN`+GQz@t9bWo{=#K zM8vlS2KF}l*8%q06d{Z%03pJ^11t1K+1mPfsaC~IgAqzpaq%;dFdIEjzgfSGi$iL! zjmSkp?ohc0y5UMnI0v&8TKf(J@t(-uD5^v5OY=4CxEWY~?_ib%G0NYC*|y%TfrRZS z2B!Ri0s<;3TU}2kEcWJ0#keWhjbj@Wa{NLAG2OUYA!r=#srttKa>GWq^?@^x;f~HFHXXz zGQ(C~RMFr~ay}d4gITJSvS&axmKG!xwTz#q(q@{i;EXid9PCqf6qI(d;ao3n)HSb! z3V(3%=R0F5DVTj5r=Fg7r+vyJ#1N`ZW#9}^%Yp_T7qa+m-j;diI58>dOR(wRz4E7Z zfSw#HH}P%uMwx=gaQ0%|^IKltb9VMue6P@NTAc_GZ;`XgIHFf`rrmvgL(ReL{b1*< zw0IR-w9&kPR${VKd|Ng0-@YPpU|?elmx&-vOZOt|cWwr$#{a_y0}o^+9dqMo)zD$fqno6%$Ptc*q(Uh!MXn zR{w;l)dy8jP*75eMAvN40MvOhZzt!B8d}LJopPPa7b}`IfNaR!ljRDXpCMaYW?pel zd|*R?hntqF4a;wS3$)p}oJCT++7j!$1b>TWxxTeoAaI0-kqB%7eie&ZA|5YHdn4nn zLo1OXxqniYSpa|I4?f@;*$$XHL%>2O<NX!kndffq z7p28L-Fgf-Kbnq;R=Ivji3EYWQYv=`uStK(5(B`_Gj}Bd;-yyvhKMLF-cSmc08bS; z`6emkBw~122`o`oM*siG}QzF8Gu(2p{|+ut7Zy)ES!0W2&L!bjQaD(j) z;#j}lh2NL|->hU8znc!439oa4?Ej zV5l6b=JwSnw9~_4%JTfz+fiN=}B}tS; z2l&;0NO~ZQi(coLL(#%UKoJZRJUA##&FDFIj|>x4^!Vg1kP{zvqfeh&MB&oBA+2k! ztQhcU6gb8s_b}cr2KXYS+G~JdkDR3ww-Ja$8dIu4=@_!+wDW33^ImfTrl+qYO}xFE zCJ@+{!0-aR9~F5FG;>L*p(K1 z^0AQ5?}7b0v8u*K9Y;fqNLauTF+wrr1*iotuVlJS8%XK$p}(+}E_b>+IwWszZ!i8E zjin}*qDDa}zP|1Tsi4)D;B=|kV{G?A4IBQWopq(vN6XPjS`-F@y(#*l3*1G+mKs0G z{x<}A6GDKVfut+jsUJ0Ge3gg~8(hu$x{0u`us$cCJI)yV73ay5bR5W0dYweU770Tz z`6%F;Y6$v5X$+oBh*b)JLC`1$U?T7xdY$;}iomTRGZiFRVS(Ux_PBa@WMmq0{rB+G z&H5LXqS+>0Ady&FT9}iQ6MQBl3EXA(S=rhqpofO`99+79)?oG;aJcc^h@v`!5>$b| z^UJ78JM3=|JctNot-77nu-$Ljl{FE+yoVdmJ|GH+#fG!4UBe5Die$6t7~;#zUnES9 zEjr`5qeAYFP{~~bf}Qw6cq&iu5qk9w14Po&E{6-Xl>~@$dT$J=hInwhMl*#>KWqdh zpyW)f5~*g3mcVmD1#!N#!B|?4;221GoazKh3u%H*x0<@T^h`g>E+x1-HvFm6=xPEL z71cHY!?)rJ0o`8zsq%l7AD^G__^YTl!i2ftydemcv3uv~={0Iu%tHso}j*%<FIMjW)ML{$CHBneH*V(wd=>p z#$a4|IP^J?g_LZc-b6xhVbXIhJEJsDo{HOj_z<&vO&pqN+kvBV!;#ldISt1AxqBy;1Rf4j*)O$ zLs%d3(o4NjRmE#|KYYoZCm9Cy1_~A!l+iRma3_u%#o9FUuvEETYxrjr0t+%PG zi(1eLIW;V{_NAj~#~2Gqvv#b6^PgGU>L>6@cVe2Jo_4?4QPhSYD~W(gDAk(-pH;tq z_DO_9(Wb`62#*!7z9}V%6Nx~t)ecew?OJ;}<$RSXI*1cz!t3NJnSv&=v=Lu{%Z`>~ z0(wu)A_Qvyjz2Eg2JzY1Dh>|iqN>4}Gc%fX4$C$+g?Klx9Fa^Pz}VjICc7lg=x&1y zl;{Khq~$26sm;Juxu-6K*Pe3~M`DbBEQKaRh?FBi|G;h9i}NOuoL-ffetoLs-Jf~W z%pc9Tb882vC`r5c;>|mig`#)AK}A6=XrtNI`>3(U&g2}$} z8hY*>r-~IP8KMzMOvD%!6$R!ZFTKvpK-aZZz(5DC>7)~zE7jq$N8q~qG(IBMpUgY$LDt@NyfJPq$$eL(@>X5F z^FNJO)ydyt$OTqxHDix}Hs8a;FlPIZJnZ*Rq-)OHl$wSHNkKsY6BASa$IqP9V%~`~ zBJOi0`!6cP@sWhJh!G@SsoCc8@-i_oaqZM|tFi72DyRI0&3&!T*!!t}!!jF0WhKpAIn)>xa zuYUL7Ag{7gZ8B&h0L&@OhLSnm3%=Q+&|cy~n1HXQ&rUFmTb3)pL;z$eQ0p*5H$G0T ztc+rFwZJ{-O?STh!xric#H9 z{%t%A_4qL-0-!RUAsfi<4Y|Yui(6VoCN3p~l>q;%f}S1~SKAE(E^gi7uo%i6J-zP1 zu>}Mu?p26unRsG4TVZ4gP7DTgxai$Q{C-sDN>k7wOqci=Cqe*$hmc2d=n)q*rGs>U zg@qLw78W;)jl?2<++vkjpZTHZp4I{@0~`eZdNgmpYM^2d2;~$)?(gs4oOIzm=irzk z&dq6RN(Z-OVtU#n8(O!FRC3QB+T74sS3(T(DsbEbOY&3NZ4H+=K8yFa{As`5zJ=oqI z&vUmwxK}nreVF1L>xlYiu>(c_LkK~Dkrcnmz3QPm*7hRcW9v;L6#PI4z zKO1!EYSgZbt~#xEqJjVjnn%K_swx{!liul4t@h^)AWn1<+DmuWYzy(Li!Lsb19 z-4E7_tj%q0*&qvnu|-Y;oZRg%9lIsQSG~BtSw!a(B}wQJ9yiXX}kXcO3fOAeY zBqXG`qM`^4HM9-xV?3#BCH&`7GNWtQ(kBuAXoYA8fr`l-CPzz+3uYH|_eU#+vcyqiixRL^B=L3%zq9nr+q{PIPR^trYv^O=$JC_q+IQd_K3*sfs zw8zs#;WeGIAHNA+GtG|sk+Rz=s#kL9Yihocm&XL%DClQpFXr0v@`Av)&go)z+}Qun zKjEth^XU!u#EK*nHh?5v`-+&)ZSVw*H7KUd2NR#0nVW<88}Sw1ClD9v>i8)sDFwaG zm_VMw-af2>_~W!tl;F}$paNyBu+^^g9bD^>Utga3rN+k-f>uu!(>MVK~^Dpz(wo8q$KX4rpiNQd4)stL{K) zVD0Ew1b+VecQ(*A9pvkkUAbL*3~n<6U(NC>SWgU)&Lx4^SXj?EIPSFZ)z#JIz?Rj~ zG_9Cb1j`bPL_w~9XJj;1@~+6r+S+-enFe?e&NirN-c%Vwwjg*`e0Y0=5JndF4A*R}$0r%W}C(bM)3-`Fl^P}_n^T%g8J?Pfaj z{%g9$bWtVXs1ERt#Sgw{2&gsCqR^A+C*O`Bm@1V-I~08KDG8rziEtyKqq72#orc3) zE}&qc&JlKwCqn)4YD(8BpB5n`&|hw8cG`PZ62`UUYIneBv;x{Y2UqE&wPSJa^vZ&n zmTk7$-SoTCE$##LnLVwTjd#7#6cN+fLs6`@BnM<`aVk%!A64`OIk(|hqdNgRw8oPnE+r&3_!!H zpr*{)VakdDJoIf9eq{=c8c6ds2DOqGttfDmFRow7w{D~v(8<5lnt5d&f0eKev-?>A zG3xmKQQ}63>R!VruL2TsLCFMkHb$Od%6vc0!u!{>%c&jq^8df+_uq9v!H7q63(LQE V59;wT;B`$vUPeW_T*^4`e*i5yx5EGc literal 0 HcmV?d00001 diff --git a/rpg_components/resources/gui.xsd b/rpg_components/resources/gui.xsd new file mode 100644 index 0000000..d9ef9cb --- /dev/null +++ b/rpg_components/resources/gui.xsd @@ -0,0 +1,248 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/rpg_components/resources/item_socket_snippet.xml b/rpg_components/resources/item_socket_snippet.xml index c69d1ee..5f881d3 100644 --- a/rpg_components/resources/item_socket_snippet.xml +++ b/rpg_components/resources/item_socket_snippet.xml @@ -1,7 +1,7 @@ - + - + \ No newline at end of file diff --git a/rpg_components/resources/items/slots_0.xml b/rpg_components/resources/items/slots_0.xml index 7d39d1a..0793066 100644 --- a/rpg_components/resources/items/slots_0.xml +++ b/rpg_components/resources/items/slots_0.xml @@ -1,4 +1,4 @@ - + + + + + + + + + diff --git a/rpg_components/src/items/item.rs b/rpg_components/src/items/item.rs index 5a49a11..46760f6 100644 --- a/rpg_components/src/items/item.rs +++ b/rpg_components/src/items/item.rs @@ -306,7 +306,15 @@ impl Item { socket_icon.set_icon(&jewel.icon())?; stat_type.set_text(format!("{}", jewel.stat))?; } - None => stat_type.set_text("Empty Socket")?, + None => { + socket_icon.set_icon( + &Image::from_slice(include_bytes!("../../resources/circle.png"))? + .attach_sampler(Sampler::pretty_sampler().build(gui_handler.device())?) + .build(gui_handler.device(), gui_handler.queue())?, + )?; + + stat_type.set_text("Empty Socket")? + } } inspector_grid.attach(socket_snippet, 0, index, 1, 1)?;