@SuppressWarnings("null") public @Nonnull NBTTagCompound getTag(@Nonnull ItemStack tag) { return getTag(tag, new NBTTagCompound()); }
public @Nullable NBTTagCompound getTag(@Nullable NBTTagCompound tag) { return getTag(tag, new NBTTagCompound()); }
public static void setTank(@Nonnull ItemStack stack, SmartTank tank) { Writer.writeField(NbtValue.DATAROOT.getTag(stack), SmartTank.class, "tank", tank); }
public @Nonnull ItemStack getStack(@Nonnull ItemStack stack, @Nonnull ItemStack _default) { if (hasTag(stack)) { return new ItemStack(getTag(stack)); } return _default; }
@Override public IItemFilter createFilterFromStack(@Nonnull ItemStack stack) { IItemFilter filter = new ExistingItemFilter(); NBTTagCompound tag = NbtValue.FILTER.getTag(stack); filter.readFromNBT(tag); return filter; }
public static SmartTank getTank(@Nonnull ItemStack stack) { if (NbtValue.DATAROOT.hasTag(stack)) { return Reader.readField(NbtValue.DATAROOT.getTag(stack), SmartTank.class, "tank", null); } return null; }
@Override public IOutputSignalFilter createFilterFromStack(@Nonnull ItemStack stack) { CountingOutputSignalFilter filter = new CountingOutputSignalFilter(); if (NbtValue.FILTER.hasTag(stack)) { filter.readFromNBT(NbtValue.FILTER.getTag(stack)); } return filter; }
@Override public IConduit read(@Nonnull Registry registry, @Nonnull Set<NBTAction> phase, @Nonnull NBTTagCompound nbt, @Nonnull Type type, @Nonnull String name, @Nullable IConduit object) throws IllegalArgumentException, IllegalAccessException, InstantiationException, NoHandlerFoundException { if (nbt.hasKey(name)) { NBTTagCompound root = nbt.getCompoundTag(name); object = read(phase, root); if (object == null) { // TODO: remove, this is for compatibility with early 1.12.2 dev builds NBTTagCompound conduitTag = NbtValue.CONDUIT.getTag(root); if (conduitTag != null) { object = read(phase, conduitTag); } } } return object; }
@Override public IFluidFilter createFilterFromStack(@Nonnull ItemStack stack) { IFluidFilter filter = new FluidFilter(); if (NbtValue.FILTER.hasTag(stack)) { filter.readFromNBT(NbtValue.FILTER.getTag(stack)); } return filter; }
@Override public IItemFilter createFilterFromStack(@Nonnull ItemStack stack) { IItemFilter filter = new PowerItemFilter(); if (NbtValue.FILTER.hasTag(stack)) { filter.readFromNBT(NbtValue.FILTER.getTag(stack)); } return filter; }
@Override public IItemFilter createFilterFromStack(@Nonnull ItemStack stack) { ItemFilter filter = new ItemFilter(filterType); NBTTagCompound tag = NbtValue.FILTER.getTag(stack); if (!tag.hasNoTags()) { filter.readFromNBT(tag); } return filter; }
@Override public IInputSignalFilter createFilterFromStack(@Nonnull ItemStack stack) { TimerInputSignalFilter filter = new TimerInputSignalFilter(); if (NbtValue.FILTER.hasTag(stack)) { filter.readFromNBT(NbtValue.FILTER.getTag(stack)); } return filter; }
@Override public IOutputSignalFilter createFilterFromStack(@Nonnull ItemStack stack) { LogicOutputSignalFilter filter = new LogicOutputSignalFilter(filterType); if (NbtValue.FILTER.hasTag(stack)) { filter.readFromNBT(NbtValue.FILTER.getTag(stack)); } return filter; }
@Override public IItemFilter createFilterFromStack(@Nonnull ItemStack stack) { IItemFilter filter = new ModItemFilter(); if (NbtValue.FILTER.hasTag(stack)) { filter.readFromNBT(NbtValue.FILTER.getTag(stack)); } return filter; }
@Override public IOutputSignalFilter createFilterFromStack(@Nonnull ItemStack stack) { ToggleOutputSignalFilter filter = new ToggleOutputSignalFilter(); if (NbtValue.FILTER.hasTag(stack)) { filter.readFromNBT(NbtValue.FILTER.getTag(stack)); } return filter; }
@Override public IItemFilter createFilterFromStack(@Nonnull ItemStack stack) { IItemFilter filter = new SpeciesItemFilter(); if (NbtValue.FILTER.hasTag(stack)) { filter.readFromNBT(NbtValue.FILTER.getTag(stack)); } return filter; }
public static IBlockState readNbt(NBTTagCompound nbtRoot) { if (BLOCKSTATE.hasTag(nbtRoot)) { final NBTTagCompound tag = BLOCKSTATE.getTag(nbtRoot); if (tag != null) { final IBlockState paint = NBTUtil.readBlockState(tag); if (paint != Blocks.AIR.getDefaultState()) { return paint; } } } return null; }
@Override public IItemFilter createFilterFromStack(@Nonnull ItemStack stack) { SoulFilter filter = new SoulFilter(); filter.setSlotCount(size); NBTTagCompound tag = NbtValue.FILTER.getTag(stack); if (!tag.hasNoTags()) { filter.readFromNBT(tag); } return filter; }
@Override public void readCustomNBT(@Nonnull ItemStack stack) { if (NbtValue.DATAROOT.hasTag(stack)) { NBTTagCompound tagCompound = NbtValue.DATAROOT.getTag(stack); readCustomNBT(NBTAction.ITEM, tagCompound); } setPaintSource(PaintUtil.getSourceBlock(stack)); }
@Override public IItemFilter createFilterFromStack(@Nonnull ItemStack stack) { EnchantmentFilter filter = new EnchantmentFilter(); filter.setSlotCount(size); NBTTagCompound tag = NbtValue.FILTER.getTag(stack); if (!tag.hasNoTags()) { filter.readFromNBT(tag); } return filter; }