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

Hey,

I created my own sword. If you know it from vanilla, you can't destroy blocks with e.g. a diamond sword. I couldn't find any code from vanilla which avoids this.

Anyone knows?  :)

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.

  • Author

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

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?

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

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.