Merge
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
package mindustry.world.consumers;
|
||||
|
||||
import mindustry.gen.*;
|
||||
import mindustry.type.*;
|
||||
|
||||
/** For mods. I don't use this (yet). */
|
||||
public class ConsumeItemCharged extends ConsumeItemFilter{
|
||||
public class ConsumeItemCharged extends ConsumeItemEfficiency{
|
||||
public float minCharge;
|
||||
|
||||
public ConsumeItemCharged(float minCharge){
|
||||
@@ -16,8 +16,7 @@ public class ConsumeItemCharged extends ConsumeItemFilter{
|
||||
}
|
||||
|
||||
@Override
|
||||
public float efficiencyMultiplier(Building build){
|
||||
var item = getConsumed(build);
|
||||
return item == null ? 0f : item.charge;
|
||||
public float itemEfficiencyMultiplier(Item item){
|
||||
return item.charge;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
package mindustry.world.consumers;
|
||||
|
||||
import arc.func.*;
|
||||
import mindustry.type.*;
|
||||
import mindustry.world.meta.*;
|
||||
|
||||
public class ConsumeItemEfficiency extends ConsumeItemFilter{
|
||||
|
||||
public ConsumeItemEfficiency(Boolf<Item> item){
|
||||
super(item);
|
||||
}
|
||||
|
||||
public ConsumeItemEfficiency(){
|
||||
}
|
||||
|
||||
@Override
|
||||
public void display(Stats stats){
|
||||
stats.add(booster ? Stat.booster : Stat.input, StatValues.itemEffMultiplier(this::itemEfficiencyMultiplier, stats.timePeriod, filter));
|
||||
}
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
package mindustry.world.consumers;
|
||||
|
||||
import mindustry.gen.*;
|
||||
import mindustry.type.*;
|
||||
|
||||
public class ConsumeItemExplosive extends ConsumeItemFilter{
|
||||
public class ConsumeItemExplosive extends ConsumeItemEfficiency{
|
||||
public float minExplosiveness;
|
||||
|
||||
public ConsumeItemExplosive(float minCharge){
|
||||
@@ -15,8 +15,7 @@ public class ConsumeItemExplosive extends ConsumeItemFilter{
|
||||
}
|
||||
|
||||
@Override
|
||||
public float efficiencyMultiplier(Building build){
|
||||
var item = getConsumed(build);
|
||||
return item == null ? 0f : item.explosiveness;
|
||||
public float itemEfficiencyMultiplier(Item item){
|
||||
return item.explosiveness;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -66,6 +66,16 @@ public class ConsumeItemFilter extends Consume{
|
||||
|
||||
@Override
|
||||
public void display(Stats stats){
|
||||
stats.add(booster ? Stat.booster : Stat.input, stats.timePeriod < 0 ? StatValues.items(filter) : StatValues.items(stats.timePeriod, filter));
|
||||
stats.add(booster ? Stat.booster : Stat.input, StatValues.items(stats.timePeriod, filter));
|
||||
}
|
||||
|
||||
@Override
|
||||
public float efficiencyMultiplier(Building build){
|
||||
var item = getConsumed(build);
|
||||
return item == null ? 0f : itemEfficiencyMultiplier(item);
|
||||
}
|
||||
|
||||
public float itemEfficiencyMultiplier(Item item){
|
||||
return 1f;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package mindustry.world.consumers;
|
||||
|
||||
import mindustry.gen.*;
|
||||
import mindustry.type.*;
|
||||
|
||||
public class ConsumeItemFlammable extends ConsumeItemFilter{
|
||||
public class ConsumeItemFlammable extends ConsumeItemEfficiency{
|
||||
public float minFlammability;
|
||||
|
||||
public ConsumeItemFlammable(float minFlammability){
|
||||
@@ -15,8 +15,7 @@ public class ConsumeItemFlammable extends ConsumeItemFilter{
|
||||
}
|
||||
|
||||
@Override
|
||||
public float efficiencyMultiplier(Building build){
|
||||
var item = getConsumed(build);
|
||||
return item == null ? 0f : item.flammability;
|
||||
public float itemEfficiencyMultiplier(Item item){
|
||||
return item.flammability;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package mindustry.world.consumers;
|
||||
|
||||
import mindustry.gen.*;
|
||||
import mindustry.type.*;
|
||||
|
||||
public class ConsumeItemRadioactive extends ConsumeItemFilter{
|
||||
public class ConsumeItemRadioactive extends ConsumeItemEfficiency{
|
||||
public float minRadioactivity;
|
||||
|
||||
public ConsumeItemRadioactive(float minRadioactivity){
|
||||
@@ -15,8 +15,7 @@ public class ConsumeItemRadioactive extends ConsumeItemFilter{
|
||||
}
|
||||
|
||||
@Override
|
||||
public float efficiencyMultiplier(Building build){
|
||||
var item = getConsumed(build);
|
||||
return item == null ? 0f : item.radioactivity;
|
||||
public float itemEfficiencyMultiplier(Item item){
|
||||
return item.radioactivity;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -54,6 +54,12 @@ public class ConsumeLiquidFilter extends ConsumeLiquidBase{
|
||||
return liq != null ? Math.min(build.liquids.get(liq) / (amount * ed * multiplier.get(build)), 1f) : 0f;
|
||||
}
|
||||
|
||||
@Override
|
||||
public float efficiencyMultiplier(Building build){
|
||||
var liq = getConsumed(build);
|
||||
return liq == null ? 0 : liquidEfficiencyMultiplier(liq);
|
||||
}
|
||||
|
||||
public @Nullable Liquid getConsumed(Building build){
|
||||
if(filter.get(build.liquids.current()) && build.liquids.currentAmount() > 0){
|
||||
return build.liquids.current();
|
||||
@@ -79,4 +85,8 @@ public class ConsumeLiquidFilter extends ConsumeLiquidBase{
|
||||
public boolean consumes(Liquid liquid){
|
||||
return filter.get(liquid);
|
||||
}
|
||||
|
||||
public float liquidEfficiencyMultiplier(Liquid liquid){
|
||||
return 1f;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package mindustry.world.consumers;
|
||||
|
||||
import mindustry.gen.*;
|
||||
import mindustry.type.*;
|
||||
import mindustry.world.meta.*;
|
||||
|
||||
public class ConsumeLiquidFlammable extends ConsumeLiquidFilter{
|
||||
public float minFlammability;
|
||||
@@ -20,8 +21,12 @@ public class ConsumeLiquidFlammable extends ConsumeLiquidFilter{
|
||||
}
|
||||
|
||||
@Override
|
||||
public float efficiencyMultiplier(Building build){
|
||||
var liq = getConsumed(build);
|
||||
return liq == null ? 0f : liq.flammability;
|
||||
public void display(Stats stats){
|
||||
stats.add(booster ? Stat.booster : Stat.input, StatValues.liquidEffMultiplier(l -> l.flammability, amount * 60f, filter));
|
||||
}
|
||||
|
||||
@Override
|
||||
public float liquidEfficiencyMultiplier(Liquid liquid){
|
||||
return liquid.flammability;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
package mindustry.world.consumers;
|
||||
|
||||
import arc.func.Func;
|
||||
import arc.scene.ui.layout.Table;
|
||||
import mindustry.Vars;
|
||||
import mindustry.gen.Building;
|
||||
import mindustry.type.LiquidStack;
|
||||
import mindustry.ui.ReqImage;
|
||||
import mindustry.world.Block;
|
||||
import arc.func.*;
|
||||
import arc.scene.ui.layout.*;
|
||||
import mindustry.*;
|
||||
import mindustry.gen.*;
|
||||
import mindustry.type.*;
|
||||
import mindustry.ui.*;
|
||||
import mindustry.world.*;
|
||||
|
||||
public class ConsumeLiquidsDynamic extends Consume{
|
||||
public final Func<Building, LiquidStack[]> liquids;
|
||||
|
||||
Reference in New Issue
Block a user