Jump to content

MinecraftForge 1.19.3 Conditional Block Drop


CodingNoob52

Recommended Posts

We were attempting to make an ore only drop an item when broken by a netherite pickaxe. At first, we tried adding in the register .requiresCorrectToolForDrops() but we didn't know how to define which tool is required. Then we tried adding tags like NEEDS_DIAMOND_TOOL but realized that there is no tag for netherite pickaxe. Even if we wanted to use the diamond tool tag, we still didn't know how to add a tag to this ore. Finally, we tried to just use a .json file with "match_tool" but that didn't work either. We also tried to add the tag MINEABLE_WITH_PICKAXE but still couldn't figure out how to add it.

Here is the json file we tried.

{
  "type": "minecraft:block",
  "pools": [
    {
      "bonus_rolls": 0.0,
      "entries": [
        {
          "type": "minecraft:alternatives",
          "children": [
            {
              "type": "minecraft:item",
              "conditions": [
                {
                  "condition": "minecraft:match_tool",
                  "predicate": {
                    "enchantments": [
                      {
                        "enchantment": "minecraft:silk_touch",
                        "levels": {
                          "min": 1
                        }
                      }
                    ]
                  }
                }
              ],
              "name": "examplemod:my_ore"
            },
            {
              "type": "minecraft:item",
              "functions": [
                {
                  "enchantment": "minecraft:fortune",
                  "formula": "minecraft:ore_drops",
                  "function": "minecraft:apply_bonus"
                },
                {
                  "function": "minecraft:explosion_decay"
                }
              ],
              "name": "examplemod:my_ingot"
            }
          ]
        }
      ],
      "rolls": 1.0
    }
  ]
}

We expected it to only drop the item when broken by a netherite pickaxe. However, it never dropped unless the pickaxe had silk touch and would then drop the ore as a block.

Link to comment
Share on other sites

There is a forge tag for netherite tools:

https://forge.gemwire.uk/wiki/Tags#Blocks

Boilerplate:

If you don't post your logs/debug.log we can't help you. For curseforge you need to enable the forge debug.log in its minecraft settings. You should also post your crash report if you have one.

If there is no error in the log file and you don't have a crash report then post the launcher_log.txt from the minecraft folder. Again for curseforge this will be in your curseforge/minecraft/Install

Large files should be posted to a file sharing site like https://gist.github.com  You should also read the support forum sticky post.

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.