diff --git a/core/assets/bundles/bundle.properties b/core/assets/bundles/bundle.properties index f13309ec45..6db6b742c4 100644 --- a/core/assets/bundles/bundle.properties +++ b/core/assets/bundles/bundle.properties @@ -615,6 +615,8 @@ blocks.inaccuracy = Inaccuracy blocks.shots = Shots blocks.reload = Shots/Second blocks.ammo = Ammo +blocks.shieldhealth = Shield Health +blocks.cooldowntime = Cooldown Time bar.drilltierreq = Better Drill Required bar.noresources = Missing Resources @@ -662,6 +664,7 @@ unit.persecond = /sec unit.perminute = /min unit.timesspeed = x speed unit.percent = % +unit.shieldhealth = shield health unit.items = items unit.thousands = k unit.millions = mil diff --git a/core/src/mindustry/world/blocks/defense/ForceProjector.java b/core/src/mindustry/world/blocks/defense/ForceProjector.java index 8d54dfad9f..5a2fd461af 100644 --- a/core/src/mindustry/world/blocks/defense/ForceProjector.java +++ b/core/src/mindustry/world/blocks/defense/ForceProjector.java @@ -23,6 +23,7 @@ public class ForceProjector extends Block{ public float phaseUseTime = 350f; public float phaseRadiusBoost = 80f; + public float phaseShieldBoost = 400f; public float radius = 101.7f; public float breakage = 550f; public float cooldownNormal = 1.75f; @@ -59,9 +60,11 @@ public class ForceProjector extends Block{ @Override public void setStats(){ super.setStats(); - + stats.add(BlockStat.shieldHealth, breakage, StatUnit.none); + stats.add(BlockStat.cooldownTime, (int) (breakage / cooldownBrokenBase / 60f), StatUnit.seconds); stats.add(BlockStat.powerUse, basePowerDraw * 60f, StatUnit.powerSecond); stats.add(BlockStat.boostEffect, phaseRadiusBoost / tilesize, StatUnit.blocks); + stats.add(BlockStat.boostEffect, phaseShieldBoost, StatUnit.shieldHealth); } @Override @@ -130,7 +133,7 @@ public class ForceProjector extends Block{ broken = false; } - if(buildup >= breakage && !broken){ + if(buildup >= breakage + phaseShieldBoost && !broken){ broken = true; buildup = breakage; Fx.shieldBreak.at(x, y, realRadius(), team.color); diff --git a/core/src/mindustry/world/meta/BlockStat.java b/core/src/mindustry/world/meta/BlockStat.java index 54aed12de2..66e9e2782c 100644 --- a/core/src/mindustry/world/meta/BlockStat.java +++ b/core/src/mindustry/world/meta/BlockStat.java @@ -48,6 +48,8 @@ public enum BlockStat{ targetsGround(StatCategory.shooting), damage(StatCategory.shooting), ammo(StatCategory.shooting), + shieldHealth(StatCategory.shooting), + cooldownTime(StatCategory.shooting), booster(StatCategory.optional), boostEffect(StatCategory.optional), diff --git a/core/src/mindustry/world/meta/StatUnit.java b/core/src/mindustry/world/meta/StatUnit.java index 721ac7c582..0466b4f139 100644 --- a/core/src/mindustry/world/meta/StatUnit.java +++ b/core/src/mindustry/world/meta/StatUnit.java @@ -21,6 +21,7 @@ public enum StatUnit{ perMinute, timesSpeed(false), percent(false), + shieldHealth, none, items;