argh
This commit is contained in:
@@ -58,16 +58,16 @@ public abstract class Consume{
|
||||
|
||||
public abstract ConsumeType type();
|
||||
|
||||
public abstract void build(Tilec tile, Table table);
|
||||
public abstract void build(Building tile, Table table);
|
||||
|
||||
/** Called when a consumption is triggered manually. */
|
||||
public void trigger(Tilec entity){}
|
||||
public void trigger(Building entity){}
|
||||
|
||||
public abstract String getIcon();
|
||||
|
||||
public abstract void update(Tilec entity);
|
||||
public abstract void update(Building entity);
|
||||
|
||||
public abstract boolean valid(Tilec entity);
|
||||
public abstract boolean valid(Building entity);
|
||||
|
||||
public abstract void display(BlockStats stats);
|
||||
}
|
||||
|
||||
@@ -11,10 +11,10 @@ import mindustry.ui.*;
|
||||
import mindustry.world.meta.*;
|
||||
|
||||
public class ConsumeItemDynamic extends Consume{
|
||||
public final @NonNull Func<Tilec, ItemStack[]> items;
|
||||
public final @NonNull Func<Building, ItemStack[]> items;
|
||||
|
||||
public <T extends Tilec> ConsumeItemDynamic(Func<T, ItemStack[]> items){
|
||||
this.items = (Func<Tilec, ItemStack[]>)items;
|
||||
public <T extends Building> ConsumeItemDynamic(Func<T, ItemStack[]> items){
|
||||
this.items = (Func<Building, ItemStack[]>)items;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -28,7 +28,7 @@ public class ConsumeItemDynamic extends Consume{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void build(Tilec tile, Table table){
|
||||
public void build(Building tile, Table table){
|
||||
ItemStack[][] current = {items.get(tile)};
|
||||
|
||||
table.update(() -> {
|
||||
@@ -41,10 +41,10 @@ public class ConsumeItemDynamic extends Consume{
|
||||
rebuild(tile, table);
|
||||
}
|
||||
|
||||
private void rebuild(Tilec tile, Table table){
|
||||
private void rebuild(Building tile, Table table){
|
||||
for(ItemStack stack : items.get(tile)){
|
||||
table.add(new ReqImage(new ItemImage(stack.item.icon(Cicon.medium), stack.amount),
|
||||
() -> tile.items() != null && tile.items().has(stack.item, stack.amount))).size(8 * 4).padRight(6 * Mathf.digits(stack.amount));
|
||||
() -> tile.items != null && tile.items.has(stack.item, stack.amount))).size(8 * 4).padRight(6 * Mathf.digits(stack.amount));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -54,20 +54,20 @@ public class ConsumeItemDynamic extends Consume{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(Tilec entity){
|
||||
public void update(Building entity){
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void trigger(Tilec entity){
|
||||
public void trigger(Building entity){
|
||||
for(ItemStack stack : items.get(entity)){
|
||||
entity.items().remove(stack);
|
||||
entity.items.remove(stack);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean valid(Tilec entity){
|
||||
return entity.items() != null && entity.items().has(items.get(entity));
|
||||
public boolean valid(Building entity){
|
||||
return entity.items != null && entity.items.has(items.get(entity));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -31,10 +31,10 @@ public class ConsumeItemFilter extends Consume{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void build(Tilec tile, Table table){
|
||||
public void build(Building tile, Table table){
|
||||
MultiReqImage image = new MultiReqImage();
|
||||
content.items().each(i -> filter.get(i) && i.unlockedNow(), item -> image.add(new ReqImage(new ItemImage(item.icon(Cicon.medium), 1),
|
||||
() -> tile.items() != null && tile.items().has(item))));
|
||||
() -> tile.items != null && tile.items.has(item))));
|
||||
|
||||
table.add(image).size(8 * 4);
|
||||
}
|
||||
@@ -45,26 +45,26 @@ public class ConsumeItemFilter extends Consume{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(Tilec entity){
|
||||
public void update(Building entity){
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void trigger(Tilec entity){
|
||||
public void trigger(Building entity){
|
||||
for(int i = 0; i < content.items().size; i++){
|
||||
Item item = content.item(i);
|
||||
if(entity.items() != null && entity.items().has(item) && this.filter.get(item)){
|
||||
entity.items().remove(item, 1);
|
||||
if(entity.items != null && entity.items.has(item) && this.filter.get(item)){
|
||||
entity.items.remove(item, 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean valid(Tilec entity){
|
||||
public boolean valid(Building entity){
|
||||
for(int i = 0; i < content.items().size; i++){
|
||||
Item item = content.item(i);
|
||||
if(entity.items() != null && entity.items().has(item) && this.filter.get(item)){
|
||||
if(entity.items != null && entity.items.has(item) && this.filter.get(item)){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,10 +35,10 @@ public class ConsumeItems extends Consume{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void build(Tilec tile, Table table){
|
||||
public void build(Building tile, Table table){
|
||||
for(ItemStack stack : items){
|
||||
table.add(new ReqImage(new ItemImage(stack.item.icon(Cicon.medium), stack.amount),
|
||||
() -> tile.items() != null && tile.items().has(stack.item, stack.amount))).size(8 * 4).padRight(Mathf.digits(stack.amount) * 6);
|
||||
() -> tile.items != null && tile.items.has(stack.item, stack.amount))).size(8 * 4).padRight(Mathf.digits(stack.amount) * 6);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -48,20 +48,20 @@ public class ConsumeItems extends Consume{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(Tilec entity){
|
||||
public void update(Building entity){
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void trigger(Tilec entity){
|
||||
public void trigger(Building entity){
|
||||
for(ItemStack stack : items){
|
||||
entity.items().remove(stack);
|
||||
entity.items.remove(stack);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean valid(Tilec entity){
|
||||
return entity.items() != null && entity.items().has(items);
|
||||
public boolean valid(Building entity){
|
||||
return entity.items != null && entity.items.has(items);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -26,7 +26,7 @@ public class ConsumeLiquid extends ConsumeLiquidBase{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void build(Tilec tile, Table table){
|
||||
public void build(Building tile, Table table){
|
||||
table.add(new ReqImage(liquid.icon(Cicon.medium), () -> valid(tile))).size(8 * 4);
|
||||
}
|
||||
|
||||
@@ -36,13 +36,13 @@ public class ConsumeLiquid extends ConsumeLiquidBase{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(Tilec entity){
|
||||
entity.liquids().remove(liquid, Math.min(use(entity), entity.liquids().get(liquid)));
|
||||
public void update(Building entity){
|
||||
entity.liquids.remove(liquid, Math.min(use(entity), entity.liquids.get(liquid)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean valid(Tilec entity){
|
||||
return entity != null && entity.liquids() != null && entity.liquids().get(liquid) >= use(entity);
|
||||
public boolean valid(Building entity){
|
||||
return entity != null && entity.liquids != null && entity.liquids.get(liquid) >= use(entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -22,7 +22,7 @@ public abstract class ConsumeLiquidBase extends Consume{
|
||||
return ConsumeType.liquid;
|
||||
}
|
||||
|
||||
protected float use(Tilec entity){
|
||||
protected float use(Building entity){
|
||||
return Math.min(amount * entity.delta(), entity.block().liquidCapacity);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,10 +28,10 @@ public class ConsumeLiquidFilter extends ConsumeLiquidBase{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void build(Tilec tile, Table table){
|
||||
public void build(Building tile, Table table){
|
||||
Seq<Liquid> list = content.liquids().select(l -> !l.isHidden() && filter.get(l));
|
||||
MultiReqImage image = new MultiReqImage();
|
||||
list.each(liquid -> image.add(new ReqImage(liquid.icon(Cicon.medium), () -> tile.liquids() != null && tile.liquids().get(liquid) >= use(tile))));
|
||||
list.each(liquid -> image.add(new ReqImage(liquid.icon(Cicon.medium), () -> tile.liquids != null && tile.liquids.get(liquid) >= use(tile))));
|
||||
|
||||
table.add(image).size(8 * 4);
|
||||
}
|
||||
@@ -42,13 +42,13 @@ public class ConsumeLiquidFilter extends ConsumeLiquidBase{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(Tilec entity){
|
||||
entity.liquids().remove(entity.liquids().current(), use(entity));
|
||||
public void update(Building entity){
|
||||
entity.liquids.remove(entity.liquids.current(), use(entity));
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean valid(Tilec entity){
|
||||
return entity != null && entity.liquids() != null && filter.get(entity.liquids().current()) && entity.liquids().currentAmount() >= use(entity);
|
||||
public boolean valid(Building entity){
|
||||
return entity != null && entity.liquids != null && filter.get(entity.liquids.current()) && entity.liquids.currentAmount() >= use(entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -30,7 +30,7 @@ public class ConsumePower extends Consume{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void build(Tilec tile, Table table){
|
||||
public void build(Building tile, Table table){
|
||||
//No tooltip for power, for now
|
||||
}
|
||||
|
||||
@@ -40,16 +40,16 @@ public class ConsumePower extends Consume{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(Tilec entity){
|
||||
// Nothing to do since PowerGraph directly updates entity.power().status
|
||||
public void update(Building entity){
|
||||
// Nothing to do since PowerGraph directly updates entity.power.status
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean valid(Tilec entity){
|
||||
public boolean valid(Building entity){
|
||||
if(buffered){
|
||||
return true;
|
||||
}else{
|
||||
return entity.power().status > 0f;
|
||||
return entity.power.status > 0f;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -67,10 +67,10 @@ public class ConsumePower extends Consume{
|
||||
* @param entity The entity which contains the power module.
|
||||
* @return The amount of power which is requested per tick.
|
||||
*/
|
||||
public float requestedPower(Tilec entity){
|
||||
public float requestedPower(Building entity){
|
||||
if(entity.tile().entity == null) return 0f;
|
||||
if(buffered){
|
||||
return (1f-entity.power().status)*capacity;
|
||||
return (1f-entity.power.status)*capacity;
|
||||
}else{
|
||||
try{
|
||||
return usage * Mathf.num(entity.shouldConsume());
|
||||
|
||||
@@ -52,7 +52,7 @@ public class Consumers{
|
||||
}
|
||||
|
||||
/** Creates a consumer which only consumes power when the condition is met. */
|
||||
public ConsumePower powerCond(float usage, Boolf<Tilec> cons){
|
||||
public ConsumePower powerCond(float usage, Boolf<Building> cons){
|
||||
return add(new ConditionalConsumePower(usage, cons));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user