Jump to content

Problem with InventoryPlayer


Recommended Posts

This is a client side mod. I would like to fire an event when a player inventory update

  1. First I create an event handler class
  2. Second I initialize a private field cache = InventoryPlayer(Minecraft.getMinecraft().player) in the class
  3. I create a method onPlayerTickEvent(PlayerTickEvent event)
  4. Every times onPlayerTickEvent fire, I use areItemStacksEqualUsingNBTShareTag and getStackInSlot to find differences between cache and Minecraft.getMinecraft().player.inventory
  5. If there one or more of the 41 slots are different, post an event
  6. Finally use copyInventory to copy Minecraft.getMinecraft().player.inventory to cache, and ready for the next PlayerTickEvent

BTW, I don't know what PlayerTickEvent actually mean. I only know about TickEvent fire every game loop.


This works when I throw an item using Q, pickup an item, items drop on death. But not work when I use my mouse to pickup itemstack in my inventory and placing a block.

I probably misused a lot functions, I'm new to Modding. Any solution? And give me advises on how to use forgeAPI correctly.

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.

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.


  • Create New...

Important Information

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