From 39227774e14aeb41761e15145b6433a776b8d410 Mon Sep 17 00:00:00 2001 From: Anuken Date: Fri, 19 May 2023 11:08:18 -0400 Subject: [PATCH] Ripple tint change / Minor optimization --- .../sprites/blocks/turrets/ripple.png | Bin 1498 -> 2015 bytes core/src/mindustry/core/ContentLoader.java | 2 +- .../mindustry/entities/comp/BuildingComp.java | 13 +++++++++---- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/core/assets-raw/sprites/blocks/turrets/ripple.png b/core/assets-raw/sprites/blocks/turrets/ripple.png index 92bd3db328fdba385d267986c032eee5fdf9d7a8..4660117fd84fec22acd4247a7a25affcb6b9d6ba 100644 GIT binary patch delta 2002 zcmV;@2QB#83*QfrBYyw^b5ch_0Itp)=>Px+nMp)JRCt{2ojqtAM-<2ZGKm{E!d7uj z%t;qwHFsrjTm_uM27jnaQUn)5U99*>z#+j^kg@ryL&D}SJ(qN1YWurfs1=*g2O zMW088k;k|C-rs&(?*YK8S6kk4moJ?K0G#i>==*JdfBkdJ(<3o4F_F8?kp$<##w9)g zjE>fw<&^jUurzkIr+;Vevn-U-03BU?#pq}~vz;!!!Ze|bd^G42Frn7e(a|~ppw(=! z_C1KE$Vb!&sDIUJsMTuX@@I~&L_C|p9fL!Z2rxxg?_a-uO)8&S6m`6p|DH~ITpK|V zkXPeFBO;Ghvw_vM&BFGd0`YA~HXbbR z*US*{6?rD;QINXEn?#+6y}x^Hcc(wxA#Go))v$4QId?mk_^WH1&XJJ%j)F`0?(qqX z?ENO4n3FkD1mxBJ_jj-Di*I`$f=_(THYTpVVDgVGbdOJV{U7|Xxlg}j& zQhx;G)&BWMi%Qs@_S&bYn(q_3h)CFrhF+)B$rvY%0#+Z8)8+>+A#lovPQ)m9%3FV{ zt#i(UY=BF6t>$NlIXTiPdLov0tUY?R<_pM1gO3<}K#=&^30=MK9j6vkj+vQ!jb*Q< zF!3~XJrJ+0azTm!Pwh`y^9PBmB6K<(XMb}52udX6kzy$VNGCo(G~ndZdpP;@Uhu&}Oo)*arVvB?^?$1u z$V=9&dBCm-b-^ip;P+34``&+gZa3ZOTId2~Bdfd|fvODZ__5&T3QBWfmaFE43~ODH z5TiMaMWF`F4WD3bZ<-KePGOqB72g+`F(^C&xF#rKPUxh4Leb&_iJBm;2}R7NxhA9# zA4u2-P)#UuDT8W4D)E8Dov^eyQh!hc3^g#N_`m?}5&QA4o&FDIcSvJz?y@vx`?=v0 zz{)%Fev3eCfH|Ju#~5W$YW?Neb*~AMPBhO1YBW+OW;cXJ7TyF=hkdTA4nk(Nw&rMV z_(XK^Ll7H~X-YhlY2rhLBfhlu155+VCFB3A2_fQhZv-Lt0k-w}RdE`cD83etHK2-0$k!NLWh??+9lu^(WqA#TR%mO1W_O0>fAy} zVM1*271F^1+W_B0Cx!`S$JbO!OeoEA^kIc=Em{fLQ zYTP*sKHq&YG(*@2IRdU9+saHVLd6HtPr!6sqc+acg3T=IBn)6SLAnVs#8?e z8Y(q`BR-HIA3$9%(oHZ$mt2JFx`$wnv5y-o@5s%O6tMxEg*Yy@Ykzt;Cd9mfBV?tM zLTM*rQV~<$Jrje{8UVz(&a=$o10^>Ah@TNF8>Bu!zllOY9Ry^bdXoxWjZnxV*BO@cZ<;fB7?KhVS z$q564$qV~NY@s>fcDr3nPFOb~W=S|;!_Ep2@lEy*Ko8Y?gp-keRdOl0qPqYiOd?uvqD`FC(hUY@+ zh)=Ek0J9GWc}sLzY!h0|#{T|dn;;ec)bm-E_yExW^WQcN+5}yEMJy9S#Mdd?|1GYl ksHmu@sHmu@s3;Hr0Yetc%HAsx_W%F@07*qoM6N<$g8A{p2><{9 delta 1481 zcmV;)1vdKM584ZmBYy>&vpY4AbtBfJ`_k;!6-b;+Fs{5PC1fQ~<2POCV|h5QmF6=A{9! z#4kZu-+T#x6@Nl0{&E2JheIG}oUSB33Zdl-YF29>JD8)0-^xHT0QBB`^h=N&@@B8+ zsGf}lB1HIT0Gbhz2fz_RbgDZ{{2GK!5K9;23B=I2;Quw>AVk+2r~n=xA5Xu(f34as z+IGy*tN^ruSP#I<%gcowu6u^?=f}4T+l~nbfQo+j?}Kma7+ zTL4P&ya23$m<2!$LV3Iw1XcVJKusJE0B<0s0nmW_=A3H)JP@b=jtv$1?2F^d`$Pv~ z6{mY)!k2b#?{-W&fS&j*(Hng>41gJkX#sS;q$&st1QCF?+tG?|0l*H#5CA<0jP9rk zpf$wwihs`n;0eS~0MQWC6QTqFXrFxnz!Qj}L0HWRYXC_1NddqTe`Nqs5X=Cqf-nIv zQV|FM6aobRBEAK{5rXB-w|ogL@jU>n5MTgE17Cx&v-JQ-j+~u}D2I{~fY-?PY{)&_ z0D2HC0FDsQKAxS5P<){m;(Gv?x}YckI|QcqmVZ=)2EbALApj(2>;bSDQ+!J*qGzS} z763@P8eSmb1yEY;A;Dp->Adp(l6kVNW&kY+Q2<&Hw0$;|4{F>$3V^vL>;<5K;CWcB zPm$V#h@TFCHDBKX03Eex+l2tgSdWmlU;+VP88&JmXaQs`2uWSBq5)tXw`)xUAag}d z`hSuk4*+c-<^hnsBq|+1?HmmNG!oVTV2!GV0MHCEYY*9aFbRM)6(Ir8z95=m>apEa z0Mam23!svWqvm?pxgv}B5`fS+zye_v02cA70JK3E3Sk8RR`D$mT+SCsIcRf1Spbk! zL@!qGIAgc?UI@J)ECK+U3$mstX!QVZw111FBBBAHxgbxJOsNUq-QAr$f!4JF0DYLh zCVT^s4B*xU4eo+QI^k6SggasFrb*0U=xP8owTtjL01d=?iMSB}w1s&j5Oc=?S_oe8 zHQCTe0O;%pErgU@5KH{ovY}oGX*FS{_{an-Pd$J&Pbe)NZ7ImGj9n4)PFb|hzJFd8 zK-9F98vrtdnZ&jw31~82s4SF0pM>` zG&~c4DQd#I1D3>(s0n8QSf(c26Q5lZ&HylNI=YejNiE1k1IR4MXx55#|JPCih%QM+ zkAgBwlG1{`9fT-;ZDr&r0JQyrCVv93nQCi-(OnQT5+2b7Nf1l`B5T6YxuDFNunB-= zV-99bcohJeny_Z?2=~@Bj6iG@fT%zW*}}%PKM*qt&IS+}4Qs`R0URM@r65Mu11u0) z;zIy55Ju*IGV1{#0JZRM0MKp9keyR9iZU}4V;&wJPA%(g_zmxtH4}tZ5r2Mm@m>1` z%>se3by=kNH2|)ui8DbMUH4^)PX#av&Pb6%0jvPw|0a8n*awtp800000NkvXXu0mjfMpJp= diff --git a/core/src/mindustry/core/ContentLoader.java b/core/src/mindustry/core/ContentLoader.java index 0fabcc5ce8..de2fe755df 100644 --- a/core/src/mindustry/core/ContentLoader.java +++ b/core/src/mindustry/core/ContentLoader.java @@ -33,7 +33,7 @@ public class ContentLoader{ public ContentLoader(){ for(ContentType type : ContentType.all){ - contentMap[type.ordinal()] = new Seq<>(); + contentMap[type.ordinal()] = new Seq<>(type.contentClass == null ? Object.class : type.contentClass); contentNameMap[type.ordinal()] = new ObjectMap<>(); } } diff --git a/core/src/mindustry/entities/comp/BuildingComp.java b/core/src/mindustry/entities/comp/BuildingComp.java index a1c5f7b766..21614e4e5b 100644 --- a/core/src/mindustry/entities/comp/BuildingComp.java +++ b/core/src/mindustry/entities/comp/BuildingComp.java @@ -1006,15 +1006,20 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc, if(proximity.size == 0) return false; + var allItems = content.items(); + int itemSize = allItems.size; + Item[] itemArray = allItems.items; + for(int i = 0; i < proximity.size; i++){ Building other = proximity.get((i + dump) % proximity.size); if(todump == null){ - for(int ii = 0; ii < content.items().size; ii++){ - Item item = content.item(ii); + for(int ii = 0; ii < itemSize; ii++){ + if(!items.has(ii)) continue; + Item item = itemArray[ii]; - if(other.team == team && items.has(item) && other.acceptItem(self(), item) && canDump(other, item)){ + if(other.acceptItem(self(), item) && canDump(other, item)){ other.handleItem(self(), item); items.remove(item, 1); incrementDump(proximity.size); @@ -1022,7 +1027,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc, } } }else{ - if(other.team == team && other.acceptItem(self(), todump) && canDump(other, todump)){ + if(other.acceptItem(self(), todump) && canDump(other, todump)){ other.handleItem(self(), todump); items.remove(todump, 1); incrementDump(proximity.size);