Renames
This commit is contained in:
@@ -4,9 +4,9 @@ import net.minecraft.entity.player.EntityPlayer;
|
|||||||
import net.minecraft.inventory.Slot;
|
import net.minecraft.inventory.Slot;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraftforge.items.IItemHandler;
|
import net.minecraftforge.items.IItemHandler;
|
||||||
import refinedstorage.container.slot.SlotFluidFilter;
|
import refinedstorage.container.slot.SlotFluid;
|
||||||
import refinedstorage.container.slot.SlotSpecimen;
|
import refinedstorage.container.slot.SlotSpecimen;
|
||||||
import refinedstorage.inventory.ItemHandlerFluidFilter;
|
import refinedstorage.inventory.ItemHandlerFluid;
|
||||||
import refinedstorage.tile.TileBase;
|
import refinedstorage.tile.TileBase;
|
||||||
|
|
||||||
public class ContainerStorage extends ContainerBase {
|
public class ContainerStorage extends ContainerBase {
|
||||||
@@ -22,7 +22,7 @@ public class ContainerStorage extends ContainerBase {
|
|||||||
|
|
||||||
protected void addFilterAndPlayerInventorySlots(IItemHandler filters) {
|
protected void addFilterAndPlayerInventorySlots(IItemHandler filters) {
|
||||||
for (int i = 0; i < 9; ++i) {
|
for (int i = 0; i < 9; ++i) {
|
||||||
addSlotToContainer(filters instanceof ItemHandlerFluidFilter ? new SlotFluidFilter(!getTile().getWorld().isRemote, filters, i, 8 + (18 * i), 20) : new SlotSpecimen(filters, i, 8 + (18 * i), 20));
|
addSlotToContainer(filters instanceof ItemHandlerFluid ? new SlotFluid(!getTile().getWorld().isRemote, filters, i, 8 + (18 * i), 20) : new SlotSpecimen(filters, i, 8 + (18 * i), 20));
|
||||||
}
|
}
|
||||||
|
|
||||||
addPlayerInventory(8, 129);
|
addPlayerInventory(8, 129);
|
||||||
|
|||||||
@@ -3,10 +3,10 @@ package refinedstorage.container.slot;
|
|||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraftforge.items.IItemHandler;
|
import net.minecraftforge.items.IItemHandler;
|
||||||
|
|
||||||
public class SlotFluidFilter extends SlotSpecimen {
|
public class SlotFluid extends SlotSpecimen {
|
||||||
private boolean server;
|
private boolean server;
|
||||||
|
|
||||||
public SlotFluidFilter(boolean server, IItemHandler handler, int id, int x, int y) {
|
public SlotFluid(boolean server, IItemHandler handler, int id, int x, int y) {
|
||||||
super(handler, id, x, y);
|
super(handler, id, x, y);
|
||||||
|
|
||||||
this.server = server;
|
this.server = server;
|
||||||
@@ -17,7 +17,7 @@ import net.minecraftforge.items.SlotItemHandler;
|
|||||||
import org.lwjgl.input.Mouse;
|
import org.lwjgl.input.Mouse;
|
||||||
import refinedstorage.RefinedStorage;
|
import refinedstorage.RefinedStorage;
|
||||||
import refinedstorage.gui.sidebutton.SideButton;
|
import refinedstorage.gui.sidebutton.SideButton;
|
||||||
import refinedstorage.inventory.ItemHandlerFluidFilter;
|
import refinedstorage.inventory.ItemHandlerFluid;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -131,8 +131,8 @@ public abstract class GuiBase extends GuiContainer {
|
|||||||
for (int i = 0; i < inventorySlots.inventorySlots.size(); ++i) {
|
for (int i = 0; i < inventorySlots.inventorySlots.size(); ++i) {
|
||||||
Slot slot = inventorySlots.inventorySlots.get(i);
|
Slot slot = inventorySlots.inventorySlots.get(i);
|
||||||
|
|
||||||
if (slot instanceof SlotItemHandler && ((SlotItemHandler) slot).getItemHandler() instanceof ItemHandlerFluidFilter) {
|
if (slot instanceof SlotItemHandler && ((SlotItemHandler) slot).getItemHandler() instanceof ItemHandlerFluid) {
|
||||||
FluidStack stack = ((ItemHandlerFluidFilter) ((SlotItemHandler) slot).getItemHandler()).getFilters()[slot.getSlotIndex()];
|
FluidStack stack = ((ItemHandlerFluid) ((SlotItemHandler) slot).getItemHandler()).getFluids()[slot.getSlotIndex()];
|
||||||
|
|
||||||
if (stack != null) {
|
if (stack != null) {
|
||||||
FLUID_RENDERER.draw(mc, slot.xDisplayPosition, slot.yDisplayPosition, stack);
|
FLUID_RENDERER.draw(mc, slot.xDisplayPosition, slot.yDisplayPosition, stack);
|
||||||
|
|||||||
34
src/main/java/refinedstorage/inventory/ItemHandlerFluid.java
Executable file
34
src/main/java/refinedstorage/inventory/ItemHandlerFluid.java
Executable file
@@ -0,0 +1,34 @@
|
|||||||
|
package refinedstorage.inventory;
|
||||||
|
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.tileentity.TileEntity;
|
||||||
|
import net.minecraftforge.fluids.Fluid;
|
||||||
|
import net.minecraftforge.fluids.FluidStack;
|
||||||
|
import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
|
||||||
|
|
||||||
|
public class ItemHandlerFluid extends ItemHandlerBasic {
|
||||||
|
private FluidStack[] fluids;
|
||||||
|
|
||||||
|
public ItemHandlerFluid(int size, TileEntity tile) {
|
||||||
|
super(size, tile, (IItemValidator) s -> s.hasCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, null) && s.getCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, null).drain(Fluid.BUCKET_VOLUME, false) != null);
|
||||||
|
|
||||||
|
this.fluids = new FluidStack[size];
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onContentsChanged(int slot) {
|
||||||
|
super.onContentsChanged(slot);
|
||||||
|
|
||||||
|
ItemStack stack = getStackInSlot(slot);
|
||||||
|
|
||||||
|
if (stack == null) {
|
||||||
|
fluids[slot] = null;
|
||||||
|
} else {
|
||||||
|
fluids[slot] = stack.getCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, null).drain(Fluid.BUCKET_VOLUME, false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public FluidStack[] getFluids() {
|
||||||
|
return fluids;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,32 +0,0 @@
|
|||||||
package refinedstorage.inventory;
|
|
||||||
|
|
||||||
import net.minecraft.item.ItemStack;
|
|
||||||
import net.minecraft.tileentity.TileEntity;
|
|
||||||
import net.minecraftforge.fluids.Fluid;
|
|
||||||
import net.minecraftforge.fluids.FluidStack;
|
|
||||||
import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
|
|
||||||
|
|
||||||
public class ItemHandlerFluidFilter extends ItemHandlerBasic {
|
|
||||||
private FluidStack[] filters = new FluidStack[9];
|
|
||||||
|
|
||||||
public ItemHandlerFluidFilter(TileEntity tile) {
|
|
||||||
super(9, tile, (IItemValidator) s -> s.hasCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, null) && s.getCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, null).drain(Fluid.BUCKET_VOLUME, false) != null);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onContentsChanged(int slot) {
|
|
||||||
super.onContentsChanged(slot);
|
|
||||||
|
|
||||||
ItemStack stack = getStackInSlot(slot);
|
|
||||||
|
|
||||||
if (stack == null) {
|
|
||||||
filters[slot] = null;
|
|
||||||
} else {
|
|
||||||
filters[slot] = stack.getCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, null).drain(Fluid.BUCKET_VOLUME, false);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public FluidStack[] getFilters() {
|
|
||||||
return filters;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -19,7 +19,7 @@ import refinedstorage.apiimpl.storage.fluid.FluidStorageNBT;
|
|||||||
import refinedstorage.apiimpl.storage.fluid.FluidUtils;
|
import refinedstorage.apiimpl.storage.fluid.FluidUtils;
|
||||||
import refinedstorage.block.EnumFluidStorageType;
|
import refinedstorage.block.EnumFluidStorageType;
|
||||||
import refinedstorage.inventory.ItemHandlerBasic;
|
import refinedstorage.inventory.ItemHandlerBasic;
|
||||||
import refinedstorage.inventory.ItemHandlerFluidFilter;
|
import refinedstorage.inventory.ItemHandlerFluid;
|
||||||
import refinedstorage.inventory.ItemValidatorBasic;
|
import refinedstorage.inventory.ItemValidatorBasic;
|
||||||
import refinedstorage.tile.config.IComparable;
|
import refinedstorage.tile.config.IComparable;
|
||||||
import refinedstorage.tile.config.IFilterable;
|
import refinedstorage.tile.config.IFilterable;
|
||||||
@@ -93,7 +93,7 @@ public class TileFluidDiskDrive extends TileNode implements IFluidStorageProvide
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
private ItemHandlerFluidFilter filters = new ItemHandlerFluidFilter(this);
|
private ItemHandlerFluid filters = new ItemHandlerFluid(9, this);
|
||||||
|
|
||||||
private FluidStorage storages[] = new FluidStorage[8];
|
private FluidStorage storages[] = new FluidStorage[8];
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import net.minecraft.tileentity.TileEntity;
|
|||||||
import net.minecraftforge.fluids.FluidStack;
|
import net.minecraftforge.fluids.FluidStack;
|
||||||
import net.minecraftforge.items.IItemHandler;
|
import net.minecraftforge.items.IItemHandler;
|
||||||
import refinedstorage.api.storage.CompareUtils;
|
import refinedstorage.api.storage.CompareUtils;
|
||||||
import refinedstorage.inventory.ItemHandlerFluidFilter;
|
import refinedstorage.inventory.ItemHandlerFluid;
|
||||||
import refinedstorage.tile.data.ITileDataConsumer;
|
import refinedstorage.tile.data.ITileDataConsumer;
|
||||||
import refinedstorage.tile.data.ITileDataProducer;
|
import refinedstorage.tile.data.ITileDataProducer;
|
||||||
import refinedstorage.tile.data.TileDataParameter;
|
import refinedstorage.tile.data.TileDataParameter;
|
||||||
@@ -63,12 +63,12 @@ public interface IFilterable {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
static boolean canTakeFluids(ItemHandlerFluidFilter filters, int mode, int compare, FluidStack stack) {
|
static boolean canTakeFluids(ItemHandlerFluid filters, int mode, int compare, FluidStack stack) {
|
||||||
if (mode == WHITELIST) {
|
if (mode == WHITELIST) {
|
||||||
int slots = 0;
|
int slots = 0;
|
||||||
|
|
||||||
for (int i = 0; i < filters.getSlots(); ++i) {
|
for (int i = 0; i < filters.getSlots(); ++i) {
|
||||||
FluidStack slot = filters.getFilters()[i];
|
FluidStack slot = filters.getFluids()[i];
|
||||||
|
|
||||||
if (slot != null) {
|
if (slot != null) {
|
||||||
slots++;
|
slots++;
|
||||||
@@ -82,7 +82,7 @@ public interface IFilterable {
|
|||||||
return slots == 0;
|
return slots == 0;
|
||||||
} else if (mode == BLACKLIST) {
|
} else if (mode == BLACKLIST) {
|
||||||
for (int i = 0; i < filters.getSlots(); ++i) {
|
for (int i = 0; i < filters.getSlots(); ++i) {
|
||||||
FluidStack slot = filters.getFilters()[i];
|
FluidStack slot = filters.getFluids()[i];
|
||||||
|
|
||||||
if (slot != null && CompareUtils.compareStack(slot, stack, compare)) {
|
if (slot != null && CompareUtils.compareStack(slot, stack, compare)) {
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
Reference in New Issue
Block a user