@Override @Nullable public ICapabilityProvider initCapabilities(@Nonnull ItemStack stack, @Nullable NBTTagCompound nbt) { ICapabilityProvider capProvider = new ICapabilityProvider() { @Override public boolean hasCapability(@Nonnull Capability<?> capability, @Nullable EnumFacing facing) { return capability == CapabilityCapacitorData.getCapNN(); } @Override @Nullable public <T> T getCapability(@Nonnull Capability<T> capability, @Nullable EnumFacing facing) { if (capability == CapabilityCapacitorData.getCapNN()) { return CapabilityCapacitorData.getCapNN().cast(NullHelper.notnullJ(DefaultCapacitorData.values()[getMetadata(stack)], "Enum.values() has a null")); } return null; } }; return new CompoundCapabilityProvider(super.initCapabilities(stack, nbt), capProvider); }
@Override @Nullable public ICapabilityProvider initCapabilities(@Nonnull ItemStack stack, @Nullable NBTTagCompound nbt) { ICapabilityProvider capProvider = new ICapabilityProvider() { @Override public boolean hasCapability(@Nonnull Capability<?> capability, @Nullable EnumFacing facing) { return capability == CapabilityCapacitorData.getCapNN(); } @Override @Nullable public <T> T getCapability(@Nonnull Capability<T> capability, @Nullable EnumFacing facing) { if (capability == CapabilityCapacitorData.getCapNN()) { return CapabilityCapacitorData.getCapNN().cast(NullHelper.notnullJ(getDataFromStack(stack), "Enum.values() has a null")); } return null; } }; return new CompoundCapabilityProvider(super.initCapabilities(stack, nbt), capProvider); }
@Override @Nullable public ICapabilityProvider initCapabilities(@Nonnull ItemStack stack, @Nullable NBTTagCompound nbt) { ICapabilityProvider capProvider = new ICapabilityProvider() { @Override public boolean hasCapability(@Nonnull Capability<?> capability, @Nullable EnumFacing facing) { return capability == CapabilityCapacitorData.getCapNN(); } @Override @Nullable public <T> T getCapability(@Nonnull Capability<T> capability, @Nullable EnumFacing facing) { if (capability == CapabilityCapacitorData.getCapNN()) { return CapabilityCapacitorData.getCapNN().cast(NullHelper.notnullJ(getDataFromStack(stack), "Enum.values() has a null")); } return null; } }; return new CompoundCapabilityProvider(super.initCapabilities(stack, nbt), capProvider); }
@Override public @Nonnull ICapabilityProvider initCapabilities(@Nonnull ItemStack stack, @Nullable NBTTagCompound nbt) { return new CompoundCapabilityProvider(new FluidCapabilityProvider(stack), super.initCapabilities(stack, nbt)); }
@Override public @Nonnull ICapabilityProvider initCapabilities(@Nonnull ItemStack stack, @Nullable NBTTagCompound nbt) { return new CompoundCapabilityProvider(new FluidCapabilityProvider(stack), super.initCapabilities(stack, nbt)); }
@Override public ICapabilityProvider initCapabilities(@Nonnull ItemStack stack, @Nonnull NBTTagCompound nbt) { return new CompoundCapabilityProvider(new CapabilityProvider(stack), new ItemPowerCapabilityBackend(stack)); }