diff --git a/core/src/mindustry/entities/comp/BuildingComp.java b/core/src/mindustry/entities/comp/BuildingComp.java index baae1f6a83..663123ac80 100644 --- a/core/src/mindustry/entities/comp/BuildingComp.java +++ b/core/src/mindustry/entities/comp/BuildingComp.java @@ -1999,7 +1999,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc, }else if(content instanceof Liquid liquid && liquids != null){ float amount = Mathf.clamp((float)value, 0f, block.liquidCapacity); //decreasing amount is always allowed - if(amount < liquids.get(liquid) || (acceptLiquid(self(), liquid) && (liquids.current() == liquid || liquids.currentAmount() <= 0.1f))){ + if(amount < liquids.get(liquid) || (acceptLiquid(self(), liquid) && (liquids.current() == liquid || liquids.currentAmount() <= 0.1f || block.consumesLiquid(liquid)))){ liquids.set(liquid, amount); } } diff --git a/core/src/mindustry/world/Tile.java b/core/src/mindustry/world/Tile.java index 9c6cef6489..9fedd0aa27 100644 --- a/core/src/mindustry/world/Tile.java +++ b/core/src/mindustry/world/Tile.java @@ -398,6 +398,9 @@ public class Tile implements Position, QuadTreeObject, Displayable{ this.overlay = (Floor)block; recache(); + if(!world.isGenerating() && build != null){ + build.onProximityUpdate(); + } } /** Sets the overlay without a recache. */