Jump to content

[1.7.10][SOLVED]Have Bock Drop Different Item Depending on Item Used to Break It


MrProg

Recommended Posts

So basically I have a block that I want to drop itself when it's broken with a certain item but drop something else when broken with anything else. My situation is having a candy cane log  to drop itself when broken with a candy cane axe. Anything else will have it drop candy canes. Thank you for any help that can be provided.

Link to comment
Share on other sites

I used onBlockHarvest instead as it had the EntityPlayer and this is what I came up with:

 

@Override
    public void onBlockHarvested(World par1World, int p_149681_2_, int p_149681_3_, int p_149681_4_, int p_149681_5_, EntityPlayer par6Player) {
    	if(par6Player.getCurrentEquippedItem() != null){
    		if(par6Player.getCurrentEquippedItem().getItem() == WinterItems.candyCaneAxe){
    			
    			par6Player.dropItem(Item.getItemFromBlock(WinterBlocks.candyCaneBlock), 1);
    		}else{
    			par6Player.dropItem(WinterItems.candyCane, 3);
    		}
    	}else{
    		par6Player.dropItem(WinterItems.candyCane, 3);
    	}
    }

The only problem is that the item flies out of the player which is kind of weird. Is there another similar way that I could do this that has the item drop from the block?

Link to comment
Share on other sites

You can get the item the player is holding from any method like so:

ItemStack equipped = Minecraft.getMinecraft().thePlayer.getCurrentEquippedItem();

 

So you could put this in breakBlock, or any of the other block destruction methods, to determine what item to drop.

I ask complicated questions, and apparently like to write really long detailed posts. But I also help others when I can.

Link to comment
Share on other sites

  • 4 months later...

You can get the item the player is holding from any method like so:

ItemStack equipped = Minecraft.getMinecraft().thePlayer.getCurrentEquippedItem();

 

So you could put this in breakBlock, or any of the other block destruction methods, to determine what item to drop.

Bad idea. Very bad idea.

 

Can you explain why that's a bad idea?

Link to comment
Share on other sites

That method only works in Single Player.  As soon as a server is involved (including "Open to LAN") it will crash.

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.