added forceProjector bar, clean up

This commit is contained in:
Sharlotte
2021-07-25 22:39:40 +09:00
parent f7834d0bf3
commit 11fc54622b
2 changed files with 46 additions and 44 deletions

View File

@@ -17,6 +17,7 @@ import mindustry.gen.*;
import mindustry.graphics.Pal;
import mindustry.ui.Fonts;
import mindustry.world.blocks.ConstructBlock;
import mindustry.world.blocks.defense.ForceProjector;
import mindustry.world.blocks.defense.turrets.*;
import mindustry.world.blocks.storage.*;
import mindustry.world.blocks.units.Reconstructor;
@@ -33,19 +34,6 @@ public class BarInfo {
static Seq<Float> numbers = new Seq<>(new Float[]{0f,0f,0f,0f,0f,0f});
static Seq<Color> colors = new Seq<>(new Color[]{Color.clear,Color.clear,Color.clear,Color.clear,Color.clear,Color.clear});
public static <T extends Teamc> Seq<String> returnStrings(T target){
getInfo(target);
return strings;
}
public static <T extends Teamc> Seq<Color> returnColors(T target){
getInfo(target);
return colors;
}
public static <T extends Teamc> Seq<Float> returnNumbers(T target){
getInfo(target);
return numbers;
}
public static String format(float number){
if(number >= 10000) return UI.formatAmount((long)number);
if(String.valueOf(number).split("[.]")[1].matches("0")) return String.valueOf(number).split("[.]")[0];
@@ -98,6 +86,15 @@ public class BarInfo {
colors.set(1, Pal.darkerMetal);
numbers.set(1, reconstruct.fraction());
}
else if(target instanceof ForceProjector.ForceBuild){
ForceProjector.ForceBuild force = (ForceProjector.ForceBuild) target;
ForceProjector forceBlock = (ForceProjector) force.block;
float max = forceBlock.shieldHealth + forceBlock.phaseShieldBoost * force.phaseHeat;
strings.set(1, Core.bundle.format("shar-stat.shield", format(max-force.buildup), max));
colors.set(1, Pal.shield);
numbers.set(1, (max-force.buildup)/max);
}
if(target instanceof ItemTurret.ItemTurretBuild) {
ItemTurret.ItemTurretBuild turretBuild = (ItemTurret.ItemTurretBuild) target;