Fixed startup error

This commit is contained in:
Anuken
2018-07-08 16:50:52 -04:00
parent 63a0fde121
commit a2a0c2f791
6 changed files with 34 additions and 8 deletions

View File

@@ -297,6 +297,10 @@ text.blocks.drilltier=Drillables
text.blocks.drillspeed=Base Drill Speed text.blocks.drillspeed=Base Drill Speed
text.blocks.liquidoutput=Liquid Output text.blocks.liquidoutput=Liquid Output
text.blocks.liquiduse=Liquid Use text.blocks.liquiduse=Liquid Use
text.blocks.coolant=Coolant
text.blocks.coolantuse=Coolant Use
text.blocks.inputliquidfuel=Fuel Liquid
text.blocks.liquidfueluse=Liquid Fuel Use
text.blocks.explosive=Highly explosive! text.blocks.explosive=Highly explosive!
text.blocks.health=Health text.blocks.health=Health
text.blocks.inaccuracy=Inaccuracy text.blocks.inaccuracy=Inaccuracy

View File

@@ -23,7 +23,7 @@ public abstract class ItemLiquidGenerator extends ItemGenerator {
hasLiquids = true; hasLiquids = true;
liquidCapacity = 10f; liquidCapacity = 10f;
consumes.add(new ConsumeLiquidFilter(liquid -> getLiquidEfficiency(liquid) >= minLiquidEfficiency, 0.001f)).update(false); consumes.add(new ConsumeLiquidFilter(liquid -> getLiquidEfficiency(liquid) >= minLiquidEfficiency, 0.001f, true)).update(false);
} }
@Override @Override

View File

@@ -13,6 +13,7 @@ import io.anuke.mindustry.world.Tile;
import io.anuke.mindustry.world.consumers.ConsumeLiquid; import io.anuke.mindustry.world.consumers.ConsumeLiquid;
import io.anuke.mindustry.world.meta.BlockGroup; import io.anuke.mindustry.world.meta.BlockGroup;
import io.anuke.mindustry.world.meta.BlockStat; import io.anuke.mindustry.world.meta.BlockStat;
import io.anuke.mindustry.world.meta.BlockStats;
import io.anuke.mindustry.world.meta.StatUnit; import io.anuke.mindustry.world.meta.StatUnit;
import io.anuke.ucore.core.Effects; import io.anuke.ucore.core.Effects;
import io.anuke.ucore.core.Effects.Effect; import io.anuke.ucore.core.Effects.Effect;
@@ -69,7 +70,13 @@ public class Drill extends Block{
liquidCapacity = 5f; liquidCapacity = 5f;
hasItems = true; hasItems = true;
consumes.liquid(Liquids.water, 0.01f).optional(true); consumes.add(new ConsumeLiquid(Liquids.water, 0.05f){
@Override
public void display(BlockStats stats) {
stats.add(BlockStat.coolantUse, use * 60f, StatUnit.liquidSecond);
stats.add(BlockStat.coolant, liquid);
}
}).optional(true);
} }
@Override @Override

View File

@@ -9,8 +9,8 @@ import io.anuke.mindustry.world.meta.StatUnit;
import io.anuke.ucore.core.Timers; import io.anuke.ucore.core.Timers;
public class ConsumeLiquid extends Consume { public class ConsumeLiquid extends Consume {
private final float use; protected final float use;
private final Liquid liquid; protected final Liquid liquid;
public ConsumeLiquid(Liquid liquid, float use) { public ConsumeLiquid(Liquid liquid, float use) {
this.liquid = liquid; this.liquid = liquid;

View File

@@ -13,10 +13,16 @@ import io.anuke.ucore.function.Predicate;
public class ConsumeLiquidFilter extends Consume{ public class ConsumeLiquidFilter extends Consume{
private final Predicate<Liquid> liquid; private final Predicate<Liquid> liquid;
private final float use; private final float use;
private final boolean isFuel;
public ConsumeLiquidFilter(Predicate<Liquid> liquid, float amount) { public ConsumeLiquidFilter(Predicate<Liquid> liquid, float amount, boolean isFuel) {
this.liquid = liquid; this.liquid = liquid;
this.use = amount; this.use = amount;
this.isFuel = isFuel;
}
public ConsumeLiquidFilter(Predicate<Liquid> liquid, float amount){
this(liquid, amount, false);
} }
@Override @Override
@@ -31,9 +37,14 @@ public class ConsumeLiquidFilter extends Consume{
@Override @Override
public void display(BlockStats stats) { public void display(BlockStats stats) {
if(isFuel){
stats.add(BlockStat.inputLiquidFuel, new LiquidFilterValue(liquid));
stats.add(BlockStat.liquidFuelUse, 60f * use, StatUnit.liquidSecond);
}else {
stats.add(BlockStat.inputLiquid, new LiquidFilterValue(liquid)); stats.add(BlockStat.inputLiquid, new LiquidFilterValue(liquid));
stats.add(BlockStat.liquidUse, 60f * use, StatUnit.liquidSecond); stats.add(BlockStat.liquidUse, 60f * use, StatUnit.liquidSecond);
} }
}
float use(Block block) { float use(Block block) {
return Math.min(use * Timers.delta(), block.liquidCapacity); return Math.min(use * Timers.delta(), block.liquidCapacity);

View File

@@ -14,12 +14,16 @@ public enum BlockStat {
liquidCapacity(StatCategory.liquids), liquidCapacity(StatCategory.liquids),
liquidOutput(StatCategory.liquids), liquidOutput(StatCategory.liquids),
coolant(StatCategory.liquids),
coolantUse(StatCategory.liquids),
powerCapacity(StatCategory.power), powerCapacity(StatCategory.power),
powerUse(StatCategory.power), powerUse(StatCategory.power),
powerRange(StatCategory.power), powerRange(StatCategory.power),
powerTransferSpeed(StatCategory.power), powerTransferSpeed(StatCategory.power),
maxPowerGeneration(StatCategory.power), maxPowerGeneration(StatCategory.power),
inputLiquidFuel(StatCategory.power),
liquidFuelUse(StatCategory.power),
inputLiquid(StatCategory.crafting), inputLiquid(StatCategory.crafting),
liquidUse(StatCategory.crafting), liquidUse(StatCategory.crafting),