This commit is contained in:
Anuken
2022-02-15 17:18:31 -05:00
parent bcf7479dbc
commit 390c76a84f
5 changed files with 14 additions and 21 deletions

View File

@@ -1671,7 +1671,7 @@ public class Blocks{
cooldownLiquid = 1.2f;
cooldownBrokenBase = 0.35f;
boostConsumer = consumeItem(Items.phaseFabric).boost();
itemConsumer = consumeItem(Items.phaseFabric).boost();
consumePower(4f);
}};

View File

@@ -20,7 +20,6 @@ import mindustry.world.meta.*;
import static mindustry.Vars.*;
@Deprecated
public class ForceProjector extends Block{
public final int timerUse = timers++;
public float phaseUseTime = 350f;
@@ -39,7 +38,7 @@ public class ForceProjector extends Block{
public @Load("@-top") TextureRegion topRegion;
//TODO json support
public @Nullable Consume boostConsumer;
public @Nullable Consume itemConsumer, coolantConsumer;
protected static ForceBuild paramEntity;
protected static Effect paramEffect;
@@ -65,7 +64,7 @@ public class ForceProjector extends Block{
ambientSoundVolume = 0.08f;
if(consumeCoolant){
consume(new ConsumeCoolant(coolantConsumption)).boost().update(false);
consume(coolantConsumer = new ConsumeCoolant(coolantConsumption)).boost().update(false);
}
}
@@ -88,7 +87,7 @@ public class ForceProjector extends Block{
@Override
public void setStats(){
boolean consItems = boostConsumer != null;
boolean consItems = itemConsumer != null;
if(consItems) stats.timePeriod = phaseUseTime;
super.setStats();
@@ -143,7 +142,7 @@ public class ForceProjector extends Block{
@Override
public void updateTile(){
boolean phaseValid = boostConsumer != null && boostConsumer.valid(this);
boolean phaseValid = itemConsumer != null && itemConsumer.valid(this);
phaseHeat = Mathf.lerpDelta(phaseHeat, Mathf.num(phaseValid), 0.1f);
@@ -163,14 +162,12 @@ public class ForceProjector extends Block{
float scale = !broken ? cooldownNormal : cooldownBrokenBase;
//TODO I hate this system
/*
if(consumes.has(ConsumeType.liquid)){
Consume cons = consumes.get(ConsumeType.liquid);
if(cons.valid(this)){
cons.update(this);
if(coolantConsumer != null){
if(coolantConsumer.valid(this)){
coolantConsumer.update(this);
scale *= (cooldownLiquid * (1f + (liquids.current().heatCapacity - 0.4f) * 0.9f));
}
}*/
}
buildup -= delta() * scale;
}

View File

@@ -20,7 +20,7 @@ public class BaseTurret extends Block{
public float rotateSpeed = 5;
public float coolantUsage = 0.2f;
@Deprecated
//TODO
public boolean acceptCoolant = true;
/** Effect displayed when coolant is used. */
public Effect coolEffect = Fx.fuelburn;
@@ -44,7 +44,7 @@ public class BaseTurret extends Block{
@Override
public void init(){
//TODO fundamentally flawed
//TODO bad
if(acceptCoolant && findConsumer(f -> f instanceof ConsumeLiquidBase) == null){
hasLiquids = true;
consume(coolantOverride != null ? new ConsumeLiquid(coolantOverride, coolantUsage) : new ConsumeCoolant(coolantUsage)).update(false).boost();

View File

@@ -9,7 +9,7 @@ import mindustry.world.meta.*;
import static mindustry.Vars.*;
/** A turret that fires a continuous beam with a delay between shots. Liquid coolant is required. Yes, this class name is awful. */
/** A turret that fires a continuous beam with a delay between shots. Liquid coolant is required. Yes, this class name is awful. NEEDS RENAME */
@Deprecated
public class LaserTurret extends PowerTurret{
public float firingMoveFract = 0.25f;
@@ -26,8 +26,7 @@ public class LaserTurret extends PowerTurret{
super.setStats();
stats.remove(Stat.booster);
//TODO bad
stats.add(Stat.input, StatValues.boosters(reloadTime, coolantConsumer.amount, coolantMultiplier, false, l -> consumesLiquid(l)));
stats.add(Stat.input, StatValues.boosters(reloadTime, coolantConsumer.amount, coolantMultiplier, false, this::consumesLiquid));
}
public class LaserTurretBuild extends PowerTurretBuild{

View File

@@ -11,9 +11,7 @@ public abstract class Consume{
public boolean optional;
/** If true, this consumer will be displayed as a boost input. */
public boolean booster;
//TODO bad.
@Deprecated
//TODO bad. I don't like it.
public boolean update = true;
/**
@@ -33,7 +31,6 @@ public abstract class Consume{
return optional(true, true);
}
@Deprecated
public Consume update(boolean update){
this.update = update;
return this;