Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.soravoid.sparkon.capabilities;
- import com.soravoid.sparkon.lists.SparkItems;
- import net.minecraft.item.ItemStack;
- import net.minecraft.nbt.CompoundNBT;
- import net.minecraft.util.Direction;
- import net.minecraftforge.common.capabilities.Capability;
- import net.minecraftforge.common.capabilities.CapabilityInject;
- import net.minecraftforge.common.capabilities.ICapabilitySerializable;
- import net.minecraftforge.common.util.LazyOptional;
- import net.minecraftforge.items.IItemHandler;
- import net.minecraftforge.items.IItemHandlerModifiable;
- import net.minecraftforge.items.ItemStackHandler;
- import javax.annotation.Nonnull;
- import javax.annotation.Nullable;
- public class CapabilityAligner extends ItemStackHandler implements ICapabilitySerializable<CompoundNBT>, IItemHandler, IItemHandlerModifiable
- {
- @CapabilityInject(CapabilityAligner.class)
- public static Capability<CapabilityAligner> ALIGNER = null;
- public CapabilityAligner() { super(1); }
- @Nonnull
- @Override
- public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction side)
- {
- return ALIGNER.orEmpty(cap, LazyOptional.of(() -> this));
- }
- @Override
- public boolean isItemValid(int slot, @Nonnull ItemStack stack) { return stack.getItem() == SparkItems.WAVE_MANIPULATOR_ALIGNER || stack.getItem() == SparkItems.WAVE_CASTER_ALIGNER || stack.getItem() == SparkItems.STRONG_WILLED_ALIGNER || stack.getItem() == SparkItems.ADAPTIVE_ALIGNER; }
- @Override
- public int getSlotLimit(int slot) { return 1; }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement