Remove FluidUtils
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
package refinedstorage;
|
package refinedstorage;
|
||||||
|
|
||||||
import io.netty.buffer.ByteBuf;
|
import io.netty.buffer.ByteBuf;
|
||||||
|
import net.minecraft.init.Items;
|
||||||
import net.minecraft.inventory.IInventory;
|
import net.minecraft.inventory.IInventory;
|
||||||
import net.minecraft.inventory.ISidedInventory;
|
import net.minecraft.inventory.ISidedInventory;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
@@ -32,6 +33,8 @@ import java.util.Locale;
|
|||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
|
|
||||||
public final class RSUtils {
|
public final class RSUtils {
|
||||||
|
public static final ItemStack EMPTY_BUCKET = new ItemStack(Items.BUCKET);
|
||||||
|
|
||||||
private static final String NBT_INVENTORY = "Inventory_%d";
|
private static final String NBT_INVENTORY = "Inventory_%d";
|
||||||
private static final String NBT_SLOT = "Slot";
|
private static final String NBT_SLOT = "Slot";
|
||||||
|
|
||||||
@@ -191,4 +194,14 @@ public final class RSUtils {
|
|||||||
public static String formatFluidStackQuantity(FluidStack stack) {
|
public static String formatFluidStackQuantity(FluidStack stack) {
|
||||||
return String.format(Locale.US, "%.1f", (float) stack.amount / 1000).replace(".0", "");
|
return String.format(Locale.US, "%.1f", (float) stack.amount / 1000).replace(".0", "");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static FluidStack copyStackWithSize(FluidStack stack, int size) {
|
||||||
|
FluidStack copy = stack.copy();
|
||||||
|
copy.amount = size;
|
||||||
|
return copy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static FluidStack copyStack(FluidStack stack) {
|
||||||
|
return stack == null ? null : stack.copy();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1,6 +1,5 @@
|
|||||||
package refinedstorage.apiimpl.autocrafting.task;
|
package refinedstorage.apiimpl.autocrafting.task;
|
||||||
|
|
||||||
import net.minecraft.init.Items;
|
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraftforge.fluids.FluidStack;
|
import net.minecraftforge.fluids.FluidStack;
|
||||||
@@ -23,8 +22,6 @@ import java.util.List;
|
|||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
public class CraftingTaskNormal implements ICraftingTask {
|
public class CraftingTaskNormal implements ICraftingTask {
|
||||||
private static final ItemStack EMPTY_BUCKET = new ItemStack(Items.BUCKET);
|
|
||||||
|
|
||||||
private INetworkMaster network;
|
private INetworkMaster network;
|
||||||
private ItemStack requested;
|
private ItemStack requested;
|
||||||
private ICraftingPattern pattern;
|
private ICraftingPattern pattern;
|
||||||
@@ -83,10 +80,10 @@ public class CraftingTaskNormal implements ICraftingTask {
|
|||||||
|
|
||||||
if (fluidInStorage == null || fluidInStorage.amount < fluidInItem.amount) {
|
if (fluidInStorage == null || fluidInStorage.amount < fluidInItem.amount) {
|
||||||
missing.add(input);
|
missing.add(input);
|
||||||
} else if (network.getItemStorage().getList().get(EMPTY_BUCKET) == null) {
|
} else if (network.getItemStorage().getList().get(RSUtils.EMPTY_BUCKET) == null) {
|
||||||
missing.add(EMPTY_BUCKET.copy());
|
missing.add(RSUtils.EMPTY_BUCKET.copy());
|
||||||
} else {
|
} else {
|
||||||
toTake.add(EMPTY_BUCKET.copy());
|
toTake.add(RSUtils.EMPTY_BUCKET.copy());
|
||||||
toTakeFluids.add(fluidInItem.copy());
|
toTakeFluids.add(fluidInItem.copy());
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@@ -10,7 +10,6 @@ import refinedstorage.RSUtils;
|
|||||||
import refinedstorage.api.network.INetworkMaster;
|
import refinedstorage.api.network.INetworkMaster;
|
||||||
import refinedstorage.api.network.grid.IFluidGridHandler;
|
import refinedstorage.api.network.grid.IFluidGridHandler;
|
||||||
import refinedstorage.apiimpl.API;
|
import refinedstorage.apiimpl.API;
|
||||||
import refinedstorage.apiimpl.storage.fluid.FluidUtils;
|
|
||||||
|
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
|
|
||||||
@@ -26,14 +25,14 @@ public class FluidGridHandler implements IFluidGridHandler {
|
|||||||
FluidStack stack = network.getFluidStorage().getList().get(hash);
|
FluidStack stack = network.getFluidStorage().getList().get(hash);
|
||||||
|
|
||||||
if (stack != null && RSUtils.hasFluidBucket(stack)) {
|
if (stack != null && RSUtils.hasFluidBucket(stack)) {
|
||||||
ItemStack bucket = FluidUtils.extractBucket(network);
|
ItemStack bucket = network.extractItem(RSUtils.EMPTY_BUCKET, 1);
|
||||||
|
|
||||||
if (bucket == null) {
|
if (bucket == null) {
|
||||||
for (int i = 0; i < player.inventory.getSizeInventory(); ++i) {
|
for (int i = 0; i < player.inventory.getSizeInventory(); ++i) {
|
||||||
ItemStack slot = player.inventory.getStackInSlot(i);
|
ItemStack slot = player.inventory.getStackInSlot(i);
|
||||||
|
|
||||||
if (API.instance().getComparer().isEqualNoQuantity(FluidUtils.EMPTY_BUCKET, slot)) {
|
if (API.instance().getComparer().isEqualNoQuantity(RSUtils.EMPTY_BUCKET, slot)) {
|
||||||
bucket = FluidUtils.EMPTY_BUCKET.copy();
|
bucket = RSUtils.EMPTY_BUCKET.copy();
|
||||||
|
|
||||||
player.inventory.decrStackSize(i, 1);
|
player.inventory.decrStackSize(i, 1);
|
||||||
|
|
||||||
|
@@ -5,6 +5,7 @@ import net.minecraft.nbt.NBTTagCompound;
|
|||||||
import net.minecraft.nbt.NBTTagList;
|
import net.minecraft.nbt.NBTTagList;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraftforge.fluids.FluidStack;
|
import net.minecraftforge.fluids.FluidStack;
|
||||||
|
import refinedstorage.RSUtils;
|
||||||
import refinedstorage.api.storage.fluid.IFluidStorage;
|
import refinedstorage.api.storage.fluid.IFluidStorage;
|
||||||
import refinedstorage.apiimpl.API;
|
import refinedstorage.apiimpl.API;
|
||||||
|
|
||||||
@@ -85,7 +86,7 @@ public abstract class FluidStorageNBT implements IFluidStorage {
|
|||||||
int remainingSpace = getCapacity() - getStored();
|
int remainingSpace = getCapacity() - getStored();
|
||||||
|
|
||||||
if (remainingSpace <= 0) {
|
if (remainingSpace <= 0) {
|
||||||
return FluidUtils.copyStackWithSize(stack, size);
|
return RSUtils.copyStackWithSize(stack, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!simulate) {
|
if (!simulate) {
|
||||||
@@ -96,7 +97,7 @@ public abstract class FluidStorageNBT implements IFluidStorage {
|
|||||||
onStorageChanged();
|
onStorageChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
return FluidUtils.copyStackWithSize(otherStack, size - remainingSpace);
|
return RSUtils.copyStackWithSize(otherStack, size - remainingSpace);
|
||||||
} else {
|
} else {
|
||||||
if (!simulate) {
|
if (!simulate) {
|
||||||
tag.setInteger(NBT_STORED, getStored() + size);
|
tag.setInteger(NBT_STORED, getStored() + size);
|
||||||
@@ -115,23 +116,23 @@ public abstract class FluidStorageNBT implements IFluidStorage {
|
|||||||
int remainingSpace = getCapacity() - getStored();
|
int remainingSpace = getCapacity() - getStored();
|
||||||
|
|
||||||
if (remainingSpace <= 0) {
|
if (remainingSpace <= 0) {
|
||||||
return FluidUtils.copyStackWithSize(stack, size);
|
return RSUtils.copyStackWithSize(stack, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!simulate) {
|
if (!simulate) {
|
||||||
tag.setInteger(NBT_STORED, getStored() + remainingSpace);
|
tag.setInteger(NBT_STORED, getStored() + remainingSpace);
|
||||||
|
|
||||||
stacks.add(FluidUtils.copyStackWithSize(stack, remainingSpace));
|
stacks.add(RSUtils.copyStackWithSize(stack, remainingSpace));
|
||||||
|
|
||||||
onStorageChanged();
|
onStorageChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
return FluidUtils.copyStackWithSize(stack, size - remainingSpace);
|
return RSUtils.copyStackWithSize(stack, size - remainingSpace);
|
||||||
} else {
|
} else {
|
||||||
if (!simulate) {
|
if (!simulate) {
|
||||||
tag.setInteger(NBT_STORED, getStored() + size);
|
tag.setInteger(NBT_STORED, getStored() + size);
|
||||||
|
|
||||||
stacks.add(FluidUtils.copyStackWithSize(stack, size));
|
stacks.add(RSUtils.copyStackWithSize(stack, size));
|
||||||
|
|
||||||
onStorageChanged();
|
onStorageChanged();
|
||||||
}
|
}
|
||||||
@@ -158,7 +159,7 @@ public abstract class FluidStorageNBT implements IFluidStorage {
|
|||||||
|
|
||||||
onStorageChanged();
|
onStorageChanged();
|
||||||
|
|
||||||
return FluidUtils.copyStackWithSize(otherStack, size);
|
return RSUtils.copyStackWithSize(otherStack, size);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,25 +0,0 @@
|
|||||||
package refinedstorage.apiimpl.storage.fluid;
|
|
||||||
|
|
||||||
import net.minecraft.init.Items;
|
|
||||||
import net.minecraft.item.ItemStack;
|
|
||||||
import net.minecraftforge.fluids.FluidStack;
|
|
||||||
import refinedstorage.api.network.INetworkMaster;
|
|
||||||
|
|
||||||
// @TODO: Move to RSUtils
|
|
||||||
public final class FluidUtils {
|
|
||||||
public static final ItemStack EMPTY_BUCKET = new ItemStack(Items.BUCKET);
|
|
||||||
|
|
||||||
public static FluidStack copyStackWithSize(FluidStack stack, int size) {
|
|
||||||
FluidStack copy = stack.copy();
|
|
||||||
copy.amount = size;
|
|
||||||
return copy;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static FluidStack copy(FluidStack stack) {
|
|
||||||
return stack == null ? null : stack.copy();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static ItemStack extractBucket(INetworkMaster network) {
|
|
||||||
return network.extractItem(EMPTY_BUCKET, 1);
|
|
||||||
}
|
|
||||||
}
|
|
@@ -161,14 +161,6 @@ public class CommonProxy {
|
|||||||
API.instance().getSoldererRegistry().addRecipe(new SoldererRecipeProcessor(ItemProcessor.TYPE_IMPROVED));
|
API.instance().getSoldererRegistry().addRecipe(new SoldererRecipeProcessor(ItemProcessor.TYPE_IMPROVED));
|
||||||
API.instance().getSoldererRegistry().addRecipe(new SoldererRecipeProcessor(ItemProcessor.TYPE_ADVANCED));
|
API.instance().getSoldererRegistry().addRecipe(new SoldererRecipeProcessor(ItemProcessor.TYPE_ADVANCED));
|
||||||
|
|
||||||
GameRegistry.addRecipe(new ItemStack(Blocks.SPONGE),
|
|
||||||
"WWW",
|
|
||||||
"WBW",
|
|
||||||
"WWW",
|
|
||||||
'W', new ItemStack(Blocks.PLANKS),
|
|
||||||
'B', new ItemStack(Items.WATER_BUCKET)
|
|
||||||
);
|
|
||||||
|
|
||||||
// Silicon
|
// Silicon
|
||||||
GameRegistry.addSmelting(Items.QUARTZ, new ItemStack(RSItems.SILICON), 0.5f);
|
GameRegistry.addSmelting(Items.QUARTZ, new ItemStack(RSItems.SILICON), 0.5f);
|
||||||
|
|
||||||
|
@@ -21,6 +21,7 @@ import net.minecraftforge.fluids.FluidStack;
|
|||||||
import net.minecraftforge.items.ItemHandlerHelper;
|
import net.minecraftforge.items.ItemHandlerHelper;
|
||||||
import refinedstorage.RS;
|
import refinedstorage.RS;
|
||||||
import refinedstorage.RSBlocks;
|
import refinedstorage.RSBlocks;
|
||||||
|
import refinedstorage.RSUtils;
|
||||||
import refinedstorage.api.autocrafting.ICraftingPattern;
|
import refinedstorage.api.autocrafting.ICraftingPattern;
|
||||||
import refinedstorage.api.autocrafting.ICraftingPatternContainer;
|
import refinedstorage.api.autocrafting.ICraftingPatternContainer;
|
||||||
import refinedstorage.api.autocrafting.ICraftingPatternProvider;
|
import refinedstorage.api.autocrafting.ICraftingPatternProvider;
|
||||||
@@ -43,7 +44,6 @@ import refinedstorage.apiimpl.network.NetworkNodeGraph;
|
|||||||
import refinedstorage.apiimpl.network.WirelessGridHandler;
|
import refinedstorage.apiimpl.network.WirelessGridHandler;
|
||||||
import refinedstorage.apiimpl.network.grid.FluidGridHandler;
|
import refinedstorage.apiimpl.network.grid.FluidGridHandler;
|
||||||
import refinedstorage.apiimpl.network.grid.ItemGridHandler;
|
import refinedstorage.apiimpl.network.grid.ItemGridHandler;
|
||||||
import refinedstorage.apiimpl.storage.fluid.FluidUtils;
|
|
||||||
import refinedstorage.apiimpl.storage.fluid.GroupedFluidStorage;
|
import refinedstorage.apiimpl.storage.fluid.GroupedFluidStorage;
|
||||||
import refinedstorage.apiimpl.storage.item.GroupedItemStorage;
|
import refinedstorage.apiimpl.storage.item.GroupedItemStorage;
|
||||||
import refinedstorage.block.BlockController;
|
import refinedstorage.block.BlockController;
|
||||||
@@ -612,7 +612,7 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR
|
|||||||
@Override
|
@Override
|
||||||
public FluidStack insertFluid(@Nonnull FluidStack stack, int size, boolean simulate) {
|
public FluidStack insertFluid(@Nonnull FluidStack stack, int size, boolean simulate) {
|
||||||
if (stack == null || fluidStorage.getStorages().isEmpty()) {
|
if (stack == null || fluidStorage.getStorages().isEmpty()) {
|
||||||
return FluidUtils.copyStackWithSize(stack, size);
|
return RSUtils.copyStackWithSize(stack, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
int orginalSize = size;
|
int orginalSize = size;
|
||||||
@@ -646,7 +646,7 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!simulate && inserted > 0) {
|
if (!simulate && inserted > 0) {
|
||||||
fluidStorage.add(FluidUtils.copyStackWithSize(stack, inserted), false);
|
fluidStorage.add(RSUtils.copyStackWithSize(stack, inserted), false);
|
||||||
}
|
}
|
||||||
|
|
||||||
return remainder;
|
return remainder;
|
||||||
|
@@ -20,7 +20,6 @@ import refinedstorage.api.storage.item.IItemStorage;
|
|||||||
import refinedstorage.api.storage.item.IItemStorageProvider;
|
import refinedstorage.api.storage.item.IItemStorageProvider;
|
||||||
import refinedstorage.api.util.IComparer;
|
import refinedstorage.api.util.IComparer;
|
||||||
import refinedstorage.apiimpl.storage.fluid.FluidStorageNBT;
|
import refinedstorage.apiimpl.storage.fluid.FluidStorageNBT;
|
||||||
import refinedstorage.apiimpl.storage.fluid.FluidUtils;
|
|
||||||
import refinedstorage.apiimpl.storage.item.ItemStorageNBT;
|
import refinedstorage.apiimpl.storage.item.ItemStorageNBT;
|
||||||
import refinedstorage.block.EnumFluidStorageType;
|
import refinedstorage.block.EnumFluidStorageType;
|
||||||
import refinedstorage.block.EnumItemStorageType;
|
import refinedstorage.block.EnumItemStorageType;
|
||||||
@@ -79,7 +78,7 @@ public class TileDiskDrive extends TileNode implements IItemStorageProvider, IFl
|
|||||||
@Override
|
@Override
|
||||||
public FluidStack insertFluid(FluidStack stack, int size, boolean simulate) {
|
public FluidStack insertFluid(FluidStack stack, int size, boolean simulate) {
|
||||||
if (!IFilterable.canTakeFluids(fluidFilters, mode, getCompare(), stack)) {
|
if (!IFilterable.canTakeFluids(fluidFilters, mode, getCompare(), stack)) {
|
||||||
return FluidUtils.copyStackWithSize(stack, size);
|
return RSUtils.copyStackWithSize(stack, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
FluidStack result = super.insertFluid(stack, size, simulate);
|
FluidStack result = super.insertFluid(stack, size, simulate);
|
||||||
|
@@ -15,7 +15,6 @@ import refinedstorage.RS;
|
|||||||
import refinedstorage.RSUtils;
|
import refinedstorage.RSUtils;
|
||||||
import refinedstorage.api.util.IComparer;
|
import refinedstorage.api.util.IComparer;
|
||||||
import refinedstorage.apiimpl.storage.fluid.FluidStorageNBT;
|
import refinedstorage.apiimpl.storage.fluid.FluidStorageNBT;
|
||||||
import refinedstorage.apiimpl.storage.fluid.FluidUtils;
|
|
||||||
import refinedstorage.apiimpl.storage.item.ItemStorageNBT;
|
import refinedstorage.apiimpl.storage.item.ItemStorageNBT;
|
||||||
import refinedstorage.block.EnumFluidStorageType;
|
import refinedstorage.block.EnumFluidStorageType;
|
||||||
import refinedstorage.block.EnumItemStorageType;
|
import refinedstorage.block.EnumItemStorageType;
|
||||||
@@ -143,7 +142,7 @@ public class TileDiskManipulator extends TileNode implements IComparable, IFilte
|
|||||||
@Override
|
@Override
|
||||||
public FluidStack insertFluid(FluidStack stack, int size, boolean simulate) {
|
public FluidStack insertFluid(FluidStack stack, int size, boolean simulate) {
|
||||||
if (!IFilterable.canTakeFluids(fluidFilters, mode, getCompare(), stack)) {
|
if (!IFilterable.canTakeFluids(fluidFilters, mode, getCompare(), stack)) {
|
||||||
return FluidUtils.copyStackWithSize(stack, size);
|
return RSUtils.copyStackWithSize(stack, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
return super.insertFluid(stack, size, simulate);
|
return super.insertFluid(stack, size, simulate);
|
||||||
|
@@ -11,7 +11,6 @@ import refinedstorage.api.storage.fluid.IFluidStorage;
|
|||||||
import refinedstorage.api.storage.fluid.IFluidStorageProvider;
|
import refinedstorage.api.storage.fluid.IFluidStorageProvider;
|
||||||
import refinedstorage.api.util.IComparer;
|
import refinedstorage.api.util.IComparer;
|
||||||
import refinedstorage.apiimpl.storage.fluid.FluidStorageNBT;
|
import refinedstorage.apiimpl.storage.fluid.FluidStorageNBT;
|
||||||
import refinedstorage.apiimpl.storage.fluid.FluidUtils;
|
|
||||||
import refinedstorage.block.BlockFluidStorage;
|
import refinedstorage.block.BlockFluidStorage;
|
||||||
import refinedstorage.block.EnumFluidStorageType;
|
import refinedstorage.block.EnumFluidStorageType;
|
||||||
import refinedstorage.inventory.ItemHandlerFluid;
|
import refinedstorage.inventory.ItemHandlerFluid;
|
||||||
@@ -47,7 +46,7 @@ public class TileFluidStorage extends TileNode implements IFluidStorageProvider,
|
|||||||
@Override
|
@Override
|
||||||
public FluidStack insertFluid(FluidStack stack, int size, boolean simulate) {
|
public FluidStack insertFluid(FluidStack stack, int size, boolean simulate) {
|
||||||
if (!IFilterable.canTakeFluids(filters, mode, compare, stack)) {
|
if (!IFilterable.canTakeFluids(filters, mode, compare, stack)) {
|
||||||
return FluidUtils.copyStackWithSize(stack, size);
|
return RSUtils.copyStackWithSize(stack, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
return super.insertFluid(stack, size, simulate);
|
return super.insertFluid(stack, size, simulate);
|
||||||
|
@@ -3,10 +3,10 @@ package refinedstorage.tile.externalstorage;
|
|||||||
import net.minecraftforge.fluids.FluidStack;
|
import net.minecraftforge.fluids.FluidStack;
|
||||||
import net.minecraftforge.fluids.capability.IFluidHandler;
|
import net.minecraftforge.fluids.capability.IFluidHandler;
|
||||||
import net.minecraftforge.fluids.capability.IFluidTankProperties;
|
import net.minecraftforge.fluids.capability.IFluidTankProperties;
|
||||||
|
import refinedstorage.RSUtils;
|
||||||
import refinedstorage.api.storage.fluid.IFluidStorage;
|
import refinedstorage.api.storage.fluid.IFluidStorage;
|
||||||
import refinedstorage.api.util.IComparer;
|
import refinedstorage.api.util.IComparer;
|
||||||
import refinedstorage.apiimpl.API;
|
import refinedstorage.apiimpl.API;
|
||||||
import refinedstorage.apiimpl.storage.fluid.FluidUtils;
|
|
||||||
import refinedstorage.tile.config.IFilterable;
|
import refinedstorage.tile.config.IFilterable;
|
||||||
|
|
||||||
import javax.annotation.Nonnull;
|
import javax.annotation.Nonnull;
|
||||||
@@ -42,22 +42,22 @@ public class FluidStorageExternal implements IFluidStorage {
|
|||||||
@Override
|
@Override
|
||||||
public FluidStack insertFluid(@Nonnull FluidStack stack, int size, boolean simulate) {
|
public FluidStack insertFluid(@Nonnull FluidStack stack, int size, boolean simulate) {
|
||||||
if (getProperties() != null && IFilterable.canTakeFluids(externalStorage.getFluidFilters(), externalStorage.getMode(), externalStorage.getCompare(), stack) && getProperties().canFillFluidType(stack)) {
|
if (getProperties() != null && IFilterable.canTakeFluids(externalStorage.getFluidFilters(), externalStorage.getMode(), externalStorage.getCompare(), stack) && getProperties().canFillFluidType(stack)) {
|
||||||
int filled = handler.fill(FluidUtils.copyStackWithSize(stack, size), !simulate);
|
int filled = handler.fill(RSUtils.copyStackWithSize(stack, size), !simulate);
|
||||||
|
|
||||||
if (filled == size) {
|
if (filled == size) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
return FluidUtils.copyStackWithSize(stack, size - filled);
|
return RSUtils.copyStackWithSize(stack, size - filled);
|
||||||
}
|
}
|
||||||
|
|
||||||
return FluidUtils.copyStackWithSize(stack, size);
|
return RSUtils.copyStackWithSize(stack, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
@Override
|
@Override
|
||||||
public FluidStack extractFluid(@Nonnull FluidStack stack, int size, int flags) {
|
public FluidStack extractFluid(@Nonnull FluidStack stack, int size, int flags) {
|
||||||
FluidStack toDrain = FluidUtils.copyStackWithSize(stack, size);
|
FluidStack toDrain = RSUtils.copyStackWithSize(stack, size);
|
||||||
|
|
||||||
if (API.instance().getComparer().isEqual(getContents(), toDrain, flags)) {
|
if (API.instance().getComparer().isEqual(getContents(), toDrain, flags)) {
|
||||||
return handler.drain(toDrain, true);
|
return handler.drain(toDrain, true);
|
||||||
@@ -84,9 +84,9 @@ public class FluidStorageExternal implements IFluidStorage {
|
|||||||
FluidStack stack = getContents();
|
FluidStack stack = getContents();
|
||||||
|
|
||||||
if (cache == null) {
|
if (cache == null) {
|
||||||
cache = FluidUtils.copy(stack);
|
cache = RSUtils.copyStack(stack);
|
||||||
} else if (!API.instance().getComparer().isEqual(stack, cache, IComparer.COMPARE_NBT | API.instance().getComparer().COMPARE_QUANTITY)) {
|
} else if (!API.instance().getComparer().isEqual(stack, cache, IComparer.COMPARE_NBT | API.instance().getComparer().COMPARE_QUANTITY)) {
|
||||||
cache = FluidUtils.copy(stack);
|
cache = RSUtils.copyStack(stack);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -95,6 +95,6 @@ public class FluidStorageExternal implements IFluidStorage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void updateCacheForcefully() {
|
public void updateCacheForcefully() {
|
||||||
cache = FluidUtils.copy(getContents());
|
cache = RSUtils.copyStack(getContents());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user