Jump to content

[1.12] ItemStack#shrink not working?


Samaritans

Recommended Posts

When i try to call ItemStack#shrink it doesn't actually shrink anything. For example inside my ItemPickupEvent

@SubscribeEvent
	public void pickUpItems(ItemPickupEvent event) {
		if (!event.player.world.isRemote) {
			EntityPlayer player = event.player;
			for (int i = 0; i < player.inventory.getSizeInventory(); i++) {
				ItemStack stack = player.inventory.getStackInSlot(i);
				if (stack.getItem() instanceof ItemContract && stack.hasTagCompound() && stack.getTagCompound().hasKey("contract") && stack.getTagCompound().hasKey("boundId") && stack.getTagCompound().hasKey("items") && !((ItemContract) stack.getItem()).complete(stack)) {
					if (Util.findPlayer(stack.getTagCompound().getString("boundId")) == player) {
						NBTTagList list = stack.getTagCompound().getTagList("items", Constants.NBT.TAG_COMPOUND);
						for (int t = 0; t < list.tagCount(); t++) {
							NBTTagCompound tag = list.getCompoundTagAt(t);
							if (event.getStack().getItem() == ForgeRegistries.ITEMS.getValue(new ResourceLocation(tag.getString("item")))) {
								int complete = tag.getInteger("amountComplete");
								int gained = event.getStack().getCount();
								int toShrink = Math.min(tag.getInteger("amountTotal") - complete, gained);
								event.getStack().shrink(toShrink);
								tag.setInteger("amountComplete", complete + toShrink);
								break;
							}
						}
					}
				}
			}
		}
	}

debugger says its shrinked, but the player still gets the full thing anyways.

 

Same problem, I want item to goaway after right click, so i do 

player.getHeldItem(hand).shrink(1);

but it still just stays in the inv.

 

Thanks!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.