Jump to content

Furnace Broken When Extracting Items


OBCLetter

Recommended Posts

When I try to extract an item from a furnace, the furnace is broken. Not like glitched broken, but like survival player mines the block broken. Here is my code:

	@Override
	public void updateTask() {
		if (soldier.wantsToGoTo != BlockPos.NULL_VECTOR) {
			soldier.getNavigator().tryMoveToXYZ(soldier.wantsToGoTo.getX(), soldier.wantsToGoTo.getY(),
					soldier.wantsToGoTo.getZ(), speedIn);
			double distance = soldier.getPosition().getDistance(soldier.wantsToGoTo.getX(), soldier.wantsToGoTo.getY(),
					soldier.wantsToGoTo.getZ());
			if (distance < 5) {
				TileEntityFurnace furnace = soldier.getFurnace();
				if (soldier.getHeldItem(EnumHand.MAIN_HAND).isEmpty()) {
					soldier.setHeldItem(EnumHand.MAIN_HAND, furnace.getStackInSlot(2));
					furnace.getStackInSlot(2).splitStack(furnace.getStackInSlot(2).getCount());
				} else if (soldier.getHeldItem(EnumHand.MAIN_HAND) == furnace.getStackInSlot(2)) {
					soldier.setHeldItem(EnumHand.MAIN_HAND, new ItemStack(furnace.getStackInSlot(2).getItem(),
							furnace.getStackInSlot(2).getCount() + soldier.getHeldItem(EnumHand.MAIN_HAND).getCount()));
					furnace.getStackInSlot(2).splitStack(furnace.getStackInSlot(2).getCount());
				}

			}
		}
	}

 

Hi! I'm a Java programmer but barely know anything Minecraft related. 

Link to comment
Share on other sites

Do not use setHeldItem

You want to insert or extract items from an Inventory?

 

Step 1: Use GetCapability to get the inventory

Step 2: Use the insert/extract methods to insert and extract

 

59 minutes ago, OBCLetter said:

soldier.getFurnace();


Also, what the bollocks? Why is this method in your entity class at all?

Edited by Draco18s

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

8 minutes ago, Draco18s said:

Also, what the bollocks? Why is this method in your entity class at all?

It remembers which furnace it originally built when building a house. When the original furnace is destroyed, it seeks a new one and sets that one as it's furnace.

Hi! I'm a Java programmer but barely know anything Minecraft related. 

Link to comment
Share on other sites

Okay then.

In any case, the code you've posted cannot destroy blocks.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

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.