From 2aff73a958477d043ff679e8a035098f1f97cee1 Mon Sep 17 00:00:00 2001 From: Anuken Date: Thu, 28 Feb 2019 09:45:03 -0500 Subject: [PATCH] Added drill output rate bar --- .../items/item-spore-pod.png | Bin 2273 -> 2282 bytes core/assets/bundles/bundle.properties | 1 + .../io/anuke/mindustry/content/Blocks.java | 3 +++ .../world/blocks/production/Drill.java | 19 +++++++++++++++++- 4 files changed, 22 insertions(+), 1 deletion(-) diff --git a/core/assets-raw/sprites_replacement/items/item-spore-pod.png b/core/assets-raw/sprites_replacement/items/item-spore-pod.png index 32bcf69fed989a73565d437afd96b1e339e44e4b..aa69408ee722a704c671acf44102130dfa85be89 100644 GIT binary patch delta 2157 zcmV-z2$J{V5$X|;BmvoxB`E`h5Q33WB7ceX#*4;~La_MwJqk zzn|phns5*??!147e%5Em<^F*BBQMW#qxI|)&qinBwjs}x=V@nMJR7mwayq|FI?rYQ zV9xm;)vakMd+PPKS2&{y_G4#UXJU)*I8R|{z=<=@amK&SMQ3c6JiYgwxrQ&!yMIP6 zzO(tr`Pmi5hO;2N_~^(<-urHO=usoOpZqjY+!X|0eK%Shqi^f75Aakl$EcerYlMYx zr|0!pz@_*XjCEZJSA>Zbh&7;Da8*Nz9K1cqQ=?3S`np%DP|>^Y;BMz!b-ZK|?oX~R zQ2e}TI0Zb-a0DI|s4>Lu(uLN!X@8wpDdOZtSm_9x(ZccNGVg?cb6p#aF+-Qg#>-dG z%gvaE8WXwsja2}I#__2v|E|kC#EpFbmVuxwH%AzlZP{BCp?hrc!kMvdX20F3LE6p+ za1qWHC_@YcY#5wBoqxD32DJbP z;lK)LkU#*-dqMoDkBFfxEZ&Gn5S1uNa^T>Dgb*}Lj>^jFRWzt-)TB9b^ig7n8e>c` zCzlu$CMhH}DW;Ti#-SNoXFQ#;BIn`?7hj}=q9vA8az*%5U!{hsHP%#fbB!C)zlElz z#gslwcmXuCaQf8p0I^|Fb`gKz<9|2z9$c0JzYghT zKuMTTqL3Golsa&kL!fpB*PWp1T2-iz_%iwVZhpH^dF#NcTw{j4Ew|~wxU|p41JDmo z|B-IS{#tq5p%y5k#jZ=GBv7f&(|;~~r}=~k(b!08iK((8rUEV^7Y9@CQ`3m-Ukg*(YwU`>grMh| z*H$vi&mPUzUSDxx;*m`YST-K~vZtu=4V{n6TY)|;QqUmoz` zqg5K)+R#V>ImRn;#va9b;tUzYVOdvt@gt}AX{5nqG+IcfnSV{tOp)z~Ky(;zwl82i zI3yROw2R4uCWzO%6{ivXL|WoH&hytNL5 z`%uO^!@vu08ZZ&**`XcJ!B!06HTY8U@m|Wv!Jr!SNp1}L$E5jg*UU^u4|gEtkSsML zOMh9g2U0XSIt;IA8=2G9yZu*L)BB9=D4P2)0PSVyejbR7fg#Px!E z3J)<7xg2kU_doZLfPK|_2Y)wRRwjX!H^RaDfPHn%NUcAMjD6?6$9vD4GH3O>gmKI8 z`t*rLw78uiVAJ-AF2Qr9y-b-OD3IOqQ$!$lN=?zsl2zwfC|1-Bsqm?$JSJJ-uAhx*0va z0|2%+SEc7$-6|_m0-*vY@U#$FCiAT}B`|?o zmB7ZmE1VSYTX5-XSSEbd9J0wID1Q`F@WcI}*p5gCr&2y^4w;uN83k9>nsRO|z_rQt zuKBlX8h%kbrUm4|CLNsxLkT7`;0pe!bKqxNZVxp!i?n;GfThYU1AwiH;WlTzo>{+) j9@RJ0{>rb}zY*{WR&2}!48hm;00000NkvXXu0mjfOe#2; delta 2148 zcmV-q2%Gon5#bS#BmvuzB`E_02#JwVB7dpaCn1D|~MbDZ%X-IN538M2Hqz4x8DhJP>4 zyGAd*v-!yVvnz~^XF+`N(UB9s_ucZ)qegT;`DvoKD+s>&ZZsXEZ|ic1@KiL%sGBKk zgoSWt@awUNOYqMa%eoRSg^3l2HK18=RYQp!ygevTqfCSPx>u@DF}Usocjv0}OQv32 za@B7LaM5rAc$)DFY${Om5W7nkT7T!JbzUXK$&Ikm5jG<{@#Qk_gnx5g8;vnTm&oen zE9m8BOhb){-2BEW07B#Vl$U?kWggu52!E}$j@=f6 zS^xz5=mpRqfdEzrjQEkDh@s4$gJI^#!pezr^f5$^F-n{qmBmXCmM9`BNwRtk${JNv zHEB*Rc~BUqn8YMaDdmhqGq%onI%7r7#T8#d;S!4!Eve*+@TsA4ja91FRC9C9H>7`y zO-$34TJF>lNwc$q?JmQd{BaM8ac2Iprjb4!Z9yL0sO~k@lCwJ5! z7P)OflTLVI2E<$-ATARD1hku&S)~x%L~declS5Ll18T$*oJJEdAQ(D19&}-MNA6qP z42M6$&3!`7Oz8d}$e9Vp{oxyb{sJd1a>O)^9Ki|!77mD9HcoAPU!`_zLbf7Nnvk3t7 z!_$AHo3X!E9(Sk(%4phUsgxKhwYpR?xz+)C$GB7kKxBvR0Dy6yPjb&4n0Jz1Sb%UG zsdwRs9-{TuM{c=pXMbbbrSCMK5Fr{HaV?sv7sOP=MdWmN>V0ae$o{o3rMg{ zU-R0EXZhKq*?N4un?2xKrznQjV5uuj22MrP#vN0MYNxxk`qf(V#@rvReP_M-$^7Mk z5IsFj9`pbKY{1V+C!8MQQ-t7GwbIqfjcQd!jj6;koB2$xX@NBNu_=_Kjoi)3*>kM?M>x}jVX?qm44-Ju zW<-Ho`bmYt&faHhX=$V+wIbGeYgOU4i?F)iQj{g5`KD_0`|OI1*FbV9Xg<}CTn9jJ z5$?*=P>gn%bVR{Xc$m=98C^$At9b_|ml~1FF}BU71%I}q)9EPB`Q#27UOi_wgA(Q8 z*CIFL#QV2t02I&-qruM8j}V|hJuEdZ&-jW{R#-XTr8-b0Q!b5ri(#O5jH5GR5M06u zR5O39P%~he25Qw`l#!K&Wm=G7@ZoBd;}s_67LSDx>Rv7)vv6HHKrs#9uRIE4JE+3j z_vA9RZGYDDU*YL9w7-&`Pa}M#C-W+J3fI?YedGIWUkF!SqY>N*2?|n&epe;&!ZI%X z+DaPpZE^Sm^~{rg4;Z0{vIy#_ONy|RSuCW13i80PBxDE5ZASxuj;hWAxl7kQf7F7y*4RlQ4snfyP60TpERvpEHWEO91(S!P!x?!@vMs?Z7QedLr?tRAC#S0Ao12Z z5bi@f-Wdj7fYX49NY4)K{2Xk>5MIMyNelCD>z-ofI7Nf za8KbOk3=rV+u;4rJtSaX_1?kXO_r63Vdaf*@IGK)T{BYa&mv>rx$p7b^QO#M{Vt(y z8D5`0(TEhcGX!kfKG7w3uC$ja^8>{aULshozTy(vv&};^m>1h4pF)XnxC#PZWs><1 zi$cVI-j`2`lLiMee;N}q3w@%u#{d8UheD*nCL^{)i0=CpYiBbs zFfd?PPRQ)Uc4g|N0TL}|U|?YQPgWYh=6fq3P|xixt8N}0KF{7nhj}b`LFn`j4xjJ(!MChWx0d3 zFXaUhKFe_h`LFn`j8tio;j$cGT;uXN(GDOtky*`Rg8CY_*EDj>3%BcYGNe{}5*ehn%^rE4}~ a8~^}q4a)@Z>J{<;0000 { + DrillEntity entity = (DrillEntity)e; + + return new Bar(() -> Core.bundle.format("blocks.outputspeed", Strings.toFixed(entity.lastDrillSpeed * 60, 2)), () -> Pal.ammo, () -> entity.warmup); + }); } @Override @@ -197,6 +211,7 @@ public class Drill extends Block{ speed *= entity.power.satisfaction; // Drill slower when not at full power } + entity.lastDrillSpeed = (speed * entity.dominantItems * entity.warmup) / (drillTime + hardnessDrillMultiplier * Math.max(totalHardness, 1f) / entity.dominantItems); entity.warmup = Mathf.lerpDelta(entity.warmup, speed, warmupSpeed); entity.progress += entity.delta() * entity.dominantItems * speed * entity.warmup; @@ -204,6 +219,7 @@ public class Drill extends Block{ if(Mathf.chance(Time.delta() * updateEffectChance * entity.warmup)) Effects.effect(updateEffect, entity.x + Mathf.range(size * 2f), entity.y + Mathf.range(size * 2f)); }else{ + entity.lastDrillSpeed = 0f; entity.warmup = Mathf.lerpDelta(entity.warmup, 0f, warmupSpeed); return; } @@ -257,6 +273,7 @@ public class Drill extends Block{ public int index; public float warmup; public float drillTime; + public float lastDrillSpeed; public int dominantItems; public Item dominantItem;