Merge branch 'balancing_burst-drill-optional-multiplier' of https://github.com/SomeonesShade/Mindustry into SomeonesShade-balancing_burst-drill-optional-multiplier
This commit is contained in:
@@ -11,6 +11,8 @@ import mindustry.entities.*;
|
||||
import mindustry.gen.*;
|
||||
import mindustry.graphics.*;
|
||||
import mindustry.type.*;
|
||||
import mindustry.world.consumers.*;
|
||||
import mindustry.world.meta.*;
|
||||
|
||||
public class BurstDrill extends Drill{
|
||||
public float shake = 2f;
|
||||
@@ -35,7 +37,6 @@ public class BurstDrill extends Drill{
|
||||
|
||||
//does not drill in the traditional sense, so this is not even used
|
||||
hardnessDrillMultiplier = 0f;
|
||||
liquidBoostIntensity = 1f;
|
||||
//generally at center
|
||||
drillEffectRnd = 0f;
|
||||
drillEffect = Fx.shockwave;
|
||||
@@ -53,6 +54,20 @@ public class BurstDrill extends Drill{
|
||||
return drillTime / drillMultipliers.get(item, 1f);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setStats(){
|
||||
super.setStats();
|
||||
|
||||
if(liquidBoostIntensity != 1 && findConsumer(f -> f instanceof ConsumeLiquidBase && f.booster) instanceof ConsumeLiquidBase consBase){
|
||||
stats.remove(Stat.booster);
|
||||
stats.add(Stat.booster,
|
||||
StatValues.speedBoosters("{0}" + StatUnit.timesSpeed.localized(),
|
||||
consBase.amount, liquidBoostIntensity, false,
|
||||
l -> (consumesLiquid(l) && (findConsumer(f -> f instanceof ConsumeLiquid).booster || ((ConsumeLiquid)findConsumer(f -> f instanceof ConsumeLiquid)).liquid != l)))
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
public class BurstDrillBuild extends DrillBuild{
|
||||
//used so the lights don't fade out immediately
|
||||
public float smoothProgress = 0f;
|
||||
@@ -77,7 +92,7 @@ public class BurstDrill extends Drill{
|
||||
if(items.total() <= itemCapacity - dominantItems && dominantItems > 0 && efficiency > 0){
|
||||
warmup = Mathf.approachDelta(warmup, progress / drillTime, 0.01f);
|
||||
|
||||
float speed = efficiency;
|
||||
float speed = Mathf.lerp(1f, liquidBoostIntensity, optionalEfficiency) * efficiency;
|
||||
|
||||
timeDrilled += speedCurve.apply(progress / drillTime) * speed;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user