Fix annotations

This commit is contained in:
Raoul Van den Berge
2016-11-30 14:27:29 +01:00
parent c1dbcd029c
commit 1ae5455783
21 changed files with 79 additions and 48 deletions

View File

@@ -13,6 +13,7 @@ import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler;
import net.minecraftforge.items.ItemStackHandler;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
public class ReaderWriterHandlerItems implements IReaderWriterHandler {
@@ -87,18 +88,21 @@ public class ReaderWriterHandlerItems implements IReaderWriterHandler {
}
@Override
@Nonnull
public ItemStack getStackInSlot(int slot) {
return parent.getStackInSlot(slot);
}
@Override
public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) {
@Nonnull
public ItemStack insertItem(int slot, @Nonnull ItemStack stack, boolean simulate) {
return canInsert ? parent.insertItem(slot, stack, simulate) : stack;
}
@Override
@Nonnull
public ItemStack extractItem(int slot, int amount, boolean simulate) {
return canExtract ? parent.extractItem(slot, amount, simulate) : null;
return canExtract ? parent.extractItem(slot, amount, simulate) : ItemStack.EMPTY;
}
}
}

View File

@@ -11,6 +11,7 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fluids.FluidStack;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
/**
@@ -79,7 +80,7 @@ public abstract class FluidStorageNBT implements IFluidStorage {
}
@Override
public synchronized FluidStack insertFluid(FluidStack stack, int size, boolean simulate) {
public synchronized FluidStack insertFluid(@Nonnull FluidStack stack, int size, boolean simulate) {
for (FluidStack otherStack : stacks) {
if (otherStack.isFluidEqual(stack)) {
if (getCapacity() != -1 && getStored() + size > getCapacity()) {
@@ -150,7 +151,7 @@ public abstract class FluidStorageNBT implements IFluidStorage {
}
@Override
public synchronized FluidStack extractFluid(FluidStack stack, int size, int flags, boolean simulate) {
public synchronized FluidStack extractFluid(@Nonnull FluidStack stack, int size, int flags, boolean simulate) {
for (FluidStack otherStack : stacks) {
if (API.instance().getComparer().isEqual(otherStack, stack, flags)) {
if (size > otherStack.amount) {

View File

@@ -18,6 +18,7 @@ import net.minecraftforge.client.model.pipeline.VertexTransformer;
import net.minecraftforge.common.model.TRSRTransformation;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import javax.vecmath.Matrix3f;
import javax.vecmath.Matrix4f;
import javax.vecmath.Vector3f;
@@ -141,7 +142,7 @@ public class BakedModelTRSR implements IBakedModel {
@Nonnull
@Override
public IBakedModel handleItemState(@Nonnull IBakedModel originalModel, ItemStack stack, @Nonnull World world, @Nonnull EntityLivingBase entity) {
public IBakedModel handleItemState(@Nonnull IBakedModel originalModel, ItemStack stack, @Nullable World world, @Nullable EntityLivingBase entity) {
IBakedModel baked = model.original.getOverrides().handleItemState(originalModel, stack, world, entity);
return new BakedModelTRSR(baked, model.transformation);

View File

@@ -43,6 +43,8 @@ import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler;
import javax.annotation.Nullable;
public class TileConstructor extends TileNode implements IComparable, IType {
public static final TileDataParameter<Integer> COMPARE = IComparable.createParameter();
public static final TileDataParameter<Integer> TYPE = IType.createParameter();
@@ -326,7 +328,7 @@ public class TileConstructor extends TileNode implements IComparable, IType {
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) {
return (T) upgrades;
}
@@ -335,7 +337,7 @@ public class TileConstructor extends TileNode implements IComparable, IType {
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY || super.hasCapability(capability, facing);
}
}

View File

@@ -911,7 +911,7 @@ public class TileController extends TileBase implements INetworkMaster, IRedston
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityEnergy.ENERGY) {
return (T) energy;
}
@@ -924,7 +924,7 @@ public class TileController extends TileBase implements INetworkMaster, IRedston
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityEnergy.ENERGY
|| (energyTesla != null && (capability == TeslaCapabilities.CAPABILITY_HOLDER || capability == TeslaCapabilities.CAPABILITY_CONSUMER))
|| super.hasCapability(capability, facing);

View File

@@ -22,6 +22,7 @@ import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler;
import net.minecraftforge.items.wrapper.CombinedInvWrapper;
import javax.annotation.Nullable;
import java.util.ArrayList;
import java.util.List;
@@ -205,7 +206,7 @@ public class TileCrafter extends TileNode implements ICraftingPatternContainer {
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY && facing != getDirection()) {
return (T) patterns;
}
@@ -214,7 +215,7 @@ public class TileCrafter extends TileNode implements ICraftingPatternContainer {
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY && facing != getDirection()) || super.hasCapability(capability, facing);
}
}

View File

@@ -40,6 +40,7 @@ import net.minecraftforge.fluids.capability.wrappers.FluidBlockWrapper;
import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler;
import javax.annotation.Nullable;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@@ -294,7 +295,7 @@ public class TileDestructor extends TileNode implements IComparable, IFilterable
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) {
return (T) upgrades;
}
@@ -303,7 +304,7 @@ public class TileDestructor extends TileNode implements IComparable, IFilterable
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY || super.hasCapability(capability, facing);
}
}

View File

@@ -30,6 +30,8 @@ import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler;
import net.minecraftforge.items.ItemHandlerHelper;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import java.util.List;
public class TileDiskDrive extends TileNode implements IItemStorageProvider, IFluidStorageProvider, IStorageGui, IComparable, IFilterable, IPrioritizable, IType, IExcessVoidable, IAccessType {
@@ -55,7 +57,7 @@ public class TileDiskDrive extends TileNode implements IItemStorageProvider, IFl
}
@Override
public ItemStack insertItem(ItemStack stack, int size, boolean simulate) {
public ItemStack insertItem(@Nonnull ItemStack stack, int size, boolean simulate) {
if (!IFilterable.canTake(itemFilters, mode, getCompare(), stack)) {
return ItemHandlerHelper.copyStackWithSize(stack, size);
}
@@ -571,7 +573,7 @@ public class TileDiskDrive extends TileNode implements IItemStorageProvider, IFl
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) {
return (T) disks;
}
@@ -580,7 +582,7 @@ public class TileDiskDrive extends TileNode implements IItemStorageProvider, IFl
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY || super.hasCapability(capability, facing);
}
}

View File

@@ -32,6 +32,7 @@ import net.minecraftforge.items.ItemHandlerHelper;
import net.minecraftforge.items.wrapper.CombinedInvWrapper;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import java.util.ArrayList;
public class TileDiskManipulator extends TileNode implements IComparable, IFilterable, IType {
@@ -132,7 +133,7 @@ public class TileDiskManipulator extends TileNode implements IComparable, IFilte
}
@Override
public ItemStack insertItem(ItemStack stack, int size, boolean simulate) {
public ItemStack insertItem(@Nonnull ItemStack stack, int size, boolean simulate) {
if (!IFilterable.canTake(itemFilters, mode, getCompare(), stack)) {
return ItemHandlerHelper.copyStackWithSize(stack, size);
}
@@ -141,7 +142,7 @@ public class TileDiskManipulator extends TileNode implements IComparable, IFilte
}
@Override
public ItemStack extractItem(ItemStack stack, int size, int flags, boolean simulate) {
public ItemStack extractItem(@Nonnull ItemStack stack, int size, int flags, boolean simulate) {
if (!IFilterable.canTake(itemFilters, mode, getCompare(), stack)) {
return null;
}
@@ -599,7 +600,7 @@ public class TileDiskManipulator extends TileNode implements IComparable, IFilte
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) {
return facing == EnumFacing.DOWN ? (T) outputDisks : (T) inputDisks;
}
@@ -608,7 +609,7 @@ public class TileDiskManipulator extends TileNode implements IComparable, IFilte
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY || super.hasCapability(capability, facing);
}

View File

@@ -21,6 +21,8 @@ import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler;
import net.minecraftforge.items.ItemHandlerHelper;
import javax.annotation.Nullable;
public class TileExporter extends TileNode implements IComparable, IType {
public static final TileDataParameter<Integer> COMPARE = IComparable.createParameter();
public static final TileDataParameter<Integer> TYPE = IType.createParameter();
@@ -187,7 +189,7 @@ public class TileExporter extends TileNode implements IComparable, IType {
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) {
return (T) upgrades;
}
@@ -196,7 +198,7 @@ public class TileExporter extends TileNode implements IComparable, IType {
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY || super.hasCapability(capability, facing);
}
}

View File

@@ -21,6 +21,8 @@ import net.minecraftforge.fluids.FluidTank;
import net.minecraftforge.fluids.capability.CapabilityFluidHandler;
import org.apache.commons.lang3.tuple.Pair;
import javax.annotation.Nullable;
public class TileFluidInterface extends TileNode implements IComparable {
public static final int TANK_CAPACITY = 16000;
@@ -231,12 +233,12 @@ public class TileFluidInterface extends TileNode implements IComparable {
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY || super.hasCapability(capability, facing);
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY) {
return facing == EnumFacing.DOWN ? (T) tankOut : (T) tankIn;
}

View File

@@ -21,6 +21,8 @@ import net.minecraftforge.fluids.capability.IFluidHandler;
import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler;
import javax.annotation.Nullable;
public class TileImporter extends TileNode implements IComparable, IFilterable, IType {
public static final TileDataParameter<Integer> COMPARE = IComparable.createParameter();
public static final TileDataParameter<Integer> MODE = IFilterable.createParameter();
@@ -205,7 +207,7 @@ public class TileImporter extends TileNode implements IComparable, IFilterable,
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) {
return (T) upgrades;
}
@@ -214,7 +216,7 @@ public class TileImporter extends TileNode implements IComparable, IFilterable,
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY || super.hasCapability(capability, facing);
}
}

View File

@@ -17,6 +17,7 @@ import net.minecraftforge.items.IItemHandler;
import net.minecraftforge.items.wrapper.CombinedInvWrapper;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
public class TileInterface extends TileNode implements IComparable {
public static final TileDataParameter<Integer> COMPARE = IComparable.createParameter();
@@ -29,7 +30,7 @@ public class TileInterface extends TileNode implements IComparable {
private ItemHandlerBasic exportItems = new ItemHandlerBasic(9, this) {
@Override
@Nonnull
public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) {
public ItemStack insertItem(int slot, @Nonnull ItemStack stack, boolean simulate) {
return stack;
}
};
@@ -190,7 +191,7 @@ public class TileInterface extends TileNode implements IComparable {
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) {
return facing == EnumFacing.DOWN ? (T) exportItems : (T) importItems;
}
@@ -199,7 +200,7 @@ public class TileInterface extends TileNode implements IComparable {
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY || super.hasCapability(capability, facing);
}
}

View File

@@ -18,6 +18,8 @@ import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler;
import javax.annotation.Nullable;
public class TileProcessingPatternEncoder extends TileBase {
private static final String NBT_OREDICT_PATTERN = "OredictPattern";
@@ -125,7 +127,7 @@ public class TileProcessingPatternEncoder extends TileBase {
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) {
return (T) patterns;
}
@@ -134,7 +136,7 @@ public class TileProcessingPatternEncoder extends TileBase {
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY || super.hasCapability(capability, facing);
}
}

View File

@@ -17,6 +17,8 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumFacing;
import net.minecraftforge.common.capabilities.Capability;
import javax.annotation.Nullable;
public class TileReader extends TileNode implements IReader {
private static final String NBT_CHANNEL = "Channel";
@@ -89,7 +91,7 @@ public class TileReader extends TileNode implements IReader {
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
if (super.hasCapability(capability, facing)) {
return true;
}
@@ -114,7 +116,7 @@ public class TileReader extends TileNode implements IReader {
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
T foundCapability = super.getCapability(capability, facing);
if (foundCapability == null) {

View File

@@ -20,6 +20,7 @@ import net.minecraftforge.items.IItemHandler;
import net.minecraftforge.items.wrapper.CombinedInvWrapper;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
public class TileSolderer extends TileNode {
public static final TileDataParameter<Integer> DURATION = new TileDataParameter<>(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileSolderer>() {
@@ -49,7 +50,7 @@ public class TileSolderer extends TileNode {
private ItemHandlerBasic items = new ItemHandlerBasic(3, this) {
@Override
@Nonnull
public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) {
public ItemStack insertItem(int slot, @Nonnull ItemStack stack, boolean simulate) {
for (ISoldererRecipe recipe : API.instance().getSoldererRegistry().getRecipes()) {
if (API.instance().getComparer().isEqualNoQuantity(recipe.getRow(slot), stack) || API.instance().getComparer().isEqualOredict(recipe.getRow(slot), stack)) {
return super.insertItem(slot, stack, simulate);
@@ -62,7 +63,7 @@ public class TileSolderer extends TileNode {
private ItemHandlerBasic result = new ItemHandlerBasic(1, this) {
@Override
@Nonnull
public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) {
public ItemStack insertItem(int slot, @Nonnull ItemStack stack, boolean simulate) {
return stack;
}
};
@@ -197,7 +198,7 @@ public class TileSolderer extends TileNode {
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) {
return facing == EnumFacing.DOWN ? (T) result : (T) items;
}
@@ -206,7 +207,7 @@ public class TileSolderer extends TileNode {
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY || super.hasCapability(capability, facing);
}
}

View File

@@ -20,6 +20,7 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.network.datasync.DataSerializers;
import net.minecraftforge.items.ItemHandlerHelper;
import javax.annotation.Nonnull;
import java.util.List;
public class TileStorage extends TileNode implements IItemStorageProvider, IStorageGui, IComparable, IFilterable, IPrioritizable, IExcessVoidable, IAccessType {
@@ -46,8 +47,7 @@ public class TileStorage extends TileNode implements IItemStorageProvider, IStor
}
@Override
public ItemStack insertItem(ItemStack stack, int size, boolean simulate) {
// @todo: this doesn't work with the item voiding system!
public ItemStack insertItem(@Nonnull ItemStack stack, int size, boolean simulate) {
if (!IFilterable.canTake(filters, mode, compare, stack)) {
return ItemHandlerHelper.copyStackWithSize(stack, size);
}

View File

@@ -16,6 +16,8 @@ import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler;
import javax.annotation.Nullable;
public class TileWirelessTransmitter extends TileNode implements IWirelessTransmitter {
public static final TileDataParameter<Integer> RANGE = new TileDataParameter<>(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileWirelessTransmitter>() {
@Override
@@ -85,7 +87,7 @@ public class TileWirelessTransmitter extends TileNode implements IWirelessTransm
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) {
return (T) upgrades;
}
@@ -94,7 +96,7 @@ public class TileWirelessTransmitter extends TileNode implements IWirelessTransm
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
return capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY || super.hasCapability(capability, facing);
}
}

View File

@@ -12,6 +12,8 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumFacing;
import net.minecraftforge.common.capabilities.Capability;
import javax.annotation.Nullable;
public class TileWriter extends TileNode implements IWriter {
private static final String NBT_CHANNEL = "Channel";
@@ -111,7 +113,7 @@ public class TileWriter extends TileNode implements IWriter {
}
@Override
public boolean hasCapability(Capability<?> capability, EnumFacing facing) {
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing) {
if (super.hasCapability(capability, facing)) {
return true;
}
@@ -136,7 +138,7 @@ public class TileWriter extends TileNode implements IWriter {
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
T foundCapability = super.getCapability(capability, facing);
if (foundCapability == null) {

View File

@@ -97,7 +97,7 @@ public interface IFilterable {
static boolean isEmpty(IItemHandler filter) {
for (int i = 0; i < filter.getSlots(); i++) {
if (filter.getStackInSlot(i) != null) {
if (!filter.getStackInSlot(i).isEmpty()) {
return false;
}
}

View File

@@ -10,6 +10,8 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.items.ItemHandlerHelper;
import javax.annotation.Nonnull;
public class ItemStorageDrawer extends ItemStorageExternal {
private TileExternalStorage externalStorage;
private IDrawer drawer;
@@ -30,12 +32,12 @@ public class ItemStorageDrawer extends ItemStorageExternal {
}
@Override
public ItemStack insertItem(ItemStack stack, int size, boolean simulate) {
public ItemStack insertItem(@Nonnull ItemStack stack, int size, boolean simulate) {
return insertItem(externalStorage, drawer, stack, size, simulate);
}
@Override
public ItemStack extractItem(ItemStack stack, int size, int flags, boolean simulate) {
public ItemStack extractItem(@Nonnull ItemStack stack, int size, int flags, boolean simulate) {
return extractItem(drawer, stack, size, flags, simulate);
}
@@ -62,7 +64,7 @@ public class ItemStorageDrawer extends ItemStorageExternal {
return RSUtils.emptyNonNullList();
}
public static ItemStack insertItem(TileExternalStorage externalStorage, IDrawer drawer, ItemStack stack, int size, boolean simulate) {
public static ItemStack insertItem(TileExternalStorage externalStorage, IDrawer drawer, @Nonnull ItemStack stack, int size, boolean simulate) {
if (IFilterable.canTake(externalStorage.getItemFilters(), externalStorage.getMode(), externalStorage.getCompare(), stack) && drawer.canItemBeStored(stack)) {
int stored = drawer.getStoredItemCount();
int remainingSpace = drawer.getMaxCapacity(stack) - stored;
@@ -93,7 +95,7 @@ public class ItemStorageDrawer extends ItemStorageExternal {
return ItemHandlerHelper.copyStackWithSize(stack, size);
}
public static ItemStack extractItem(IDrawer drawer, ItemStack stack, int size, int flags, boolean simulate) {
public static ItemStack extractItem(IDrawer drawer, @Nonnull ItemStack stack, int size, int flags, boolean simulate) {
if (API.instance().getComparer().isEqual(stack, drawer.getStoredItemPrototype(), flags) && drawer.canItemBeExtracted(stack)) {
if (size > drawer.getStoredItemCount()) {
size = drawer.getStoredItemCount();