Posted November 10, 20195 yr 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!
November 10, 20195 yr I might be wrong, but mustn't shrink(int) be called on both the server and client? I think your client is not updating the values, but it has actually happened server-side. Looks like you may have to use a packet to notify the client.
November 10, 20195 yr Author @MSpace-Dev I dunno, it was called without the world.isRemote check and it still doesn't shrink
November 10, 20195 yr Author @MSpace-Dev Hey, it turns out ItemPickupEvent is deprecated, use EntityItemPickUp instead, but check us out on github if u want https://github.com/Um-Mitternacht/Bewitchment
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.