Rename PositionStack.Fluid to Tank (#1051)

This commit is contained in:
slprime authored and GitHub committed 2026-09-27 08:09:52 +03:00
1 parent a54c414595
commit f84c4ef2bd
1 file changed
+34 -7
@@ -14,8 +14,12 @@ import net.minecraft.util.EnumChatFormatting;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.oredict.OreDictionary;
import org.lwjgl.opengl.GL11;
import codechicken.nei.api.ItemFilter;
import codechicken.nei.api.ItemInfo;
import codechicken.nei.drawable.DrawableBuilder;
import codechicken.nei.drawable.DrawableResource;
import codechicken.nei.guihook.GuiContainerManager;
import codechicken.nei.item.FluidDrawer;
import codechicken.nei.item.FluidDrawer.FillDirection;
@@ -253,25 +257,26 @@ public class PositionedStack implements Cloneable {
public void draw(int mousex, int mousey) {}
}
public static class Fluid extends PositionedStack {
public static class Tank extends PositionedStack {
/** The tank size the fill level is measured against, in mB. 0 means "always render full". */
protected int capacity = 0;
protected boolean flowingTexture = false;
protected FillDirection fillDirection = FillDirection.AUTO;
protected DrawableResource overlay;
private ItemStack cachedFluidItem;
private FluidStack cachedFluidStack;
public Fluid(Object object, int x, int y, boolean genPerms) {
public Tank(Object object, int x, int y, boolean genPerms) {
super(object, x, y, genPerms);
}
public Fluid(Object object, int x, int y) {
public Tank(Object object, int x, int y) {
this(object, x, y, true);
}
public Fluid(Object object, int x, int y, int width, int height, int capacity) {
public Tank(Object object, int x, int y, int width, int height, int capacity) {
super(object, x, y, false);
this.width = width;
this.height = height;
@@ -282,7 +287,7 @@ public class PositionedStack implements Cloneable {
return this.capacity;
}
public Fluid setCapacity(int capacity) {
public Tank setCapacity(int capacity) {
this.capacity = Math.max(capacity, 0);
return this;
}
@@ -291,7 +296,7 @@ public class PositionedStack implements Cloneable {
return this.flowingTexture;
}
public Fluid setFlowingTexture(boolean flowingTexture) {
public Tank setFlowingTexture(boolean flowingTexture) {
this.flowingTexture = flowingTexture;
return this;
}
@@ -300,11 +305,24 @@ public class PositionedStack implements Cloneable {
return this.fillDirection;
}
public Fluid setFillDirection(FillDirection fillDirection) {
public Tank setFillDirection(FillDirection fillDirection) {
this.fillDirection = fillDirection == null ? FillDirection.AUTO : fillDirection;
return this;
}
public DrawableResource getOverlay() {
return this.overlay;
}
public Tank setOverlay(String resourceLocation, int u, int v, int width, int height) {
return setOverlay(new DrawableBuilder(resourceLocation, u, v, width, height).build());
}
public Tank setOverlay(DrawableResource overlay) {
this.overlay = overlay;
return this;
}
protected FluidStack getFluidStack() {
if (this.item != this.cachedFluidItem) {
@@ -352,6 +370,15 @@ public class PositionedStack implements Cloneable {
fluidStack,
this.flowingTexture,
this.fillDirection);
if (this.overlay != null) {
GL11.glEnable(GL11.GL_BLEND);
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
GL11.glDisable(GL11.GL_LIGHTING);
this.overlay.draw(this.relx, this.rely);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_BLEND);
}
}
}
}