From 1b7f097953e0ca8101002312383b5d0bed2bea2d Mon Sep 17 00:00:00 2001 From: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Sun, 26 Nov 2023 22:34:10 +0100 Subject: [PATCH] category collapsing! --- .../Editor/UI/icons/closed_category.png | Bin 0 -> 2601 bytes .../Editor/UI/icons/closed_category.png.meta | 123 +++++++++ .../Sprites/Editor/UI/icons/open-category.png | Bin 0 -> 2639 bytes .../Editor/UI/icons/open-category.png.meta | 123 +++++++++ .../Sprites/Editor/UI/icons/paint-tool.png | Bin 0 -> 9993 bytes .../Editor/UI/icons/paint-tool.png.meta | 123 +++++++++ .../Sprites/Editor/UI/icons_atlas.spriteatlas | 6 + Assets/Scenes/Editor.unity | 254 ++++++++++++++++-- .../EventSelector/GameSelectionCategory.cs | 34 +++ .../GameSelectionCategoryManager.cs | 14 + 10 files changed, 657 insertions(+), 20 deletions(-) create mode 100644 Assets/Resources/Sprites/Editor/UI/icons/closed_category.png create mode 100644 Assets/Resources/Sprites/Editor/UI/icons/closed_category.png.meta create mode 100644 Assets/Resources/Sprites/Editor/UI/icons/open-category.png create mode 100644 Assets/Resources/Sprites/Editor/UI/icons/open-category.png.meta create mode 100644 Assets/Resources/Sprites/Editor/UI/icons/paint-tool.png create mode 100644 Assets/Resources/Sprites/Editor/UI/icons/paint-tool.png.meta diff --git a/Assets/Resources/Sprites/Editor/UI/icons/closed_category.png b/Assets/Resources/Sprites/Editor/UI/icons/closed_category.png new file mode 100644 index 0000000000000000000000000000000000000000..f224f62ea8f78f76e3ec92b7bf56775ccbf7a4fa GIT binary patch literal 2601 zcmeHJSx{3~7{0kgWsy}u1*<7qqb$m3C6+ZZL_jG)Q2|2)q!9KXOA(^IDOzv^$F-OV z0U}aBiWNb&01irVVHY8QQ50ezF`z(#iOKEZp{>sJL9K7?ow@(_pa1**?L3`h-d=9H z+NRnN1nGLXyY7G>7`QN`sR5wr%E}f18VN2QJ2f>m2ZqQ`!BH#D-9G_>^k}m`ChJ(* zeh^%eNb*bcp@$_V2gip($;ruUBVwZxLW1K$*V5x@EUAMj1Yu^pJ$I5&6b1VKzyI0| zFzWKW!On$=JG^`#46K2jJ5N(fTW7wWzJa09LSvIfOH9p{EysPi@+9u{=ZeKrtN&qz|I5dnF9u*xEOOH=xAk4JG=@~~)W@eo| zf8pm#EH)>%;Fsc(tEFYvu9sI--mI#wsjcJHH#9ai-@E^ywWG7E`{ASBKK{Uyp=ZyB zM}#j#qhn&pOX>K;>&dBUnSADrLitvuJ{KQ_K+xO?57*5*5A?qrd~>mN&eG;rOI(9H zazah>Na7<43tU-Sw|my!+p)!L#UAf91*fbc&Ya6mZ*Sn2CAHZkc;RV6WnGT*(Bu#7 zgm#{sLEm=2rT++n!%#gwl%dQ#RIh4Hy5GOYD#G`w#EFUqpl$d<`)&7x(e{+XlC$>g zRl(f^y-N+nV>~l<;V5gWE87lji>YZoX3EPBeDssN`=DFogj7+T-p|qh#wSGXhvpGrej#I`oj$^;0Q-H+nI8#JTxx|!!-kmIkC5F$a)I2J<%>{gf;c4Crt(Lt}1Pq^b zgTs`xI=B#JcA7XQ1b>_f7lkb#LKv*UpC%j5H2Ty3JNkJ%ZW7_IJ|9}K)j00t$1a6q zGQ(o^-dXBHn|+YZCUwqI{CgK|M7a3zBfguV9? ztuU(6Ot$sY_?vAeHoZmVa}HPp4QtPg?1K*U<++VX#kGr}Wr-q@x@WYjQ&rMb#8vvT zC~k7Jsg$ei#r&Qr4P00AeIi;jP|a0xrp!7;>Iyy&Q0wPqNs$gqBA}k!;VKc~{#-z{ z+~q18#)msq4eT-DT@_hjzNrS~--*o`d=jW}L>?#>Dp=|(4Wsl=gt7*;Li`!bCl4?? z_-C0wt*EX3H#b3lZwjQ%WNbN4OdjLZt(iAX7W6Gsaph_1PL^XXGF3C3B`8(U##gAg zy+w#@Z;vy>8K_y)?Seh3@|$E-!tQcTT>y?&s`BIvHJ?(9$aaf3ygMLi6$qVI^UXHo zA~L;E4)0qK!>Gy$)q$vF8fbPYX!NaRYCdBNDxs$Op%O=s+8COjVB`Tl)lL|9{_kF8ia8KrChSqSkZFppbP+Hrur6KDF)C9 zJ1q`FH^%lnIK>Fv^rro4Tv4<1RUSe(IBZLcoUkL$??lEcG9QXs`%?4X7WR_k@~_a< z(#a82Tv5Wt2kXe^UqFHqYP&B-KN`zIRe|vhG5$`i{`s~sDZR~K1TG!7zaeMqMlGT~ c!=ZBZ-0++*Pf@r_$?OxwgXHDe zK$wCEVu%w6kw_8*5hTh>Ni+dMloFJe5JDs|_x6UbemG7`JN;?z%$>9D-s_yT_u6;n zgIjs-c9(Htgb#tFQ?dk0s zcs|H~DI6LRjlLcmpLjbxGy86CUb-NAzobxpPyw{K0XYn&W$x|n8ki-R9$qT`D%zxT z&f+mU)&l#>6m8$*;8;x2uov%)&SRU)>A$+!)+F}J^<{gnZhDr6^2Eud*(!K1p+^do z_LN=Qj>fKR&V9vxtfd>C$QoG7#bHz7-q^p>Q5 zaJG+qb<=+}KT#Mml*!~zr(1}mJQVRKW!3{t1LhqPmurmm#W?0%w3~^LI079nhS@~m zRFB;@@%WA%7k-muPmH9EUz%g)>}+U{sgH0hIZhLU#7>rjy`Eek zCOVHdir==qYTt7VziX@m$IQtX80l#~T*aK9%O7DInbZ)g!$Kiv1P^IKEWsi{9ac0aLmf?HN(9Am@MhH{ zcM-SDX0XE4?8xNa%bH`0)C7UXa{BnrTb5=F($l0{%VBhwaT6rfPN7?Lt7|Eu(0!JR zilfl;jjhb+VAn%l7_oM_pMfx?oMVE6YaIreNqmnwE3*dBf&&hZV!PEQq?3l|^BfGB zvspk?iIh^>xn;*Tk|G#SAiq$eX?Cs9(u@K&)!r9nEt}26E|ejy%<8~4N9(f20mLN* zwX{(}@2qE#OM%G(m9hiPI0Vhk3f;-f<^?0WCOGLRP$D`4A!j04zD-uvH;FRXXpH1px$bk57Hv!q;ocouxS6=l$wlmj;KwzlsdKV6>#-`GTWthw+ zyGc~%or!AjY)s1`&hD(cQXo%@NOiKMwilcTmmIAF(jHy%Q=oRY`^YFs_}Q(X@L5X$ zrUVdYEjgFYoK%dQ_b`4`&xz_^O*M#WYu#WvZL*Fe@hn*F`_9I7lPF7mLUOfUF>0*?XROX1B9uPm(9rmd30n1Wy0}z*j_ApA`n0|9`&>fak&iOy~T06M_h+|GzL`M>oA zLD2tJ*Z$A1|EUOcyl*Aa9u^?T#?lsGx)SiTuzC0|@i)FQJ=#M`==P_5X#6=6&K}vn zS%L^@RHgS`EI(~EMb6~}A5WfT-LaG&rA8T-G20z~WwFIF6kI=)ciUZsw6%`-<}TVa zY3if5aT*3ENS%qM8_&ckhU#07Fw>rQpL~=|ZRgsHSo-g$iPGCPe}Y5LRo!Ztwaf=R z2eUqmsKIL%W3|d>ieF2JBqf|&f5;IWH1VU$$m>F@bqmbzr68MYy?aKVip$8#m(UmS zfeWQ#$@lqnvgx{K(k}g(&og`f!JhYqKuv>i-OW=&x8mePx%KX)$bJh~jD7e0@;OIe zr_bl}mpgLIU)?F{eKVjC_Nyw!IZJIB+{=K>f427|IGA5)*Sq*r>v-F-(u>-!VNkMOe(0iamN7B~fu&{`9!DY6IGY^CV9>`c|8L zkkJuO)kg8Glz8`d&&AwBo#6h)r6aAto@4U)g_*zs1YDk<%Tg{h;^@RlIq7Q^4=#^j z?aC@5w0U0-mpICGBZ@ZZ2pcP zw>!%#sxOQsW&&%0<~&ENN1Ov>AT@B}>+-A&GBA?{_GV?IDFnZE&=7V0v?cjxT*8m) z5rbSww3Vul%V<=83F|btO2ctz_Wfyls~*^8G^(r7dcR!W`Y|z7xY@>z8-5h}Bcdet zHT|R0P}0wujMYX*eB!Ps`3$BsB7~RgI^M^rwC>HnS$KEBC?`DL{)tWaIBBWjL}{C0P}15J$kp{EFDjDIZpbMg*UF)5mY z21}QGp0LHD>|hL~xh2wP&8f-=6LV`Fdovz>O7n)8KTOeH$HB}olOoCG|9Z9CsR!4F zItMyd@v&dixnU;dOm4ofCJ#O_h%e2pl4h}_wjuoEU7|a-JV$Ekc)s@OX@mNgoi%Ot zzbVA|?!8V>H%6f5^?Lzv$e##ROxh#r|8O z=4hP&8!5VY#O~%b0v8RNlDLOb5v7#^jB{nSCC-7ir=j>Tiq&(@)w~wL5n~N)1e0kd zG3l2>EWKHxX-` zqvXzwd&C26w76P?2-zIatAQ^ubC5_f@6us1i7N{@gWuj{OB!)?s-drT_23o*uTX`$ zyesUFj~g7lArP+d8nS|-pOuita;Jfy; zb^n6C^|+NbXyn(TzOU@6fmes7Xc?27IIc&yw*$0HvGD&E%|pxj!k(V{rl$+i+1h33 zDxT~7_pmg4n0niEu#MKIZX+}tg7-%}UZJ93r5`G=cUX3lEs-|CBMiegvr%JxoznTe zrXy^2H}g?JuxlUE^Eo6b9^4o^gIb1L{Hvl_XjI8T{s|9?B==xo?H%qr=f?HUgC2He z){lm$0f@}{%e5@@{2QVf=wiD`O!7AMDk99OmTiTI(~|*L0_~Yoo-2`?H%|M*MoZNs z`0|LxQtml-q;0lepu%9eSN|Hy=`0 zSOi+w^f>#D@=NdEdQcU7s&wMHaMX(ED|DHCS;`|TO7ngDKX#ioe=jq%?n7a6f1E|H zDj36B_wx?5!#{5G`7)_f<7d(=7>#pc<*M%O)1@o;-Jh5uqf>aXdj@e$Laz%&)w^l7}*FTctHj?&J)>RM)zxskTSPx zP=})TsIgM5#5Z?h?-3_Z)2fSrM*nDC>8VeIyHJkX5Oa6*yiN8^@_WB^SZPm_PA%Dw^fcI@iW7n5RNxEhE7ukS z>L||pC7O+g`oa{aIP=GBPy!61vYH~-9EeWrMzQcglDaIo5H6T3wZV(rHZx!ND^|l2C_~Y4okJ(wgau>)A<%@Z`v&v6v>10W zg7Dkz5dNj35bpWsJQzh@%R$#4y+WG{%b+t*Iowr|yp@6+PnzLdyOja3H``@kiiR07 z!8|whrz)ruHi|ZJmPS{iEVu{#5VI1P#6mdDNiSGG!3EA0kP1+#!R9y-s*xC{EP~^= z8y5aW<L{xf?0MB}93FIj3~Px9OAdIi)0?ImXO47Y%puc-^syRbz`rDCJ4oHg zN>EMDiHq=!jMFl4r??SZ<0E5a5JWL%&5!=^IRZ1zY88!YANRL6-@HcGq@!J{5$+wgzX-EghzSeLis?n@)i&Wfo2B-^H{D1wZbIHtmb zk`iCGo_5tA=5bK0M}SJ7((7y=#P#HCD<+>xnJ#ah40PuXW$Z>w)}3hl{C86%_x!y} zVU*PIKDPERmDvhrc2kcnkbM_^VD%A19?cZ49wq6zY0+GC{Qf)xL1oyvm!vKO&iO+K>Alx% zKBrQE#ys%ZRR=)OC?{J0k@+;c<4gsLX;fPq3@&0I2!Ho1JXV(k%P@hbZ+;W;XC%Of z(^sHCyuNqGw;jJru!}O{#n$+rWt=W(ZflpDfS~wop-C)=Ao4wc(eF{2#*E$EVWr)> zvuxX}?gdNps#ZAR`7LJtFPxKRZsT$BSUfY*ff&?6xtog~h?Fqi)Y!dtb&t*rX&(-v z{T^N3sSJgsOLlE&*y|RrGQC2p6dk!CqT#vgZcFg&IN`?B@WeVf6IiJUGg2+6-S3f1 z@m<)4nIRk5FJVQiIWrsG^8>b}?B9M4nvijqyFdJ~)qR5PbrjX^?Pq}HaUcJx+fTS~ z`-`KQu3t^f=y3ySACSnQ>d}Bw;I0x4R@Pp62d~?}Q*)mFfB_^nqTeui&kUE5`8z46 zZCnV4wbf6D#>BdQ{~@nspe-}oDt4U@LEz8q86`Q|VIA8>8dCrhI7NYssE!FCJT|bY z9GEf}VV=RdB20V$(WSWgU{Sa`HRr)6SXGY3t8}~F;nQGf4C7Hd_xBu-qE*~|0tef< zUTV{4mjxFF{SrgkoEQ7^si{S$6iICEs+VQO=nu5U11?AP%?J!*ZOzglqz*o%K}MFq zOjusTex2bP$J*LD0kHh(bA1-Lnw9*5+RDxXr3O@S{1?ESffYXt4@$5=b%1OS#mVZJ zB|RXDr+*NB5B>b?ijatlI9bcflm&T;konvkH;37;$_SkwI@yVON8+N}LIl|{$cSxf z@1W1S&Hp&ri49CQgkmBHtkvJmaKZDxRhK*7$-aW#cb})@K#M-}bb@_)A_}ZH>}oOy zEzJ5zjGzd5TPd&8(2pmIQnY6?t*kU41>1Rs{0o2D#0t5PBvO`bLcp}KvIbjUtxRlbau)fnsfA+;oq{_6jIzUX+cfjHb zj(>m}s@+*8S_JJ*bRUX(CxvT|W8n7=q9%_kbStAVRG|<%f@q^YniH`+^`mfYQ_Fvi zaYc_3B~7Jc^v`-Mh(QZ!U+mYze-tW*u%+9gOy=KM?T+DL+OKUtFkA?yFogvo!w9l4kzHRR6CdnxMhWhd{a8_iDZtG9&C4 zeyMQZ0@*zI_AqVl%z$gqt|-%bn=?m{swIvx6nXJlj+ZRyh#fw2NINW_PFVbLbk-Ug z!dh`v-8TMgnfq&?mRpB%ED1tF7Pwo^&4Z&@Q7(U{R|j$;3*#|mHK<+gsvxh|oq?7E zbE8q>7mw9-!PzvQCJU6SZ{8(8C|;J3fDic@E!U6rTlxMx+=(Q zFzNI_{f5WTxh`6_qi17peg~$==Ie7?Fa7;nkC(Lm=Hk^6^V_g~1>f6yPVpf(|4XOo zmhYTZ2D?lJKWu>y<&>5C^e%!cMTNG7l1g9)bBwHT@%?tXU2-A!U?gb2P$W%=eMN&fb1^lG-QCp{dPX$|`kEkh#h9`9| zBV=&wv`%XLO3OFXE;#Wk?Y>lR<6w)06FcpK~lfnY0Nf{z8dWv7Yx@^x&P-1gQt2 zCYqOXYray4Z;@qiOSEDW+{M@Eesf(4vp{cB7-2KUzC1fJ38r0MuyTlS0|>YJ)vbN! zR5GH9$}E{~S!?N8L<|M&U)M?o#^xpl|2iq8+2>S2# zab<>KIZiis#32t@(|cYx&*iTbQO_|#WB96RSpj;{-Qjkp7@xyjkBxVxZ}|VhV5alq zUd>S~Q!ouB*_i7bm)DSnh1>s=x*5uuT{=FH3QDe^_eHxmJ{2pbEu2;CNJbjb3^7?{ zjpzAuimg`Z85w>ZN@3|s;CUSxIt zr}5@AK-&~I&PHlS_o)&*{NH9oLE`472A$>!rPy*B-S72CK35iT#`CYlWNDuAf3WyO z=veNfsCN2$O5sTCg>!c17e)gdL}G|Ebir_BwQQ*{mdRfvY5AWl9M0g7q?s>s%<(JzhB3IZygYsSM$!W7UA268k zxxpf7F2F*rIv**>?B1pSW9Du_bJ24Hn_|!Mt_9=OMyQge1#BnJ5ic0OL%C{1L;TAp z)A}*5Bko-K3tO31IEfatm|?9+$zHz8M0Iq3_gDZ%t#?%SJemhvu0*_G;LUr@)pmVN~jTA>a2z}e8q#|tlz?y%>(*fp;72X+xpJFPa#Siv;c22D0@_cu_Z z-}yAjyv5nQgcF1H*~VG(9gZ;b-GQKmF&`2)KwZlkd3O z?Hm7hVP1AS6{sN>i+DBd9FsV{q<*=ms;7=Bp1O~Tgni!`2w6~H0-wHvu-c|$zvSN} z3sMp1dQdF}<_^(vNpH8VCPj_jldlW9mIoA)MdSYN@t5&Hf0Hr-s$garzPu%t=qpt2 z3iqa+=CsA`ft2M_4DBmAM!qof9X$^LGwGME?>UEvk=N)}?%K=X#Gr1E%nEWvzSBWX z?{1S4#&VU*9Rul`t4Ci(8A=!2l@sATEqZYY0|b(nT-u6mF5WpyAH0I4CfM3rz`k!o z_l(jne(~3`r%X#amNS@IzXUwU#pH~YUer-+5S33E1u^UE!=7(L%s>60Q^i9op_9s# z#nZ8S@XS9@?UUCmx2z^Fw=6bm8`KYBvH@GN`fQKQ-t2P5?e+gw)X&;*yC*_vf!8a@ z#d?{@zbMY1r@EF+%+cc1u7Xi_!yT3BTSSS{sy$(5AH=z@sMT8ejNe?ZL!#c`2WuE# za=FJt9czxJ(+h#TP+zzU`1G+NI52lnVDwV0mWZ9l5y!?ug=f)Y6h4F5nL#Pwn4FBD zI$*nO7K-_5j-XfX0%1fraR`E5xStMqw=}-j%ow4vX9>>&2LG#nmq|b!3dqw(KMQZh zw#ZMXwn^g>sI#{ncOg^eYm^OJmg!iW6b?mYSM>bwSCq$$D!J_NEf4f9`%qc|7CzN9hg1R%Ug(}2uG)T~xEU(QQ5=j%o$=>`>x59G8GUisn!BBgO|RNH}@*Y`C^g07_LtC~37-8G{eV~hFb z>+5i0FXWuArH8FtT*PVxZ66I7czmCKXo*0&vizKap64{I#P76EPwh2tpki_kG&uql zqqqoikeul4u*IeHZDGox;N^`f%x{sOzf%CWquFn?@0ZU{r;b&lEA(`KYlcvGLf8WpLx(mY`&-(m@Y6A=0ntN@IZ&r||1Fqnburhs56~O2nx7g_B z;yu=3E#*#k`l_YS?%kVLXvaExu^Vv+eXAQ~rwcpCu4O-`LV^?VsGhXpvFL;$-^Sk^ zt3$ZfEVPVq7BJuKb@5ma2`%?|Za~xuE$;EdVY~6YWiEmw^b>5pZ!EiXaVC$df1fdA zrbaU8kt$*<1!8UZ5I^`y2}Rjx<3qP#nerrbLF#ti1M&N%;^l>t;i*879NO#cEZtK! zHE?{_?IP2z-a+w=dgA)0$ETEO}qWDB*Bm0Yki)8tXgJ|DhkF zaq9t;&#ZGpSww)FVZd~qhOUP%ucNs4;?0stZ*I2TT)u5x^>5cJ=zc2Qpx=#m&O4dcDHX@6 z{!)Yg^d{(0Dr12twb|%Lp=KP|JPm^s(6LwCa35J%5QCGbe4#s^ zYC@ijZ7M#b*LcIIIT~{jd~=*o(Wr3KpA|u!)^;{0E zr%N!Xp=nELTG3hta$1uOnLVz;tgNS*p9e8G4T0ZyBi5Eow>Mki!t4vQXb;k~dW*7z zdzz$ay#lLun_Sk(It_E)6L~W3EawH-b&t*zXG=lTvUJ9Ke&Qzu;vD&Yz5j?&Hkto# z*=}<4<-BOri81+jT1?7w84lbEYBR<0k^)UEUv~a;q(G?rO4ZF`x3hha1T8b6CloFA<6QNaenK2?^n6rfPaZd@LK~?_Nd3We`bz|SbM^g~ zx72!0&NTCk;@F_{{bN1+1tg>scx$*gICK}!&FXN zmLc)w!a*BkuQ$9cCyO?<9oK#r{+W%K2PaPaVH@0^-DVDX7*w*zZv0D;7h>BR@IA?d zNuwk=M-atRhxtAUed3T}tXdhPKDqG>tNbo!eUG^oYL205R=~C|p#-pO|5I6-S6y*>@%<#lBkkvVgT)10O_WZV} z#Q>$a&)P-P04?AA8rcBXmRXcTwNpdzB`hq!A&rRs!Ps99KOfiGi80!3L~;<4zH7(V z&jV;xC2vJjm%sr&=P_;lxJ%kJ%VR@@lJ%tU|)B?^kG%HmB5i;`uBStET z7V{6V^U{B>VU!2A^}`2)30&7=hzSDo5q^iC)J_(yOGyD^Am#A8y^Ct97$q?@TfWjP z{I9#!W)V2bxEH6(6l4uho4ORtt!DwW>@lc06$WY zEVzsAW-G?_8Qx#g&F8Fj_zi90XJDEfQ&#!JB+EU{$i{y^n0&HOq8IAj(I6LPxk z5VI8*b;`RbLt|MnT9gy!4;xQ%p>G%3xhfy~-lPg0OQfevA_$2 zhsc1LyHAhxtxiJsBAUX56N(d0Pc5y6arU ze9ZMNrzh280XQ;B{@jojFpK^kE^@j?gLxVCAb0hS0G{jSuN#pJ1UgI;#nl3t2d~RO z8zN`KzI;5q0n8^N1|s#V4l!b(A1cyP?4(AgcW>vfQ4!WlBZi8eLg_H;;`ST)nEF4z z=1u{J5jUA5TU=e~m-VVMR&8D*j_8QDE&*>+>+FOVYiq_0^HEDiBWdS(cC5B8J_Z^h znOL3YwkNU*%5dpx*poM+b{MMnWKBSS>{b+oKiMG!#j}iZtysPEy65$`2`fnk-2TMX z?a)d-S8#8$+{Q)LBRuQ+adrY8kw_8QLXY*53>;!u>w1w!0gs(2#dy%)<6ebM`J1t4 z@pT|+Q^zLw_4juwjpQRV(9l;%5zJl*ryrbV*xMw#1gDwDN9kqyYn5c`Nme4*WU|kY z`S-4D)!2{Wy#cQ{efGp7Le|NS(1gJEGZE;mF|&dMo)>B!TBBjN)PCX8Z~(l!!4Ds} zklR%Hafxoh2zmJEfufCzL`~z9dj!`ofPl98Q1-6rQoITq0qt*qi8pdYLS||oDljVm z+Y+3@hD?F!CNG4H>?@1l*f@Rcgmfc79nSu42N#juM(+H!-FQX%=6o!Gt&ao|jC)Z_ zvd)w-v?5)oQ%OY z+NV~^sqCqT(mF<#s1c*>lbf(w?XE?v=$=NV`>0*UH#cXN;g|SV=#+Uz&S&8>x(LM# z4+3N!0cE@tHByrKNmIP$bywdUqVj66>99!P_3X#Kh8E>ArUxpG?4xfPLUwAJ0caQVTiO)7cD_z|FeQFO)g2khHyEJSq zopiUuV?wY=NVPW}o8Z|(mA(I3Y&Kec%r&;HmNER9Au~6a2cIOHvwyA-E8NX{`YG11 z=O6=rj4>|Anm%D7eWcp|$Zzte<#2fTz(L(d7xn+<@>jaB#JLsurgT#IH5VAlR&+N| z=fsowmM)zuHD$e3Pe*Loh_LU3c z)wuHS^;Te)+#%9x&*L|1B;Dy~0r*T`Lb`CIptrM1XzO(-wXQ6;pd)KIqhN_NR5j*G zeS#7}xxAw8@%`l%yJ!t5C{z7?Gw))sU+y5qty^;!6?|)9Z=sxYtgY?3FE1~DkIEY{ zZl&5OVs%XiWR~--eEe75B|f+B{iH1Fg;?b44LKh7nxurzNw zMGnns*i6nea`@MW%{=X`n`Dpn5D5LbE*tud _gameSelectionEventList = new(); + + public void SetMaster(GameSelectionCategoryManager manager) + { + _manager = manager; + } public void SetHeaderText(string text) { @@ -21,12 +36,31 @@ namespace HeavenStudio.Editor _headerObject.SetActive(active); } + public bool HeaderIsActive() + { + return _headerObject.activeSelf; + } + public void AddEvent(Minigames.GameAction action) { NewGameSelectionEvent spawnedEvent = Instantiate(_gameSelectionEventRef, transform); spawnedEvent.SetText(action.displayName); spawnedEvent.SetActiveGearIcon(action.parameters != null && action.parameters.Count > 0); spawnedEvent.gameObject.SetActive(true); + _gameSelectionEventList.Add(spawnedEvent); + } + + public void ToggleCollapse() + { + _isOpen = !_isOpen; + + _collapseImage.sprite = _isOpen ? _openSprite : _closedSprite; + + foreach (var e in _gameSelectionEventList) + { + e.gameObject.SetActive(_isOpen); + } + _manager.UpdateCategoryPositions(); } } } diff --git a/Assets/Scripts/LevelEditor/EventSelector/GameSelectionCategoryManager.cs b/Assets/Scripts/LevelEditor/EventSelector/GameSelectionCategoryManager.cs index 7533a468b..487e85476 100644 --- a/Assets/Scripts/LevelEditor/EventSelector/GameSelectionCategoryManager.cs +++ b/Assets/Scripts/LevelEditor/EventSelector/GameSelectionCategoryManager.cs @@ -40,6 +40,7 @@ namespace HeavenStudio.Editor GameSelectionCategory spawnedCategory = Instantiate(_categoryRef, transform); lastHeaderObject = spawnedCategory; _categories.Add(spawnedCategory); + lastHeaderObject.SetMaster(this); if (lastHeader != string.Empty) { @@ -59,6 +60,19 @@ namespace HeavenStudio.Editor } } + public void UpdateCategoryPositions() + { + float currentY = _categoryRef.transform.localPosition.y; + for (int i = 0; i < _categories.Count; i++) + { + if (!_categories[i].HeaderIsActive()) currentY += _headerOffset; + _categories[i].transform.localPosition = new Vector3(_categories[i].transform.localPosition.x, currentY); + + Canvas.ForceUpdateCanvases(); + currentY += _spacing - _categories[i].GetComponent().rect.height; + } + } + public void DestroyCategories() { for (int i = 0; i < _categories.Count; i++)