From a121c4d0423a5df38a201eb84c20bb4ec1c26b0d Mon Sep 17 00:00:00 2001 From: Anuken Date: Fri, 21 Jan 2022 00:08:56 -0500 Subject: [PATCH] Fixed square numbers in stats --- .../blocks/turrets/afflict/afflict.png | Bin 1800 -> 1760 bytes .../maps/planet/ErekirPlanetGenerator.java | 2 +- core/src/mindustry/type/UnitType.java | 4 ++-- .../blocks/payloads/PayloadConveyor.java | 2 +- .../blocks/payloads/PayloadMassDriver.java | 2 +- core/src/mindustry/world/meta/StatValues.java | 17 ++++++++++++++--- 6 files changed, 19 insertions(+), 8 deletions(-) diff --git a/core/assets-raw/sprites/blocks/turrets/afflict/afflict.png b/core/assets-raw/sprites/blocks/turrets/afflict/afflict.png index 69f2a1b06593b1ba8433943d54fb35a731c09c8e..bc1d57ddc0f4e1d35795f9866803d77b40de3fa6 100644 GIT binary patch delta 1731 zcmeC+d%!!vuzr@Oi(^Q|oVRnW`&3*7+LGNQWEd9OGDLI)_pnQ4zu%Zu%-dsTa4qMp z?KP(dXEg=HWD;5}7{s~_vvPgQ?39!qPYwN8dD}Wx^yl&TiIFoSuQGT}Qb9&1&+Yuo zx8P{~{yFwr|GoeBQO4+ehw8KEcpa0BLpYCR4IPdv}lyEkW7dxaLoXw067iQ1ry~Fe1 z?gx*GtcOVrKL2#%W_3tBIQ#Ms=j{fcI_a*qAS*w~1w1JtA!_wJuFjmw8+a$2>^baH zuNT4gV2%NA^YNhgO^i#Lt!)GQx5-!KZZ~2)$q*I(QP6k6)wHa>3v3V6V|uJ^{m}~yVtP{!6osCxV)Zv>k1ybh zVSar^aJhQJY38@q-}|5M4ogmdoF)7H-^UvF*m}t+s|w!hzx@{Uvdh`>WLQS$gAHm2 zI!>7~E|Z;9*!LjoPWJv2Asb3QF&=B0JFkR2c*;R-wJ^?YhMu8!mN6>%+_}=SSf!48 zsqLI?+aGlqYF$1lf<7fw5~_{D_iLwtTx4<5)I zVwfYi`HF_MReigG!=<$EY%_LF>JMNo%WqiHeZ+8+y=_;E2}4@rQuP&K_wQa#H%s$&l5W@}62p~cnxS1ftMg{_GDe0PUx&Nw z3=jTSm_E-;^cQZK%k@k}{=oOb+;=;7=3aHkF)d)@bPTI;?x-(ST~Rvmov6dBtPN{e zf}VE;aK`WoI5On#G0m9f`!>&E^}}1SjbTeKzT=B3_s|n{xcqfiY~!UdGtBL8MBgYNtpf@1K`f_pjLh`_*oJRln`odi)Ik|1@6y z{Jj5j)h3<>--<=vGuitT>vttLM7=!m5Stdj8SBCe!>QM`LHU#}&KXb)YpN6wHFED7U+E;R_mB%vw z`TOo|5c7f1IN|h@8tuN!87lJDM^7Fss-F66r-{j{r<-1-z15Dd@=cg6@Yc0{&D*t8 zzr33JjFpMu!`Iv8=C@YZN?n^f{ojn!hg8q2CpSgIVuZmpxWkFS6GeecY%{=fTeccA!@;qF@HdmBA6?QHosWPP$+6UUkLnc=MGv`4c7siXvKXKu7>Q#oBfBs%PmARsvK=UmNO{(OD@UjN_U zv)k``%kArWZu0i&!DU<-ue7$w#IW7`rL%D1+SMJ5Rg6nHe?+{n%4P6T$Yin#+jWom zL;0m3CJ*5U8!vo48hhXy^I75LoW~+wSbg1Auu{dVH)XGRcD=`4)`*u@HPIF8g*@U8 zM)KMvFV%jvJURN$hsW7lPcE97wV{ah!XA#g-(Q)vwy)UDaP|qa%x0;K?UJ)M8|ZgD z;Cf^!f8MrS<#4+p!-35PGKDri2Q1aM*UoA&Ixsau$x~pfuOcslgSgJ8-;9gYCgUjQHBp|S+rH6)_XTHgx9m?47HQv#=ak6w6t3?xM--Mcmx#f(} z8l17ZKaG82Pfjam4U_g*l>6a;LGZ-o-aA`4m(17CnCbBA)OLe|IpsQ+>ZiNk)e&ms zm~B_JVy{+M({r{uhK8?l@wfB#f12m;TG4FQ^qiE_H&@SCuyy?I(?~|ciAA%dC|;<-vzx((@c-3muT?L%JmQtKJ(A5acP>WmT}c$w#+jsQL`N% zw`O#zi(^Q|oVRmr`((@oTC>^tN*E4)V0`28LDOvW#)vv`Cj1^_mPU_maKzo|yQC~+3r@RQx zT}d;GV?>f%PW0YvS{Lz5=o#w-fuiJT3$&;0tg1Ub*;_fY=c#4drqv8AB|gj_e(hPm zy0dvJTN>krbvx8`wi<9c%&704s;0zPQM<3^V3@+0_0AUqypAtqc*6QpRO`%p=ZgVK z9B&v}X4ch9d~6bBILE1MP?7e^o3Ekd;ko`Ri{G|~-A!+85Mfxm`bUT2g;mB^l}i|Q zJWJlMu6UxSvb3`};q|JumJCJ=H<eSI)HA8%{o#wH8zeQSBs^Pn z>y4<5FaN%WGCNqzX4;LL;19|JCCljB2(>hz6nQ`UQrWt8(wd1RN z6--^~s|B_9Zk-gj_wpVG28MmLpWnGjZ*@OB>+_}g$&nV%HII~@-Eu6+Jodnvy7*O+ zXZsgh7EYCqUdBy zJZFnnW-)JWnyBZns$uU(#-}eI+=|=xr)=F<%g*J^j8CHK*G&BAU?(8L-4G^h>U4gB zF3Vot`Et8v$>ec-V(2Jg)SkuvA;l(b`}*V7Vwz{$pEHJ;&OiK0*D+IWfmP@Uu+w0+EO{&@cD>qpFzQE_6-0?*#} z&sx6jo}kI8HMh5hvNhGKe!3b|p3nK%=yzPLzM{bYwes9+)Uv(_GzlNL^^D!d?7XXa zOUx z4=r7nvQl9S(}i2<^QFCi=5&QHq`kZ~hx5*gR)<}Z*LfJ9DR!TYIF%l}XXgIE%c5T| zZ#1p@^;3N7Nu^GOC5jiS4yo}rw)~v+c#(bG|AtRuUln~nn=f%%@VDaX>2Uo!v-dZ0 zHqI7z@!&8@4$Bk$ym7~`n>&1GNCuw}tFJJsJM7Cn;Zfj&U8CdYRszH*RlS7u~?SYJ$}5o8dR3o$W3OU`2tOXNaaDDq%B4Wv~dMlGM+qyKn&_AQr7)c5WMeHP@$JD%cbyr(^c<_Db?=$epYE( z#f>i)4_z%PI2X)n&v2lsfBn+i>({7Xi0bHlrm7w3{Y^`8MegSL3k5~P84rY=$`;sg zKK#s;RqZeS+AL4H(^bLE`2FFmnX{$}%)hWOBx8$GoKuRyFKJd|)6;=7FTM`-NLDK> zlQ5~9amdMhtLELH)HEN(Y<9=r;+_o8vbJBDW5@bZ;f%q(rr5A7XDya$Q~8AFj5i*z nC7wUV?kK?GD8R!0O#8-`O%8UEOT!o#7#KWV{an^LB{Ts5>n%Z$ diff --git a/core/src/mindustry/maps/planet/ErekirPlanetGenerator.java b/core/src/mindustry/maps/planet/ErekirPlanetGenerator.java index 0b0c437c71..040dd3704e 100644 --- a/core/src/mindustry/maps/planet/ErekirPlanetGenerator.java +++ b/core/src/mindustry/maps/planet/ErekirPlanetGenerator.java @@ -190,7 +190,7 @@ public class ErekirPlanetGenerator extends PlanetGenerator{ if(block == Blocks.air) block = Blocks.yellowStoneWall; } - if(floor == Blocks.yellowStonePlates && noise(x + 78 + y, y, 3, 0.8f, 7f, 1f) > 0.41f){ + if(floor == Blocks.yellowStonePlates && noise(x + 78 + y, y, 3, 0.8f, 6f, 1f) > 0.44f){ floor = Blocks.yellowStone; } }); diff --git a/core/src/mindustry/type/UnitType.java b/core/src/mindustry/type/UnitType.java index 57a9604607..867ec87dfc 100644 --- a/core/src/mindustry/type/UnitType.java +++ b/core/src/mindustry/type/UnitType.java @@ -320,7 +320,7 @@ public class UnitType extends UnlockableContent{ stats.add(Stat.health, health); stats.add(Stat.armor, armor); stats.add(Stat.speed, speed * 60f / tilesize, StatUnit.tilesSecond); - stats.add(Stat.size, hitSize / tilesize, StatUnit.blocksSquared); + stats.add(Stat.size, StatValues.squared(hitSize / tilesize, StatUnit.blocksSquared)); stats.add(Stat.itemCapacity, itemCapacity); stats.add(Stat.range, (int)(maxRange / tilesize), StatUnit.blocks); stats.add(Stat.commandLimit, commandLimit); @@ -349,7 +349,7 @@ public class UnitType extends UnlockableContent{ stats.addPercent(Stat.buildSpeed, buildSpeed); } if(inst instanceof Payloadc){ - stats.add(Stat.payloadCapacity, (payloadCapacity / (tilesize * tilesize)), StatUnit.blocksSquared); + stats.add(Stat.payloadCapacity, StatValues.squared(Mathf.sqrt(payloadCapacity / (tilesize * tilesize)), StatUnit.blocksSquared)); } var reqs = getFirstRequirements(); diff --git a/core/src/mindustry/world/blocks/payloads/PayloadConveyor.java b/core/src/mindustry/world/blocks/payloads/PayloadConveyor.java index 1e682f2824..6880b6662a 100644 --- a/core/src/mindustry/world/blocks/payloads/PayloadConveyor.java +++ b/core/src/mindustry/world/blocks/payloads/PayloadConveyor.java @@ -54,7 +54,7 @@ public class PayloadConveyor extends Block{ public void setStats(){ super.setStats(); - stats.add(Stat.payloadCapacity, (payloadLimit), StatUnit.blocksSquared); + stats.add(Stat.payloadCapacity, StatValues.squared(payloadLimit, StatUnit.blocksSquared)); } @Override diff --git a/core/src/mindustry/world/blocks/payloads/PayloadMassDriver.java b/core/src/mindustry/world/blocks/payloads/PayloadMassDriver.java index 1aa6e3100c..02eaa64955 100644 --- a/core/src/mindustry/world/blocks/payloads/PayloadMassDriver.java +++ b/core/src/mindustry/world/blocks/payloads/PayloadMassDriver.java @@ -78,7 +78,7 @@ public class PayloadMassDriver extends PayloadBlock{ public void setStats(){ super.setStats(); - stats.add(Stat.payloadCapacity, maxPayloadSize, StatUnit.blocksSquared); + stats.add(Stat.payloadCapacity, StatValues.squared(maxPayloadSize, StatUnit.blocksSquared)); stats.add(Stat.reload, 60f / (chargeTime + reloadTime), StatUnit.seconds); } diff --git a/core/src/mindustry/world/meta/StatValues.java b/core/src/mindustry/world/meta/StatValues.java index 064bd095aa..7f0ad1e1bf 100644 --- a/core/src/mindustry/world/meta/StatValues.java +++ b/core/src/mindustry/world/meta/StatValues.java @@ -34,11 +34,22 @@ public class StatValues{ return table -> table.add(!value ? "@no" : "@yes"); } + public static String fixValue(float value){ + int precision = Math.abs((int)value - value) <= 0.001f ? 0 : Math.abs((int)(value * 10) - value * 10) <= 0.001f ? 1 : 2; + return Strings.fixed(value, precision); + } + + public static StatValue squared(float value, StatUnit unit){ + return table -> { + String fixed = fixValue(value); + table.add(fixed + "x" + fixed); + table.add((unit.space ? " " : "") + unit.localized()); + }; + } + public static StatValue number(float value, StatUnit unit, boolean merge){ return table -> { - int precision = Math.abs((int)value - value) <= 0.001f ? 0 : Math.abs((int)(value * 10) - value * 10) <= 0.001f ? 1 : 2; - - String l1 = Strings.fixed(value, precision), l2 = (unit.space ? " " : "") + unit.localized(); + String l1 = fixValue(value), l2 = (unit.space ? " " : "") + unit.localized(); if(merge){ table.add(l1 + l2);