Jump to content

[1.7.2]Avoid destroying blocks using own sword


Hackbaellchen

Recommended Posts

If your Item extends ItemSword, it should not harvest blocks anyway (except for webs), but if it doesn't extend ItemSword, you need to override canHarvestBlock, which still has the obfuscated name in 1.7.2.

 

From ItemSword:

public boolean func_150897_b(Block p_150897_1_) {
return p_150897_1_ == Blocks.web;
}

 

Just add that to your Item class and bam, done, no need for events.

Link to comment
Share on other sites

If your Item extends ItemSword, it should not harvest blocks anyway (except for webs), but if it doesn't extend ItemSword, you need to override canHarvestBlock, which still has the obfuscated name in 1.7.2.

 

From ItemSword:

public boolean func_150897_b(Block p_150897_1_) {
return p_150897_1_ == Blocks.web;
}

 

Just add that to your Item class and bam, done, no need for events.

I added it and it wasn't working..

Link to comment
Share on other sites

If your Item extends ItemSword, it should not harvest blocks anyway (except for webs), but if it doesn't extend ItemSword, you need to override canHarvestBlock, which still has the obfuscated name in 1.7.2.

 

From ItemSword:

public boolean func_150897_b(Block p_150897_1_) {
return p_150897_1_ == Blocks.web;
}

 

Just add that to your Item class and bam, done, no need for events.

I added it and it wasn't working..

I should have specified, that code is for harvesting blocks, as in blocks you break with your sword will not drop items (except for webs). If your item is not an ItemSword, it will still be able to break blocks in Creative Mode, but even the vanilla swords can break some blocks in survival. Why don't you just extend ItemSword and make your life easier?

Link to comment
Share on other sites

Because I'm using my own Enum for the tools.. I can't extend ItemSword because it would give me an error

 

You can extend ItemSword, even if you want to use your own enum.

Forge has there own ToolMaterial Enum handler for tools.

 

Example:

static ToolMaterial NAME = EnumHelper.addToolMaterial("NAME", int par1, int par2, float par3, float par4, int par5);

 

par1- Harvest Level

par2- Max Uses

par3- Efficiency on Proper Material

par4- Damage VS Entity

par5- Enchantability

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.