protected void readSettingsFromNBT(NBTTagCompound nbtRoot) { blacklist = NbtValue.FILTER_BLACKLIST.getBoolean(nbtRoot); matchMeta = NbtValue.FILTER_META.getBoolean(nbtRoot); matchNBT = NbtValue.FILTER_NBT.getBoolean(nbtRoot); useOreDict = NbtValue.FILTER_OREDICT.getBoolean(nbtRoot); sticky = NbtValue.FILTER_STICKY.getBoolean(nbtRoot); }
public boolean getBoolean(@Nullable NBTTagCompound tag) { return getBoolean(tag, false); }
public boolean getBoolean(@Nonnull ItemStack stack) { return getBoolean(stack, false); }
@Override public boolean hasEffect(@Nonnull ItemStack stack) { return NbtValue.ENABLED.getBoolean(stack) || super.hasEffect(stack); }
public static boolean isActive(@Nonnull ItemStack item) { return isMagnet(item) && MAGNET_ACTIVE.getBoolean(item); }
@Override public @Nonnull ActionResult<ItemStack> onItemRightClick(@Nonnull World worldIn, @Nonnull EntityPlayer playerIn, @Nonnull EnumHand handIn) { final ItemStack stack = playerIn.getHeldItem(handIn); if (EnergyUpgradeManager.loadFromItem(stack) != null) { if (!worldIn.isRemote) { NbtValue.ENABLED.setBoolean(stack, !NbtValue.ENABLED.getBoolean(stack)); playerIn.sendStatusMessage((NbtValue.ENABLED.getBoolean(stack) ? Lang.INVCHARGER_ENABLED : Lang.INVCHARGER_DISABLED).toChatServer(), true); } return new ActionResult<ItemStack>(EnumActionResult.SUCCESS, stack); } return super.onItemRightClick(worldIn, playerIn, handIn); }
@Override public void readFromNBT(@Nonnull NBTTagCompound nbtRoot) { isBlacklist = NbtValue.FILTER_BLACKLIST.getBoolean(nbtRoot); matchMeta = NbtValue.FILTER_META.getBoolean(nbtRoot); matchNBT = NbtValue.FILTER_NBT.getBoolean(nbtRoot); useOreDict = NbtValue.FILTER_OREDICT.getBoolean(nbtRoot); sticky = NbtValue.FILTER_STICKY.getBoolean(nbtRoot); isAdvanced = NbtValue.FILTER_ADVANCED.getBoolean(nbtRoot); isLimited = NbtValue.FILTER_LIMITED.getBoolean(nbtRoot); isBig = NbtValue.FILTER_BIG.getBoolean(nbtRoot); damageMode = NullHelper.notnullJ(DamageMode.values()[NbtValue.FILTER_DAMAGE.getInt(nbtRoot) & 255], "Enum.values()"); items.clear(); NBTTagList tagList = nbtRoot.getTagList("items", nbtRoot.getId()); for (int i = 0; i < tagList.tagCount(); i++) { items.add(new ItemStack(tagList.getCompoundTagAt(i))); } int numItems = isBig ? BasicFilterTypes.filterUpgradeBig.getSlots() : (isAdvanced ? BasicFilterTypes.filterUpgradeAdvanced.getSlots() : BasicFilterTypes.filterUpgradeBasic.getSlots()); while (items.size() < numItems) { items.add(Prep.getEmpty()); } oreIds.clear(); for (int i = 0; i < numItems; i++) { oreIds.add(null); } }
@Override public void readFromNBT(@Nonnull NBTTagCompound nbtRoot) { isBlacklist = NbtValue.FILTER_BLACKLIST.getBoolean(nbtRoot); clear(); NBTTagList tagList = nbtRoot.getTagList("fluids", nbtRoot.getId()); for (int i = 0; i < tagList.tagCount(); i++) { fluids[i] = FluidStack.loadFluidStackFromNBT(tagList.getCompoundTagAt(i)); } }
@SubscribeEvent public static void onDrop(LivingDropsEvent event) { Entity entity = event.getEntity(); if (entity != null && NbtValue.INFINITY.getBoolean(entity.getEntityData()) && entity.world.rand.nextFloat() < InfinityConfig.dropChanceFogCreatures.get()) { EntityItem entityitem = new EntityItem(entity.world, entity.posX, entity.posY, entity.posZ, Material.POWDER_INFINITY.getStack()); entityitem.setDefaultPickupDelay(); event.getDrops().add(entityitem); } }
public void charge(@Nonnull EntityPlayer player, @Nonnull ItemStack stack, int slot) { if (NbtValue.ENABLED.getBoolean(stack)) { EnergyUpgradeHolder eu = EnergyUpgradeManager.loadFromItem(stack); if (eu != null && eu.getEnergy() > 0) { for (int i : rangeLimited ? SlotNeighborHelper.getSlotNeighors(slot) : SlotNeighborHelper.getAllSlots()) { // for (int i = 0; i < player.inventory.getSizeInventory(); i++) { ItemStack stackInSlot = player.inventory.getStackInSlot(i); if (!(stackInSlot.getItem() instanceof ItemInventoryCharger) && Prep.isValid(stackInSlot)) { IEnergyStorage cap = PowerHandlerUtil.getCapability(stackInSlot, null); if (cap != null && cap.canReceive() && cap.getEnergyStored() < cap.getMaxEnergyStored()) { int added = cap.receiveEnergy(eu.extractEnergy(eu.getEnergy(), true), false); if (added > 0) { eu.extractEnergy(added, false); eu.writeToItem(); if (eu.getEnergy() <= 0) { return; } } } } } } } }