Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Posted

In the code below i'm making it so a milk bucket acts as a normal bucket. But when "event.entityPlayer.inventory.consumeInventoryItem(Items.milk_bucket);" is called it will consume any milk bucket on the hotbar (in order from left to right) instead of the one in hand.

 

@SubscribeEvent
public void onPlayerInteraction(PlayerInteractEvent event) {
	if(event.action == PlayerInteractEvent.Action.RIGHT_CLICK_BLOCK) {
		if(event.entityPlayer.getHeldItem().getItem() != null && event.entityPlayer.getHeldItem().getItem() == Items.milk_bucket) {
			if(!event.entityPlayer.capabilities.isCreativeMode) {
				event.entityPlayer.inventory.consumeInventoryItem(Items.milk_bucket);
				event.entityPlayer.inventory.addItemStackToInventory(new ItemStack(Items.bucket, 1));
			}
			switch (event.face) {
			case 0: event.world.setBlock(event.x, event.y-1, event.z, FancyCheeses.block_cow_milk); //y-1
			case 1: event.world.setBlock(event.x, event.y+1, event.z, FancyCheeses.block_cow_milk); //y+1
			case 2: event.world.setBlock(event.x, event.y, event.z-1, FancyCheeses.block_cow_milk); //z-1
			case 3: event.world.setBlock(event.x, event.y, event.z+1, FancyCheeses.block_cow_milk); //z+1
			case 4: event.world.setBlock(event.x-1, event.y, event.z, FancyCheeses.block_cow_milk); //x-1
			case 5: event.world.setBlock(event.x+1, event.y, event.z, FancyCheeses.block_cow_milk); //x+1
			}
		}
	}
}

Legend of Zelda Mod[updated September 20th to 3.1.1]

Extra Achievements(Minecraft 1.8!)[updated April 3rd to 2.3.0]

Fancy Cheeses[updated May 8th to 0.5.0]

  • Author

You have to do it yourself, you get the currently selected slot (0-8) with player.inventory.currentItem.

And then how would I consume the item? ConsumeItem doesn't take a slot.

Legend of Zelda Mod[updated September 20th to 3.1.1]

Extra Achievements(Minecraft 1.8!)[updated April 3rd to 2.3.0]

Fancy Cheeses[updated May 8th to 0.5.0]

You can also use player.getHeldItem() to get the currently held item, reduce the stack size as diesieben mentioned, and if it's null, use player.setCurrentItemOrArmor(0, null), because that always sets the currently held item to whatever the second parameter is.

 

Or you could play with player.inventory.currentItem, but I find the above more expedient :P

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...

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.