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

Version: 1.16.3
I have already added an block to my mod: the ruby block the code is following:

 

package com.jann.moreitemsmod.blocks;

import net.minecraft.block.Block;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraftforge.common.ToolType;

public class RubyBlock extends Block {

    public RubyBlock() {
        super(Block.Properties.create(Material.IRON)
                .hardnessAndResistance(5.0f, 6.0f)
                .sound(SoundType.METAL)
                .harvestLevel(3)
                .harvestTool(ToolType.PICKAXE)
        );
    }
}

I have loaded my mod, and I can break the ruby block with each item, but I want, that everybody can break the ruby block with iron pickaxe, diamond pickaxe and netherite pickaxe.

You have also to chain the method setRequiresTool to your block properties. if the method is not existing for you then please, refer to this post:

https://forums.minecraftforge.net/topic/91282-1161-setrequirestool/

Edited by Beethoven92

Check out the port of the BetterEnd fabric mod (WIP): https://www.curseforge.com/minecraft/mc-mods/betterend-forge-port

  • Author

What should I have to program? I'm a bad dev, can you send me the code pls?

Well, i told you above what you have to "program"...if you don't know what that means, look at the code you posted above. You see that when you create your block properties with

Block.Properties.create

there are other methods that defines the properties of the block:

.hardnessAndResistance(5.0f, 6.0f)
.sound(SoundType.METAL)
.harvestLevel(3)
.harvestTool(ToolType.PICKAXE)

Those methods are chained to Block.Properties. So to make the block actually being able to be broken by certain tools you need also to chain the mehod setRequiresTool() to your block properties. Hope after the explanation you have a better understanding of what you need to do. Again, if the method setRequiresTool doesn't exist for you, this means your mappings are outdated. In that case the link i posted above will solve your problems

Check out the port of the BetterEnd fabric mod (WIP): https://www.curseforge.com/minecraft/mc-mods/betterend-forge-port

  • Author

Well, I understood this, but how to update the mapping, I can't find that in your link above ._.

 

What? There is literally the whole procedure to update your mappings explained in the last post inside the link, made by the user Curle. If updating the mappings turns out to be too complicated there is another solution, and thats using the unmapped name of the method setRequiresTool, which you can find here:

https://docs.google.com/spreadsheets/d/14knNUYjYkKkGpW9VTyjtlhaCTUsPWRJ91GLOFX2d23Q/edit#gid=807882818

just use the search function and look for the mapped name (setRequiresTool)..it will show you what the previous unmapped name was

Check out the port of the BetterEnd fabric mod (WIP): https://www.curseforge.com/minecraft/mc-mods/betterend-forge-port

Did you even try to use the find and replace function?? Of course you won't find it if you don't...look in the menu at the top and inside "Bearbeiten". There you can see "find and replace", or something very similar. Use that and input setRequiresTool...then you have to wait a bit because the list is pretty long. When it finds the function, it will highlight it

Check out the port of the BetterEnd fabric mod (WIP): https://www.curseforge.com/minecraft/mc-mods/betterend-forge-port

  • Author

Thank you so much, it's now working, I am happy now and my brother too :D

 

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.