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
+1 -1
View File
@@ -1671,7 +1671,7 @@ public class Blocks{
cooldownLiquid = 1.2f; cooldownLiquid = 1.2f;
cooldownBrokenBase = 0.35f; cooldownBrokenBase = 0.35f;
boostConsumer = consumeItem(Items.phaseFabric).boost(); itemConsumer = consumeItem(Items.phaseFabric).boost();
consumePower(4f); consumePower(4f);
}}; }};
@@ -20,7 +20,6 @@ import mindustry.world.meta.*;
import static mindustry.Vars.*; import static mindustry.Vars.*;
@Deprecated
public class ForceProjector extends Block{ public class ForceProjector extends Block{
public final int timerUse = timers++; public final int timerUse = timers++;
public float phaseUseTime = 350f; public float phaseUseTime = 350f;
@@ -39,7 +38,7 @@ public class ForceProjector extends Block{
public @Load("@-top") TextureRegion topRegion; public @Load("@-top") TextureRegion topRegion;
//TODO json support //TODO json support
public @Nullable Consume boostConsumer; public @Nullable Consume itemConsumer, coolantConsumer;
protected static ForceBuild paramEntity; protected static ForceBuild paramEntity;
protected static Effect paramEffect; protected static Effect paramEffect;
@@ -65,7 +64,7 @@ public class ForceProjector extends Block{
ambientSoundVolume = 0.08f; ambientSoundVolume = 0.08f;
if(consumeCoolant){ 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 @Override
public void setStats(){ public void setStats(){
boolean consItems = boostConsumer != null; boolean consItems = itemConsumer != null;
if(consItems) stats.timePeriod = phaseUseTime; if(consItems) stats.timePeriod = phaseUseTime;
super.setStats(); super.setStats();
@@ -143,7 +142,7 @@ public class ForceProjector extends Block{
@Override @Override
public void updateTile(){ 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); phaseHeat = Mathf.lerpDelta(phaseHeat, Mathf.num(phaseValid), 0.1f);
@@ -163,14 +162,12 @@ public class ForceProjector extends Block{
float scale = !broken ? cooldownNormal : cooldownBrokenBase; float scale = !broken ? cooldownNormal : cooldownBrokenBase;
//TODO I hate this system //TODO I hate this system
/* if(coolantConsumer != null){
if(consumes.has(ConsumeType.liquid)){ if(coolantConsumer.valid(this)){
Consume cons = consumes.get(ConsumeType.liquid); coolantConsumer.update(this);
if(cons.valid(this)){
cons.update(this);
scale *= (cooldownLiquid * (1f + (liquids.current().heatCapacity - 0.4f) * 0.9f)); scale *= (cooldownLiquid * (1f + (liquids.current().heatCapacity - 0.4f) * 0.9f));
} }
}*/ }
buildup -= delta() * scale; buildup -= delta() * scale;
} }
@@ -20,7 +20,7 @@ public class BaseTurret extends Block{
public float rotateSpeed = 5; public float rotateSpeed = 5;
public float coolantUsage = 0.2f; public float coolantUsage = 0.2f;
@Deprecated //TODO
public boolean acceptCoolant = true; public boolean acceptCoolant = true;
/** Effect displayed when coolant is used. */ /** Effect displayed when coolant is used. */
public Effect coolEffect = Fx.fuelburn; public Effect coolEffect = Fx.fuelburn;
@@ -44,7 +44,7 @@ public class BaseTurret extends Block{
@Override @Override
public void init(){ public void init(){
//TODO fundamentally flawed //TODO bad
if(acceptCoolant && findConsumer(f -> f instanceof ConsumeLiquidBase) == null){ if(acceptCoolant && findConsumer(f -> f instanceof ConsumeLiquidBase) == null){
hasLiquids = true; hasLiquids = true;
consume(coolantOverride != null ? new ConsumeLiquid(coolantOverride, coolantUsage) : new ConsumeCoolant(coolantUsage)).update(false).boost(); consume(coolantOverride != null ? new ConsumeLiquid(coolantOverride, coolantUsage) : new ConsumeCoolant(coolantUsage)).update(false).boost();
@@ -9,7 +9,7 @@ import mindustry.world.meta.*;
import static mindustry.Vars.*; 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 @Deprecated
public class LaserTurret extends PowerTurret{ public class LaserTurret extends PowerTurret{
public float firingMoveFract = 0.25f; public float firingMoveFract = 0.25f;
@@ -26,8 +26,7 @@ public class LaserTurret extends PowerTurret{
super.setStats(); super.setStats();
stats.remove(Stat.booster); stats.remove(Stat.booster);
//TODO bad stats.add(Stat.input, StatValues.boosters(reloadTime, coolantConsumer.amount, coolantMultiplier, false, this::consumesLiquid));
stats.add(Stat.input, StatValues.boosters(reloadTime, coolantConsumer.amount, coolantMultiplier, false, l -> consumesLiquid(l)));
} }
public class LaserTurretBuild extends PowerTurretBuild{ public class LaserTurretBuild extends PowerTurretBuild{
@@ -11,9 +11,7 @@ public abstract class Consume{
public boolean optional; public boolean optional;
/** If true, this consumer will be displayed as a boost input. */ /** If true, this consumer will be displayed as a boost input. */
public boolean booster; public boolean booster;
//TODO bad. I don't like it.
//TODO bad.
@Deprecated
public boolean update = true; public boolean update = true;
/** /**
@@ -33,7 +31,6 @@ public abstract class Consume{
return optional(true, true); return optional(true, true);
} }
@Deprecated
public Consume update(boolean update){ public Consume update(boolean update){
this.update = update; this.update = update;
return this; return this;